Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2021-02-17 00:36:34 +00:00 committed by GitHub
commit 3e0ef2752a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
60 changed files with 2031 additions and 1320 deletions

View file

@ -3499,6 +3499,12 @@
githubId = 6893840;
name = "Yacine Hmito";
};
graham33 = {
email = "graham@grahambennett.org";
github = "graham33";
githubId = 10908649;
name = "Graham Bennett";
};
grahamc = {
email = "graham@grahamc.com";
github = "grahamc";

View file

@ -585,6 +585,22 @@ EOF
return $config;
}
sub generateXserverConfig {
my $xserverEnabled = "@xserverEnabled@";
my $config = "";
if ($xserverEnabled eq "1") {
$config = <<EOF;
# Enable the X11 windowing system.
services.xserver.enable = true;
EOF
} else {
$config = <<EOF;
# Enable the X11 windowing system.
# services.xserver.enable = true;
EOF
}
}
if ($showHardwareConfig) {
print STDOUT $hwConfig;
@ -630,6 +646,8 @@ EOF
my $networkingDhcpConfig = generateNetworkingDhcpConfig();
my $xserverConfig = generateXserverConfig();
(my $desktopConfiguration = <<EOF)=~s/^/ /gm;
@desktopConfiguration@
EOF

View file

@ -36,6 +36,7 @@ let
path = lib.optionals (lib.elem "btrfs" config.boot.supportedFilesystems) [ pkgs.btrfs-progs ];
perl = "${pkgs.perl}/bin/perl -I${pkgs.perlPackages.FileSlurp}/${pkgs.perl.libPrefix}";
inherit (config.system.nixos-generate-config) configuration desktopConfiguration;
xserverEnabled = config.services.xserver.enable;
};
nixos-option =
@ -87,8 +88,8 @@ in
desktopConfiguration = mkOption {
internal = true;
type = types.str;
default = "";
type = types.listOf types.lines;
default = [];
description = ''
Text to preseed the desktop configuration that <literal>nixos-generate-config</literal>
saves to <literal>/etc/nixos/configuration.nix</literal>.
@ -136,6 +137,8 @@ in
# keyMap = "us";
# };
$xserverConfig
$desktopConfiguration
# Configure keymap in X11
# services.xserver.layout = "us";

View file

@ -197,12 +197,11 @@ in
config = mkMerge [
(mkIf (cfg.enable || flashbackEnabled) {
# Seed our configuration into nixos-generate-config
system.nixos-generate-config.desktopConfiguration = ''
system.nixos-generate-config.desktopConfiguration = [''
# Enable the GNOME 3 Desktop Environment.
services.xserver.enable = true;
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome3.enable = true;
'';
''];
services.gnome3.core-os-services.enable = true;
services.gnome3.core-shell.enable = true;

View file

@ -184,12 +184,11 @@ in
config = mkMerge [
(mkIf cfg.enable {
# Seed our configuration into nixos-generate-config
system.nixos-generate-config.desktopConfiguration = ''
system.nixos-generate-config.desktopConfiguration = [''
# Enable the Plasma 5 Desktop Environment.
services.xserver.enable = true;
services.xserver.displayManager.sddm.enable = true;
services.xserver.desktopManager.plasma5.enable = true;
'';
''];
services.xserver.desktopManager.session = singleton {
name = "plasma5";

View file

@ -11,12 +11,11 @@ import ./make-test-python.nix ({ lib, ... } : {
}
'';
system.nixos-generate-config.desktopConfiguration = ''
system.nixos-generate-config.desktopConfiguration = [''
# DESKTOP
# services.xserver.enable = true;
# services.xserver.displayManager.gdm.enable = true;
# services.xserver.desktopManager.gnome3.enable = true;
'';
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome3.enable = true;
''];
};
testScript = ''
start_all()

View file

@ -1,7 +1,7 @@
{ mkDerivation
, lib
, stdenv
, fetchFromGitHub
, fetchpatch
, qmake
, pkg-config
, qttools
@ -21,10 +21,15 @@ mkDerivation rec {
sha256 = "0iddqfw951dw9xpl4w7310sl4z544507ppb12i8g4fzvlxfw2ifc";
};
postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
substituteInPlace BambooTracker/BambooTracker.pro \
--replace '# Temporary known-error downgrades here' 'CPP_WARNING_FLAGS += -Wno-missing-braces'
'';
# TODO Remove when updating past 0.4.6
# Fixes build failure on darwin
patches = [
(fetchpatch {
name = "bambootracker-Add_braces_in_initialization_of_std-array.patch";
url = "https://github.com/rerrahkr/BambooTracker/commit/0fc96c60c7ae6c2504ee696bb7dec979ac19717d.patch";
sha256 = "1z28af46mqrgnyrr4i8883gp3wablkk8rijnj0jvpq01s4m2sfjn";
})
];
nativeBuildInputs = [ qmake qttools pkg-config ];
@ -40,6 +45,5 @@ mkDerivation rec {
license = licenses.gpl2Only;
platforms = platforms.all;
maintainers = with maintainers; [ OPNA2608 ];
broken = stdenv.isDarwin;
};
}

View file

@ -0,0 +1,24 @@
{ fetchurl, lib, stdenv, xlibsWrapper, libXv, libpng }:
stdenv.mkDerivation rec {
pname = "qemacs";
version = "0.3.3";
src = fetchurl {
url = "https://bellard.org/${pname}/${pname}-${version}.tar.gz";
sha256 = "156z4wpj49i6j388yjird5qvrph7hz0grb4r44l4jf3q8imadyrg";
};
buildInputs = [ xlibsWrapper libpng libXv ];
preInstall = ''
mkdir -p $out/bin $out/man
'';
meta = with lib; {
homepage = "https://bellard.org/qemacs/";
description = "Very small but powerful UNIX editor";
license = licenses.lgpl2Only;
maintainers = with maintainers; [ iblech ];
};
}

View file

@ -1,6 +1,6 @@
{ lib
, mkDerivation
, nix-update-script
, fetchFromGitHub
, substituteAll
, cmake
@ -37,22 +37,28 @@ let
rev = "1.4.1";
sha256 = "1c6a8mdxms5vh8l7shi2kqdhafbzm50pbz6g1hhgg6qslla0vfn0";
};
circleflags = fetchFromGitHub {
owner = "HatScripts";
repo = "circle-flags";
rev = "v2.0.0";
sha256 = "1xz5b6nhcxxzalcgwnw36npap71i70s50g6b63avjgjkwz1ys5j4";
};
in
mkDerivation rec {
pname = "crow-translate";
version = "2.6.2";
version = "2.7.1";
src = fetchFromGitHub {
owner = "crow-translate";
repo = "crow-translate";
rev = version;
sha256 = "1jgpqynmxmh6mrknpk5fh96lbdg799axp4cyn5rvalg3sdxajmqc";
sha256 = "sha256-YOsp/noGsYthre18fMyBj9s+YFzdHJfIJzJSm43wiZ0=";
};
patches = [
(substituteAll {
src = ./dont-fetch-external-libs.patch;
inherit singleapplication qtaskbarcontrol qhotkey qonlinetranslator;
inherit singleapplication qtaskbarcontrol qhotkey qonlinetranslator circleflags;
})
(substituteAll {
# See https://github.com/NixOS/nixpkgs/issues/86054
@ -61,10 +67,23 @@ mkDerivation rec {
})
];
postPatch = "cp -r ${circleflags}/flags/* data/icons";
nativeBuildInputs = [ cmake extra-cmake-modules qttools ];
buildInputs = [ leptonica tesseract4 qtmultimedia qtx11extras ];
postInstall = ''
substituteInPlace $out/share/applications/io.crow_translate.CrowTranslate.desktop \
--replace "Exec=qdbus" "Exec=${lib.getBin qttools}/bin/qdbus"
'';
passthru = {
updateScript = nix-update-script {
attrPath = pname;
};
};
meta = with lib; {
description = "A simple and lightweight translator that allows to translate and speak text using Google, Yandex and Bing";
homepage = "https://crow-translate.github.io/";

View file

@ -1,8 +1,26 @@
diff --git i/CMakeLists.txt w/CMakeLists.txt
index 2576203..26162a0 100644
--- i/CMakeLists.txt
+++ w/CMakeLists.txt
@@ -91,12 +91,11 @@ qt5_add_translation(QM_FILES
)
configure_file(src/cmake.h.in cmake.h)
-configure_file(data/icons/flags.qrc ${CircleFlags_SOURCE_DIR}/flags/flags.qrc COPYONLY)
add_executable(${PROJECT_NAME}
${QM_FILES}
data/icons/engines/engines.qrc
- ${CircleFlags_SOURCE_DIR}/flags/flags.qrc
+ data/icons/flags.qrc
src/addlanguagedialog.cpp
src/addlanguagedialog.ui
src/cli.cpp
diff --git i/cmake/ExternalLibraries.cmake w/cmake/ExternalLibraries.cmake
index d8c88ae..47a12c0 100644
index 21eba0a..b613d3e 100644
--- i/cmake/ExternalLibraries.cmake
+++ w/cmake/ExternalLibraries.cmake
@@ -2,24 +2,20 @@ include(FetchContent)
@@ -2,29 +2,24 @@ include(FetchContent)
set(QAPPLICATION_CLASS QApplication)
FetchContent_Declare(SingleApplication
@ -30,4 +48,10 @@ index d8c88ae..47a12c0 100644
+ SOURCE_DIR @qonlinetranslator@
)
FetchContent_MakeAvailable(SingleApplication QTaskbarControl QHotkey QOnlineTranslator)
FetchContent_Declare(CircleFlags
- GIT_REPOSITORY https://github.com/HatScripts/circle-flags
- GIT_TAG v2.0.0
+ SOURCE_DIR @circleflags@
)
FetchContent_MakeAvailable(SingleApplication QTaskbarControl QHotkey QOnlineTranslator CircleFlags)

View file

@ -1,13 +1,13 @@
diff --git i/src/settings/appsettings.cpp w/src/settings/appsettings.cpp
index 7be4573..e65994e 100644
--- i/src/settings/appsettings.cpp
+++ w/src/settings/appsettings.cpp
@@ -82,7 +82,7 @@ void AppSettings::applyLanguage(QLocale::Language lang)
QLocale::setDefault(QLocale(lang));
diff --git c/src/settings/appsettings.cpp i/src/settings/appsettings.cpp
index ff99f64..fa929ae 100644
--- c/src/settings/appsettings.cpp
+++ i/src/settings/appsettings.cpp
@@ -80,7 +80,7 @@ void AppSettings::applyLanguage(QLocale::Language lang)
QLocale::setDefault(locale);
s_appTranslator.load(QLocale(), QStringLiteral(PROJECT_NAME), QStringLiteral("_"), QStandardPaths::locate(QStandardPaths::AppDataLocation, QStringLiteral("translations"), QStandardPaths::LocateDirectory));
- s_qtTranslator.load(QLocale(), QStringLiteral("qt"), QStringLiteral("_"), QLibraryInfo::location(QLibraryInfo::TranslationsPath));
+ s_qtTranslator.load(QLocale(), QStringLiteral("qt"), QStringLiteral("_"), QLatin1String("@qttranslations@/translations"));
s_appTranslator.load(locale, QStringLiteral(PROJECT_NAME), QStringLiteral("_"), QStandardPaths::locate(QStandardPaths::AppDataLocation, QStringLiteral("translations"), QStandardPaths::LocateDirectory));
- s_qtTranslator.load(locale, QStringLiteral("qtbase"), QStringLiteral("_"), QLibraryInfo::location(QLibraryInfo::TranslationsPath));
+ s_qtTranslator.load(locale, QStringLiteral("qtbase"), QStringLiteral("_"), QLatin1String("@qttranslations@/translations"));
}
QLocale::Language AppSettings::defaultLanguage()

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "starboard-octant-plugin";
version = "0.9.1";
version = "0.9.2";
src = fetchFromGitHub {
owner = "aquasecurity";
repo = pname;
rev = "v${version}";
sha256 = "sha256-u+yxAGVVFsZpiexToNDUfQATsYOkKWHkYF9roK0OInY=";
sha256 = "sha256-wis2ECCVXQeD7GiCMJQai+wDM8QJ1j5dPnE5O/I3wpM=";
};
vendorSha256 = "sha256-c5sel3xs4npTENqRQu8d9hUOK1OFQodF3M0ZpUpr1po=";
vendorSha256 = "sha256-T0wDbAl5GXphZIBrM36OwRCojnJ/cbXNqsjtCzUDZ6s=";
buildFlagsArray = [ "-ldflags=" "-s" "-w" ];

View file

@ -1,6 +1,7 @@
{ stdenv, lib, edk2, util-linux, nasm, iasl
, csmSupport ? false, seabios ? null
, secureBoot ? false
, httpSupport ? false
}:
assert csmSupport -> seabios != null;
@ -30,7 +31,8 @@ edk2.mkDerivation projectDscPath {
buildFlags =
lib.optional secureBoot "-DSECURE_BOOT_ENABLE=TRUE"
++ lib.optionals csmSupport [ "-D CSM_ENABLE" "-D FD_SIZE_2MB" ];
++ lib.optionals csmSupport [ "-D CSM_ENABLE" "-D FD_SIZE_2MB" ]
++ lib.optionals httpSupport [ "-DNETWORK_HTTP_ENABLE=TRUE" "-DNETWORK_HTTP_BOOT_ENABLE=TRUE" ];
postPatch = lib.optionalString csmSupport ''
cp ${seabios}/Csm16.bin OvmfPkg/Csm/Csm16/Csm16.bin

View file

@ -43,13 +43,13 @@
stdenv.mkDerivation rec {
pname = "evince";
version = "3.38.1";
version = "3.38.2";
outputs = [ "out" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/evince/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "APbWaJzCLePABb2H1MLr9yAGTLjcahiHgW+LfggrLmM=";
sha256 = "J9QZ1f7WMF4HRijtz94MtzT//aIF1jysMjORwEkDvZQ=";
};
postPatch = ''

View file

@ -11,13 +11,13 @@
stdenv.mkDerivation rec {
pname = "gnome-autoar";
version = "0.2.4";
version = "0.3.0";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "mirror://gnome/sources/gnome-autoar/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0yk56ch46n3wfy633mq31kif9n7v06rlij4vqbsbn6l4z1vw6d0a";
sha256 = "0ssqckfkyldwld88zizy446y2359rg40lnrcm3sjpjhc2b015hgj";
};
passthru = {
@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
platforms = platforms.linux;
maintainers = teams.gnome.members;
license = licenses.lgpl21;
license = licenses.lgpl21Plus;
description = "Library to integrate compressed files management with GNOME";
};
}

View file

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
stripRoot = false;
};
makeFlags = [ "CC=cc" ];
makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
nativeBuildInputs = [ unzip bison flex gperf ];

View file

@ -0,0 +1,267 @@
{ lib, stdenv, fetchurl, tzdata, iana-etc, runCommand
, perl, which, pkg-config, patch, procps, pcre, cacert, Security, Foundation, xcbuild
, mailcap, runtimeShell
, buildPackages
, pkgsBuildTarget
, fetchpatch
, callPackage
}:
let
inherit (lib) optionals optionalString;
go_bootstrap = callPackage ./bootstrap.nix {
inherit Security;
};
goBootstrap = runCommand "go-bootstrap" {} ''
mkdir $out
cp -rf ${go_bootstrap}/* $out/
chmod -R u+w $out
find $out -name "*.c" -delete
cp -rf $out/bin/* $out/share/go/bin/
'';
goarch = platform: {
"i686" = "386";
"x86_64" = "amd64";
"aarch64" = "arm64";
"arm" = "arm";
"armv5tel" = "arm";
"armv6l" = "arm";
"armv7l" = "arm";
"powerpc64le" = "ppc64le";
}.${platform.parsed.cpu.name} or (throw "Unsupported system");
# We need a target compiler which is still runnable at build time,
# to handle the cross-building case where build != host == target
targetCC = pkgsBuildTarget.targetPackages.stdenv.cc;
in
stdenv.mkDerivation rec {
pname = "go";
version = "1.16";
src = fetchurl {
url = "https://dl.google.com/go/go${version}.src.tar.gz";
sha256 = "0nn98xiw8zrvxf9f36p8dzc7ihrrkakr0g9jiy4haqb5alyhd23n";
};
# perl is used for testing go vet
nativeBuildInputs = [ perl which pkg-config patch procps ];
buildInputs = [ cacert pcre ]
++ optionals stdenv.isLinux [ stdenv.cc.libc.out ]
++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
propagatedBuildInputs = optionals stdenv.isDarwin [ xcbuild ];
depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ];
hardeningDisable = [ "all" ];
prePatch = ''
patchShebangs ./ # replace /bin/bash
# This source produces shell script at run time,
# and thus it is not corrected by patchShebangs.
substituteInPlace misc/cgo/testcarchive/carchive_test.go \
--replace '#!/usr/bin/env bash' '#!${runtimeShell}'
# Patch the mimetype database location which is missing on NixOS.
# but also allow static binaries built with NixOS to run outside nix
sed -i 's,\"/etc/mime.types,"${mailcap}/etc/mime.types\"\,\n\t&,' src/mime/type_unix.go
# Disabling the 'os/http/net' tests (they want files not available in
# chroot builds)
rm src/net/{listen,parse}_test.go
rm src/syscall/exec_linux_test.go
# !!! substituteInPlace does not seems to be effective.
# The os test wants to read files in an existing path. Just don't let it be /usr/bin.
sed -i 's,/usr/bin,'"`pwd`", src/os/os_test.go
sed -i 's,/bin/pwd,'"`type -P pwd`", src/os/os_test.go
# Fails on aarch64
sed -i '/TestFallocate/aif true \{ return\; \}' src/cmd/link/internal/ld/fallocate_test.go
# Skip this test since ssl patches mess it up.
sed -i '/TestLoadSystemCertsLoadColonSeparatedDirs/aif true \{ return\; \}' src/crypto/x509/root_unix_test.go
# Disable another PIE test which breaks.
sed -i '/TestTrivialPIE/aif true \{ return\; \}' misc/cgo/testshared/shared_test.go
# Disable the BuildModePie test
sed -i '/TestBuildmodePIE/aif true \{ return\; \}' src/cmd/go/go_test.go
# Disable the unix socket test
sed -i '/TestShutdownUnix/aif true \{ return\; \}' src/net/net_test.go
# Disable the hostname test
sed -i '/TestHostname/aif true \{ return\; \}' src/os/os_test.go
# ParseInLocation fails the test
sed -i '/TestParseInSydney/aif true \{ return\; \}' src/time/format_test.go
# Remove the api check as it never worked
sed -i '/src\/cmd\/api\/run.go/ireturn nil' src/cmd/dist/test.go
# Remove the coverage test as we have removed this utility
sed -i '/TestCoverageWithCgo/aif true \{ return\; \}' src/cmd/go/go_test.go
# Remove the timezone naming test
sed -i '/TestLoadFixed/aif true \{ return\; \}' src/time/time_test.go
# Remove disable setgid test
sed -i '/TestRespectSetgidDir/aif true \{ return\; \}' src/cmd/go/internal/work/build_test.go
# Remove cert tests that conflict with NixOS's cert resolution
sed -i '/TestEnvVars/aif true \{ return\; \}' src/crypto/x509/root_unix_test.go
# TestWritevError hangs sometimes
sed -i '/TestWritevError/aif true \{ return\; \}' src/net/writev_test.go
# TestVariousDeadlines fails sometimes
sed -i '/TestVariousDeadlines/aif true \{ return\; \}' src/net/timeout_test.go
sed -i 's,/etc/protocols,${iana-etc}/etc/protocols,' src/net/lookup_unix.go
sed -i 's,/etc/services,${iana-etc}/etc/services,' src/net/port_unix.go
# Disable cgo lookup tests not works, they depend on resolver
rm src/net/cgo_unix_test.go
'' + optionalString stdenv.isLinux ''
# prepend the nix path to the zoneinfo files but also leave the original value for static binaries
# that run outside a nix server
sed -i 's,\"/usr/share/zoneinfo/,"${tzdata}/share/zoneinfo/\"\,\n\t&,' src/time/zoneinfo_unix.go
'' + optionalString stdenv.isAarch32 ''
echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash
'' + optionalString stdenv.isDarwin ''
substituteInPlace src/race.bash --replace \
"sysctl machdep.cpu.extfeatures | grep -qv EM64T" true
sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go
sed -i 's,"/etc","'"$TMPDIR"'",' src/os/os_test.go
sed -i 's,/_go_os_test,'"$TMPDIR"'/_go_os_test,' src/os/path_test.go
sed -i '/TestChdirAndGetwd/aif true \{ return\; \}' src/os/os_test.go
sed -i '/TestCredentialNoSetGroups/aif true \{ return\; \}' src/os/exec/exec_posix_test.go
sed -i '/TestRead0/aif true \{ return\; \}' src/os/os_test.go
sed -i '/TestSystemRoots/aif true \{ return\; \}' src/crypto/x509/root_darwin_test.go
sed -i '/TestGoInstallRebuildsStalePackagesInOtherGOPATH/aif true \{ return\; \}' src/cmd/go/go_test.go
sed -i '/TestBuildDashIInstallsDependencies/aif true \{ return\; \}' src/cmd/go/go_test.go
sed -i '/TestDisasmExtld/aif true \{ return\; \}' src/cmd/objdump/objdump_test.go
sed -i 's/unrecognized/unknown/' src/cmd/link/internal/ld/lib.go
# TestCurrent fails because Current is not implemented on Darwin
sed -i 's/TestCurrent/testCurrent/g' src/os/user/user_test.go
sed -i 's/TestLookup/testLookup/g' src/os/user/user_test.go
touch $TMPDIR/group $TMPDIR/hosts $TMPDIR/passwd
'';
patches = [
./remove-tools-1.11.patch
./ssl-cert-file-1.16.patch
./remove-test-pie-1.15.patch
./creds-test.patch
./go-1.9-skip-flaky-19608.patch
./go-1.9-skip-flaky-20072.patch
./skip-external-network-tests-1.16.patch
./skip-nohup-tests.patch
./skip-cgo-tests-1.15.patch
./go_no_vendor_checks-1.16.patch
] ++ [
# breaks under load: https://github.com/golang/go/issues/25628
(if stdenv.isAarch32
then ./skip-test-extra-files-on-aarch32-1.14.patch
else ./skip-test-extra-files-on-386-1.14.patch)
];
postPatch = ''
find . -name '*.orig' -exec rm {} ';'
'';
GOOS = stdenv.targetPlatform.parsed.kernel.name;
GOARCH = goarch stdenv.targetPlatform;
# GOHOSTOS/GOHOSTARCH must match the building system, not the host system.
# Go will nevertheless build a for host system that we will copy over in
# the install phase.
GOHOSTOS = stdenv.buildPlatform.parsed.kernel.name;
GOHOSTARCH = goarch stdenv.buildPlatform;
# {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those
# to be different from CC/CXX
CC_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
"${targetCC}/bin/${targetCC.targetPrefix}cc"
else
null;
CXX_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
"${targetCC}/bin/${targetCC.targetPrefix}c++"
else
null;
GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);
GO386 = "softfloat"; # from Arch: don't assume sse2 on i686
CGO_ENABLED = 1;
# Hopefully avoids test timeouts on Hydra
GO_TEST_TIMEOUT_SCALE = 3;
# Indicate that we are running on build infrastructure
# Some tests assume things like home directories and users exists
GO_BUILDER_NAME = "nix";
GOROOT_BOOTSTRAP="${goBootstrap}/share/go";
postConfigure = ''
export GOCACHE=$TMPDIR/go-cache
# this is compiled into the binary
export GOROOT_FINAL=$out/share/go
export PATH=$(pwd)/bin:$PATH
${optionalString (stdenv.buildPlatform != stdenv.targetPlatform) ''
# Independent from host/target, CC should produce code for the building system.
# We only set it when cross-compiling.
export CC=${buildPackages.stdenv.cc}/bin/cc
''}
ulimit -a
'';
postBuild = ''
(cd src && ./make.bash)
'';
doCheck = stdenv.hostPlatform == stdenv.targetPlatform && !stdenv.isDarwin;
checkPhase = ''
runHook preCheck
(cd src && HOME=$TMPDIR GOCACHE=$TMPDIR/go-cache ./run.bash --no-rebuild)
runHook postCheck
'';
preInstall = ''
rm -r pkg/obj
# Contains the wrong perl shebang when cross compiling,
# since it is not used for anything we can deleted as well.
rm src/regexp/syntax/make_perl_groups.pl
'' + (if (stdenv.buildPlatform != stdenv.hostPlatform) then ''
mv bin/*_*/* bin
rmdir bin/*_*
${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH}
''}
'' else if (stdenv.hostPlatform != stdenv.targetPlatform) then ''
rm -rf bin/*_*
${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH}
''}
'' else "");
installPhase = ''
runHook preInstall
mkdir -p $GOROOT_FINAL
cp -a bin pkg src lib misc api doc $GOROOT_FINAL
ln -s $GOROOT_FINAL/bin $out/bin
runHook postInstall
'';
disallowedReferences = [ goBootstrap ];
meta = with lib; {
homepage = "http://golang.org/";
description = "The Go Programming language";
license = licenses.bsd3;
maintainers = teams.golang.members;
platforms = platforms.linux ++ platforms.darwin;
};
}

View file

@ -0,0 +1,23 @@
Starting from go1.14, go verifes that vendor/modules.txt matches the requirements
and replacements listed in the main module go.mod file, and it is a hard failure if
vendor/modules.txt is missing.
Relax module consistency checks and switch back to pre go1.14 behaviour if
vendor/modules.txt is missing regardless of go version requirement in go.mod.
This has been ported from FreeBSD: https://reviews.freebsd.org/D24122
See https://github.com/golang/go/issues/37948 for discussion.
diff --git a/src/cmd/go/internal/modload/vendor.go b/src/cmd/go/internal/modload/vendor.go
index d8fd91f1fe..8bc08e6fed 100644
--- a/src/cmd/go/internal/modload/vendor.go
+++ b/src/cmd/go/internal/modload/vendor.go
@@ -133,7 +133,7 @@ func checkVendorConsistency() {
readVendorList()
pre114 := false
- if semver.Compare(index.goVersionV, "v1.14") < 0 {
+ if semver.Compare(index.goVersionV, "v1.14") < 0 || (os.Getenv("GO_NO_VENDOR_CHECKS") == "1" && len(vendorMeta) == 0) {
// Go versions before 1.14 did not include enough information in
// vendor/modules.txt to check for consistency.
// If we know that we're on an earlier version, relax the consistency check.

View file

@ -0,0 +1,33 @@
diff --git a/src/internal/testenv/testenv.go b/src/internal/testenv/testenv.go
index c902b1404f..66016088a2 100644
--- a/src/internal/testenv/testenv.go
+++ b/src/internal/testenv/testenv.go
@@ -163,13 +163,15 @@ func MustHaveExecPath(t testing.TB, path string) {
// HasExternalNetwork reports whether the current system can use
// external (non-localhost) networks.
func HasExternalNetwork() bool {
- return !testing.Short() && runtime.GOOS != "js"
+ // Nix sandbox does not external network in sandbox
+ return false
}
// MustHaveExternalNetwork checks that the current system can use
// external (non-localhost) networks.
// If not, MustHaveExternalNetwork calls t.Skip with an explanation.
func MustHaveExternalNetwork(t testing.TB) {
+ t.Skipf("Nix sandbox does not have networking")
if runtime.GOOS == "js" {
t.Skipf("skipping test: no external network on %s", runtime.GOOS)
}
diff --git a/src/net/dial_test.go b/src/net/dial_test.go
index 57cf5554ad..d00be53b2c 100644
--- a/src/net/dial_test.go
+++ b/src/net/dial_test.go
@@ -990,6 +990,7 @@ func TestDialerControl(t *testing.T) {
// except that it won't skip testing on non-mobile builders.
func mustHaveExternalNetwork(t *testing.T) {
t.Helper()
+ t.Skipf("Nix sandbox does not have networking")
mobile := runtime.GOOS == "android" || runtime.GOOS == "ios"
if testenv.Builder() == "" || mobile {
testenv.MustHaveExternalNetwork(t)

View file

@ -0,0 +1,34 @@
diff --git a/src/crypto/x509/root.go b/src/crypto/x509/root.go
index ac92915128..fb1d70c735 100644
--- a/src/crypto/x509/root.go
+++ b/src/crypto/x509/root.go
@@ -6,7 +6,11 @@ package x509
//go:generate go run root_ios_gen.go -version 55161.140.3
-import "sync"
+import (
+ "io/ioutil"
+ "os"
+ "sync"
+)
var (
once sync.Once
@@ -20,6 +24,16 @@ func systemRootsPool() *CertPool {
}
func initSystemRoots() {
+ if file := os.Getenv("NIX_SSL_CERT_FILE"); file != "" {
+ data, err := ioutil.ReadFile(file)
+ if err == nil {
+ roots := NewCertPool()
+ roots.AppendCertsFromPEM(data)
+ systemRoots = roots
+ return
+ }
+ }
+
systemRoots, systemRootsErr = loadSystemRoots()
if systemRootsErr != nil {
systemRoots = nil

View file

@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
];
makeFlags = [
"CC=cc"
"CC=${stdenv.cc.targetPrefix}cc"
"CFLAGS=-O2"
"PREFIX=${placeholder "out"}"
];
@ -62,6 +62,7 @@ stdenv.mkDerivation rec {
postPatch = ''
patchShebangs quotehostinfo
substituteInPlace Makefile --replace strip '${stdenv.cc.targetPrefix}strip'
'';
meta = with lib; {

View file

@ -1,114 +1,4 @@
{ lib, stdenv, fetchurl, writeText, sbclBootstrap
, sbclBootstrapHost ? "${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit"
, threadSupport ? (stdenv.isi686 || stdenv.isx86_64 || "aarch64-linux" == stdenv.hostPlatform.system)
, disableImmobileSpace ? false
# Meant for sbcl used for creating binaries portable to non-NixOS via save-lisp-and-die.
# Note that the created binaries still need `patchelf --set-interpreter ...`
# to get rid of ${glibc} dependency.
, purgeNixReferences ? false
, texinfo
}:
stdenv.mkDerivation rec {
pname = "sbcl";
import ./common.nix {
version = "2.0.9";
src = fetchurl {
url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${pname}-${version}-source.tar.bz2";
sha256 = "sha256:17wvrcwgp45z9b6arik31fjnz7908qhr5ackxq1y0gqi1hsh1xy4";
};
buildInputs = [texinfo];
patchPhase = ''
echo '"${version}.nixos"' > version.lisp-expr
pwd
# SBCL checks whether files are up-to-date in many places..
# Unfortunately, same timestamp is not good enough
sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp
#sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp
sed -i src/cold/slam.lisp -e \
'/file-write-date input/a)'
sed -i src/cold/slam.lisp -e \
'/file-write-date output/i(or (and (= 2208988801 (file-write-date output)) (= 2208988801 (file-write-date input)))'
sed -i src/code/target-load.lisp -e \
'/date defaulted-fasl/a)'
sed -i src/code/target-load.lisp -e \
'/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))'
# Fix the tests
sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp
sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp
# Use whatever `cc` the stdenv provides
substituteInPlace src/runtime/Config.x86-64-darwin --replace gcc cc
substituteInPlace src/runtime/Config.x86-64-darwin \
--replace mmacosx-version-min=10.4 mmacosx-version-min=10.5
''
+ (if purgeNixReferences
then
# This is the default location to look for the core; by default in $out/lib/sbcl
''
sed 's@^\(#define SBCL_HOME\) .*$@\1 "/no-such-path"@' \
-i src/runtime/runtime.c
''
else
# Fix software version retrieval
''
sed -e "s@/bin/uname@$(command -v uname)@g" -i src/code/*-os.lisp \
src/code/run-program.lisp
''
);
preBuild = ''
export INSTALL_ROOT=$out
mkdir -p test-home
export HOME=$PWD/test-home
'';
enableFeatures = with lib;
optional threadSupport "sb-thread" ++
optional stdenv.isAarch32 "arm";
disableFeatures = with lib;
optional (!threadSupport) "sb-thread" ++
optionals disableImmobileSpace [ "immobile-space" "immobile-code" "compact-instance-header" ];
buildPhase = ''
sh make.sh --prefix=$out --xc-host="${sbclBootstrapHost}" ${
lib.concatStringsSep " "
(builtins.map (x: "--with-${x}") enableFeatures ++
builtins.map (x: "--without-${x}") disableFeatures)
}
(cd doc/manual ; make info)
'';
installPhase = ''
INSTALL_ROOT=$out sh install.sh
''
+ lib.optionalString (!purgeNixReferences) ''
cp -r src $out/lib/sbcl
cp -r contrib $out/lib/sbcl
cat >$out/lib/sbcl/sbclrc <<EOF
(setf (logical-pathname-translations "SYS")
'(("SYS:SRC;**;*.*.*" #P"$out/lib/sbcl/src/**/*.*")
("SYS:CONTRIB;**;*.*.*" #P"$out/lib/sbcl/contrib/**/*.*")))
EOF
'';
setupHook = lib.optional purgeNixReferences (writeText "setupHook.sh" ''
addEnvHooks "$targetOffset" _setSbclHome
_setSbclHome() {
export SBCL_HOME='@out@/lib/sbcl/'
}
'');
meta = sbclBootstrap.meta // {
inherit version;
updateWalker = true;
};
sha256 = "17wvrcwgp45z9b6arik31fjnz7908qhr5ackxq1y0gqi1hsh1xy4";
}

View file

@ -1,114 +1,4 @@
{ lib, stdenv, fetchurl, writeText, sbclBootstrap
, sbclBootstrapHost ? "${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit"
, threadSupport ? (stdenv.isi686 || stdenv.isx86_64 || "aarch64-linux" == stdenv.hostPlatform.system)
, disableImmobileSpace ? false
# Meant for sbcl used for creating binaries portable to non-NixOS via save-lisp-and-die.
# Note that the created binaries still need `patchelf --set-interpreter ...`
# to get rid of ${glibc} dependency.
, purgeNixReferences ? false
, texinfo
}:
stdenv.mkDerivation rec {
pname = "sbcl";
import ./common.nix {
version = "2.1.1";
src = fetchurl {
url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${pname}-${version}-source.tar.bz2";
sha256 = "sha256:15wa66sachhzgvg5n35vihmkpasg100lh561c1d1bdrql0p8kbd9";
};
buildInputs = [texinfo];
patchPhase = ''
echo '"${version}.nixos"' > version.lisp-expr
pwd
# SBCL checks whether files are up-to-date in many places..
# Unfortunately, same timestamp is not good enough
sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp
#sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp
sed -i src/cold/slam.lisp -e \
'/file-write-date input/a)'
sed -i src/cold/slam.lisp -e \
'/file-write-date output/i(or (and (= 2208988801 (file-write-date output)) (= 2208988801 (file-write-date input)))'
sed -i src/code/target-load.lisp -e \
'/date defaulted-fasl/a)'
sed -i src/code/target-load.lisp -e \
'/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))'
# Fix the tests
sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp
sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp
# Use whatever `cc` the stdenv provides
substituteInPlace src/runtime/Config.x86-64-darwin --replace gcc cc
substituteInPlace src/runtime/Config.x86-64-darwin \
--replace mmacosx-version-min=10.4 mmacosx-version-min=10.5
''
+ (if purgeNixReferences
then
# This is the default location to look for the core; by default in $out/lib/sbcl
''
sed 's@^\(#define SBCL_HOME\) .*$@\1 "/no-such-path"@' \
-i src/runtime/runtime.c
''
else
# Fix software version retrieval
''
sed -e "s@/bin/uname@$(command -v uname)@g" -i src/code/*-os.lisp \
src/code/run-program.lisp
''
);
preBuild = ''
export INSTALL_ROOT=$out
mkdir -p test-home
export HOME=$PWD/test-home
'';
enableFeatures = with lib;
optional threadSupport "sb-thread" ++
optional stdenv.isAarch32 "arm";
disableFeatures = with lib;
optional (!threadSupport) "sb-thread" ++
optionals disableImmobileSpace [ "immobile-space" "immobile-code" "compact-instance-header" ];
buildPhase = ''
sh make.sh --prefix=$out --xc-host="${sbclBootstrapHost}" ${
lib.concatStringsSep " "
(builtins.map (x: "--with-${x}") enableFeatures ++
builtins.map (x: "--without-${x}") disableFeatures)
}
(cd doc/manual ; make info)
'';
installPhase = ''
INSTALL_ROOT=$out sh install.sh
''
+ lib.optionalString (!purgeNixReferences) ''
cp -r src $out/lib/sbcl
cp -r contrib $out/lib/sbcl
cat >$out/lib/sbcl/sbclrc <<EOF
(setf (logical-pathname-translations "SYS")
'(("SYS:SRC;**;*.*.*" #P"$out/lib/sbcl/src/**/*.*")
("SYS:CONTRIB;**;*.*.*" #P"$out/lib/sbcl/contrib/**/*.*")))
EOF
'';
setupHook = lib.optional purgeNixReferences (writeText "setupHook.sh" ''
addEnvHooks "$targetOffset" _setSbclHome
_setSbclHome() {
export SBCL_HOME='@out@/lib/sbcl/'
}
'');
meta = sbclBootstrap.meta // {
inherit version;
updateWalker = true;
};
sha256 = "15wa66sachhzgvg5n35vihmkpasg100lh561c1d1bdrql0p8kbd9";
}

View file

@ -0,0 +1,116 @@
{ version, sha256 }:
{ lib, stdenv, fetchurl, writeText, sbclBootstrap
, sbclBootstrapHost ? "${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit"
, threadSupport ? (stdenv.isi686 || stdenv.isx86_64 || "aarch64-linux" == stdenv.hostPlatform.system)
, disableImmobileSpace ? false
# Meant for sbcl used for creating binaries portable to non-NixOS via save-lisp-and-die.
# Note that the created binaries still need `patchelf --set-interpreter ...`
# to get rid of ${glibc} dependency.
, purgeNixReferences ? false
, texinfo
}:
stdenv.mkDerivation rec {
pname = "sbcl";
inherit version;
src = fetchurl {
url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${pname}-${version}-source.tar.bz2";
inherit sha256;
};
buildInputs = [texinfo];
patchPhase = ''
echo '"${version}.nixos"' > version.lisp-expr
pwd
# SBCL checks whether files are up-to-date in many places..
# Unfortunately, same timestamp is not good enough
sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp
#sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp
sed -i src/cold/slam.lisp -e \
'/file-write-date input/a)'
sed -i src/cold/slam.lisp -e \
'/file-write-date output/i(or (and (= 2208988801 (file-write-date output)) (= 2208988801 (file-write-date input)))'
sed -i src/code/target-load.lisp -e \
'/date defaulted-fasl/a)'
sed -i src/code/target-load.lisp -e \
'/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))'
# Fix the tests
sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp
sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp
# Use whatever `cc` the stdenv provides
substituteInPlace src/runtime/Config.x86-64-darwin --replace gcc cc
substituteInPlace src/runtime/Config.x86-64-darwin \
--replace mmacosx-version-min=10.4 mmacosx-version-min=10.5
''
+ (if purgeNixReferences
then
# This is the default location to look for the core; by default in $out/lib/sbcl
''
sed 's@^\(#define SBCL_HOME\) .*$@\1 "/no-such-path"@' \
-i src/runtime/runtime.c
''
else
# Fix software version retrieval
''
sed -e "s@/bin/uname@$(command -v uname)@g" -i src/code/*-os.lisp \
src/code/run-program.lisp
''
);
preBuild = ''
export INSTALL_ROOT=$out
mkdir -p test-home
export HOME=$PWD/test-home
'';
enableFeatures = with lib;
optional threadSupport "sb-thread" ++
optional stdenv.isAarch32 "arm";
disableFeatures = with lib;
optional (!threadSupport) "sb-thread" ++
optionals disableImmobileSpace [ "immobile-space" "immobile-code" "compact-instance-header" ];
buildPhase = ''
sh make.sh --prefix=$out --xc-host="${sbclBootstrapHost}" ${
lib.concatStringsSep " "
(builtins.map (x: "--with-${x}") enableFeatures ++
builtins.map (x: "--without-${x}") disableFeatures)
}
(cd doc/manual ; make info)
'';
installPhase = ''
INSTALL_ROOT=$out sh install.sh
''
+ lib.optionalString (!purgeNixReferences) ''
cp -r src $out/lib/sbcl
cp -r contrib $out/lib/sbcl
cat >$out/lib/sbcl/sbclrc <<EOF
(setf (logical-pathname-translations "SYS")
'(("SYS:SRC;**;*.*.*" #P"$out/lib/sbcl/src/**/*.*")
("SYS:CONTRIB;**;*.*.*" #P"$out/lib/sbcl/contrib/**/*.*")))
EOF
'';
setupHook = lib.optional purgeNixReferences (writeText "setupHook.sh" ''
addEnvHooks "$targetOffset" _setSbclHome
_setSbclHome() {
export SBCL_HOME='@out@/lib/sbcl/'
}
'');
meta = sbclBootstrap.meta // {
inherit version;
updateWalker = true;
};
}

View file

@ -1,114 +1,4 @@
{ lib, stdenv, fetchurl, writeText, sbclBootstrap
, sbclBootstrapHost ? "${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit"
, threadSupport ? (stdenv.isi686 || stdenv.isx86_64 || "aarch64-linux" == stdenv.hostPlatform.system)
, disableImmobileSpace ? false
# Meant for sbcl used for creating binaries portable to non-NixOS via save-lisp-and-die.
# Note that the created binaries still need `patchelf --set-interpreter ...`
# to get rid of ${glibc} dependency.
, purgeNixReferences ? false
, texinfo
}:
stdenv.mkDerivation rec {
pname = "sbcl";
import ./common.nix {
version = "2.0.8";
src = fetchurl {
url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${pname}-${version}-source.tar.bz2";
sha256 = "sha256:1xwrwvps7drrpyw3wg5h3g2qajmkwqs9gz0fdw1ns9adp7vld390";
};
buildInputs = [texinfo];
patchPhase = ''
echo '"${version}.nixos"' > version.lisp-expr
pwd
# SBCL checks whether files are up-to-date in many places..
# Unfortunately, same timestamp is not good enough
sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp
#sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp
sed -i src/cold/slam.lisp -e \
'/file-write-date input/a)'
sed -i src/cold/slam.lisp -e \
'/file-write-date output/i(or (and (= 2208988801 (file-write-date output)) (= 2208988801 (file-write-date input)))'
sed -i src/code/target-load.lisp -e \
'/date defaulted-fasl/a)'
sed -i src/code/target-load.lisp -e \
'/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))'
# Fix the tests
sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp
sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp
# Use whatever `cc` the stdenv provides
substituteInPlace src/runtime/Config.x86-64-darwin --replace gcc cc
substituteInPlace src/runtime/Config.x86-64-darwin \
--replace mmacosx-version-min=10.4 mmacosx-version-min=10.5
''
+ (if purgeNixReferences
then
# This is the default location to look for the core; by default in $out/lib/sbcl
''
sed 's@^\(#define SBCL_HOME\) .*$@\1 "/no-such-path"@' \
-i src/runtime/runtime.c
''
else
# Fix software version retrieval
''
sed -e "s@/bin/uname@$(command -v uname)@g" -i src/code/*-os.lisp \
src/code/run-program.lisp
''
);
preBuild = ''
export INSTALL_ROOT=$out
mkdir -p test-home
export HOME=$PWD/test-home
'';
enableFeatures = with lib;
optional threadSupport "sb-thread" ++
optional stdenv.isAarch32 "arm";
disableFeatures = with lib;
optional (!threadSupport) "sb-thread" ++
optionals disableImmobileSpace [ "immobile-space" "immobile-code" "compact-instance-header" ];
buildPhase = ''
sh make.sh --prefix=$out --xc-host="${sbclBootstrapHost}" ${
lib.concatStringsSep " "
(builtins.map (x: "--with-${x}") enableFeatures ++
builtins.map (x: "--without-${x}") disableFeatures)
}
(cd doc/manual ; make info)
'';
installPhase = ''
INSTALL_ROOT=$out sh install.sh
''
+ lib.optionalString (!purgeNixReferences) ''
cp -r src $out/lib/sbcl
cp -r contrib $out/lib/sbcl
cat >$out/lib/sbcl/sbclrc <<EOF
(setf (logical-pathname-translations "SYS")
'(("SYS:SRC;**;*.*.*" #P"$out/lib/sbcl/src/**/*.*")
("SYS:CONTRIB;**;*.*.*" #P"$out/lib/sbcl/contrib/**/*.*")))
EOF
'';
setupHook = lib.optional purgeNixReferences (writeText "setupHook.sh" ''
addEnvHooks "$targetOffset" _setSbclHome
_setSbclHome() {
export SBCL_HOME='@out@/lib/sbcl/'
}
'');
meta = sbclBootstrap.meta // {
inherit version;
updateWalker = true;
};
sha256 = "1xwrwvps7drrpyw3wg5h3g2qajmkwqs9gz0fdw1ns9adp7vld390";
}

View file

@ -229,6 +229,8 @@ qtModule {
description = "A web engine based on the Chromium web browser";
maintainers = with maintainers; [ matthewbauer ];
platforms = platforms.unix;
# This build takes a long time; particularly on slow architectures
timeout = 24 * 3600;
};
}

View file

@ -1,20 +1,21 @@
{ lib, fetchurl, buildDunePackage, alcotest, bos, dune-configurator }:
{ lib, fetchurl, buildDunePackage, ocaml, alcotest, bos, rresult }:
buildDunePackage rec {
pname = "base64";
version = "3.4.0";
version = "3.5.0";
minimumOCamlVersion = "4.03";
useDune2 = true;
src = fetchurl {
url = "https://github.com/mirage/ocaml-base64/releases/download/v${version}/base64-v${version}.tbz";
sha256 = "0d0n5gd4nkdsz14jnxq13f1f7rzxmndg5xql039a8wfppmazd70w";
sha256 = "sha256-WJ3pwAV46/54QZismBjTWGxHSyMWts0+HEbMsfYq46Q=";
};
buildInputs = [ bos dune-configurator ];
doCheck = true;
checkInputs = [ alcotest ];
# otherwise fmt breaks evaluation
doCheck = lib.versionAtLeast ocaml.version "4.05";
checkInputs = [ alcotest bos rresult ];
meta = {
homepage = "https://github.com/mirage/ocaml-base64";

View file

@ -1,12 +1,15 @@
{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, uchar, uutf, uunf }:
{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, uchar, uutf, uunf, uucd }:
let
pname = "uucp";
version = "11.0.0";
version = "13.0.0";
webpage = "https://erratique.ch/software/${pname}";
minimumOCamlVersion = "4.03";
doCheck = true;
in
assert lib.versionAtLeast ocaml.version "4.01";
assert lib.assertMsg (lib.versionAtLeast ocaml.version minimumOCamlVersion)
"${pname} needs at least OCaml ${minimumOCamlVersion}";
stdenv.mkDerivation {
@ -14,17 +17,29 @@ stdenv.mkDerivation {
src = fetchurl {
url = "${webpage}/releases/${pname}-${version}.tbz";
sha256 = "0pidg2pmqsifmk4xx9cc5p5jprhg26xb68g1xddjm7sjzbdzhlm4";
sha256 = "sha256-OPpHbCOC/vMFdyHwyhCSisUv2PyO8xbeY2oq1a9HbqY=";
};
buildInputs = [ ocaml findlib ocamlbuild topkg uutf uunf ];
propagatedBuildInputs = [ uchar ];
buildPhase = "${topkg.buildPhase} --with-cmdliner false";
buildPhase = ''
runHook preBuild
${topkg.buildPhase} --with-cmdliner false --tests ${lib.boolToString doCheck}
runHook postBuild
'';
inherit (topkg) installPhase;
inherit doCheck;
checkPhase = ''
runHook preCheck
${topkg.run} test
runHook postCheck
'';
checkInputs = [ uucd ];
meta = with lib; {
description = "An OCaml library providing efficient access to a selection of character properties of the Unicode character database";
homepage = webpage;

View file

@ -1,20 +1,31 @@
{ lib, buildPythonPackage, fetchPypi }:
{ lib
, buildPythonPackage
, fetchFromGitHub
, mock
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "ConfigArgParse";
version = "1.2.3";
version = "1.3";
src = fetchPypi {
inherit pname version;
sha256 = "1p1pzpf5qpf80bfxsx1mbw9blyhhypjvhl3i60pbmhfmhvlpplgd";
src = fetchFromGitHub {
owner = "bw2";
repo = pname;
rev = version;
sha256 = "147x781lgahn9r3gbhayhx1pf0iysf7q1hnr3kypy3p2k9v7a9mh";
};
# no tests in tarball
doCheck = false;
checkInputs = [
mock
pytestCheckHook
];
pythonImportsCheck = [ "configargparse" ];
meta = with lib; {
description = "A drop-in replacement for argparse";
homepage = "https://github.com/zorro3/ConfigArgParse";
homepage = "https://github.com/bw2/ConfigArgParse";
license = licenses.mit;
maintainers = [ maintainers.willibutz ];
};

View file

@ -20,14 +20,14 @@
buildPythonPackage rec {
pname = "fonttools";
version = "4.19.1";
version = "4.20.0";
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = version;
sha256 = "16jz3g4jzfdc43hs33b59vzd9m233qgflvy3ycdynifqk16lqsp2";
sha256 = "0yj83vsjh23g7gkmq6svbgc898x3qgygkhvpcbpycvmpwxxqxh1v";
};
# all dependencies are optional, but

View file

@ -24,9 +24,11 @@ buildPythonPackage rec {
checkInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "modeled" ];
meta = with lib; {
description = "Universal data modeling for Python";
homepage = "https://bitbucket.org/userzimmermann/python-modeled";
homepage = "https://github.com/modeled/modeled";
license = licenses.lgpl3Only;
maintainers = [ maintainers.costrouc ];
};

View file

@ -0,0 +1,67 @@
{ lib
, stdenv
, buildPythonPackage
, fetchFromGitHub
, aiohttp
, eventlet
, iana-etc
, libredirect
, mock
, requests
, six
, tornado
, websocket_client
, websockets
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "python-engineio";
version = "3.14.2";
src = fetchFromGitHub {
owner = "miguelgrinberg";
repo = "python-engineio";
rev = "v${version}";
sha256 = "1r3gvizrknbv036pvxid1l726wkb0l43bdaz5y879s7j3ipyb464";
};
propagatedBuildInputs = [
six
];
checkInputs = [
aiohttp
eventlet
mock
requests
tornado
websocket_client
websockets
pytestCheckHook
];
preCheck = lib.optionalString stdenv.isLinux ''
echo "nameserver 127.0.0.1" > resolv.conf
export NIX_REDIRECTS=/etc/protocols=${iana-etc}/etc/protocols:/etc/resolv.conf=$(realpath resolv.conf) \
LD_PRELOAD=${libredirect}/lib/libredirect.so
'';
postCheck = ''
unset NIX_REDIRECTS LD_PRELOAD
'';
# somehow effective log level does not change?
disabledTests = [ "test_logger" ];
pythonImportsCheck = [ "engineio" ];
meta = with lib; {
description = "Python based Engine.IO client and server v3.x";
longDescription = ''
Engine.IO is a lightweight transport protocol that enables real-time
bidirectional event-based communication between clients and a server.
'';
homepage = "https://github.com/miguelgrinberg/python-engineio/";
license = with licenses; [ mit ];
maintainers = with maintainers; [ graham33 ];
};
}

View file

@ -0,0 +1,47 @@
{ lib
, bidict
, buildPythonPackage
, fetchFromGitHub
, mock
, pytestCheckHook
, python-engineio_3
}:
buildPythonPackage rec {
pname = "python-socketio";
version = "4.6.1";
src = fetchFromGitHub {
owner = "miguelgrinberg";
repo = "python-socketio";
rev = "v${version}";
sha256 = "14dijag17v84v0pp9qi89h5awb4h4i9rj0ppkixqv6is9z9lflw5";
};
propagatedBuildInputs = [
bidict
python-engineio_3
];
checkInputs = [
mock
pytestCheckHook
];
pythonImportsCheck = [ "socketio" ];
# pytestCheckHook seems to change the default log level to WARNING, but the
# tests assert it is ERROR
disabledTests = [ "test_logger" ];
meta = with lib; {
description = "Python Socket.IO server and client 4.x";
longDescription = ''
Socket.IO is a lightweight transport protocol that enables real-time
bidirectional event-based communication between clients and a server.
'';
homepage = "https://github.com/miguelgrinberg/python-socketio/";
license = with licenses; [ mit ];
maintainers = with maintainers; [ graham33 ];
};
}

View file

@ -36,7 +36,7 @@ buildPythonPackage rec {
Socket.IO is a lightweight transport protocol that enables real-time
bidirectional event-based communication between clients and a server.
'';
homepage = "https://github.com/miguelgrinberg/python-engineio/";
homepage = "https://github.com/miguelgrinberg/python-socketio/";
license = with licenses; [ mit ];
maintainers = with maintainers; [ mic92 ];
};

View file

@ -8,7 +8,7 @@
, six
, zetup
, modeled
, pytest
, pytestCheckHook
}:
buildPythonPackage rec {
@ -20,9 +20,7 @@ buildPythonPackage rec {
sha256 = "0377ikajf6c3zcy3lc0kh4w9zmlqyplk2c2hb0yyc7h3jnfnya96";
};
nativeBuildInputs = [
zetup
];
nativeBuildInputs = [ zetup ];
propagatedBuildInputs = [
robotframework
@ -32,19 +30,21 @@ buildPythonPackage rec {
modeled
];
checkInputs = [
pytest
];
checkPhase = ''
# tests require network
pytest test --ignore test/remote/test_remote.py
postPatch = ''
# Remove upstream's selfmade approach to collect the dependencies
# https://github.com/userzimmermann/robotframework-tools/issues/1
substituteInPlace setup.py --replace \
"setup_requires=SETUP_REQUIRES + (zfg.SETUP_REQUIRES or [])," ""
'';
checkInputs = [ pytestCheckHook ];
pytestFlagsArray = [ "test" ];
pythonImportsCheck = [ "robottools" ];
meta = with lib; {
description = "Python Tools for Robot Framework and Test Libraries";
homepage = "https://bitbucket.org/userzimmermann/robotframework-tools";
license = licenses.gpl3;
homepage = "https://github.com/userzimmermann/robotframework-tools";
license = licenses.gpl3Plus;
maintainers = [ maintainers.costrouc ];
};
}

View file

@ -15,12 +15,12 @@
buildPythonPackage rec {
pname = "uvloop";
version = "0.15.0";
version = "0.15.1";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "0rfhr84km8k5gj0036b2pznwmc8macx56vkxc3aksvns95dksl0s";
sha256 = "1p33xfzcy60qqca3rplzbh8h4x7x9l77vi6zbyy9md5z2a0q4ikq";
};
buildInputs = [

View file

@ -1,6 +1,11 @@
{ lib, buildPythonPackage, fetchPypi
, setuptools_scm, pathpy, nbconvert
, pytest }:
{ lib
, buildPythonPackage
, fetchPypi
, nbconvert
, pathpy
, pytestCheckHook
, setuptools-scm
}:
buildPythonPackage rec {
pname = "zetup";
@ -11,18 +16,25 @@ buildPythonPackage rec {
sha256 = "b8a9bdcfa4b705d72b55b218658bc9403c157db7b57a14158253c98d03ab713d";
};
# Python 3.8 compatibility
# Python > 3.7 compatibility
postPatch = ''
substituteInPlace zetup/zetup_config.py \
--replace "'3.7']" "'3.7', '3.8']"
--replace "'3.7']" "'3.7', '3.8', '3.9', '3.10']"
'';
checkPhase = ''
py.test test -k "not TestObject" --deselect=test/test_zetup_config.py::test_classifiers
'';
checkInputs = [ pytest pathpy nbconvert ];
propagatedBuildInputs = [ setuptools_scm ];
propagatedBuildInputs = [ setuptools-scm ];
checkInputs = [
pathpy
nbconvert
pytestCheckHook
];
pythonImportsCheck = [ "zetup" ];
meta = with lib; {
description = "Zimmermann's Extensible Tools for Unified Project setups";

View file

@ -1,6 +1,6 @@
source 'https://rubygems.org'
gem 'chef-dk', '4.7.73'
gem 'chef-dk', '4.13.3'
gem 'pry'
gem 'test-kitchen'
gem 'inspec'

File diff suppressed because it is too large Load diff

View file

@ -1,7 +1,7 @@
{ lib, bundlerEnv, bundlerUpdateScript, ruby, perl, autoconf }:
bundlerEnv {
name = "chef-dk-4.7.73";
name = "chef-dk-4.13.3";
inherit ruby;
gemdir = ./.;

File diff suppressed because it is too large Load diff

View file

@ -1,13 +1,21 @@
{ lib, buildGoPackage, fetchFromGitHub, installShellFiles }:
{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
buildGoPackage rec {
buildGoModule rec {
pname = "skaffold";
version = "1.17.2";
version = "1.20.0";
src = fetchFromGitHub {
owner = "GoogleContainerTools";
repo = "skaffold";
rev = "v${version}";
sha256 = "080zhksznwsyi0w1ban90vgh8y1q2703h3h4fvkwg695prd9ij66";
};
vendorSha256 = "1jvrk5jhjzg0dq0zg7p4hvjwda2289cmwh0ldz3269y8g3l113x8";
goPackagePath = "github.com/GoogleContainerTools/skaffold";
subPackages = ["cmd/skaffold"];
buildFlagsArray = let t = "${goPackagePath}/pkg/skaffold"; in ''
buildFlagsArray = let t = "github.com/GoogleContainerTools/skaffold/pkg/skaffold"; in ''
-ldflags=
-s -w
-X ${t}/version.version=v${version}
@ -15,24 +23,24 @@ buildGoPackage rec {
-X ${t}/version.buildDate=unknown
'';
src = fetchFromGitHub {
owner = "GoogleContainerTools";
repo = "skaffold";
rev = "v${version}";
sha256 = "1sn4pmikap93kpdgcalgb3nam7zp60ck6wmynsv8dnzihrr7ycm3";
};
nativeBuildInputs = [ installShellFiles ];
postInstall = ''
for shell in bash zsh; do
$out/bin/skaffold completion $shell > skaffold.$shell
installShellCompletion skaffold.$shell
done
installShellCompletion --cmd skaffold \
--bash <($out/bin/skaffold completion bash) \
--zsh <($out/bin/skaffold completion zsh)
'';
meta = with lib; {
description = "Easy and Repeatable Kubernetes Development";
homepage = "https://skaffold.dev/";
changelog = "https://github.com/GoogleContainerTools/skaffold/releases/tag/v${version}";
description = "Easy and Repeatable Kubernetes Development";
longDescription = ''
Skaffold is a command line tool that facilitates continuous development for Kubernetes applications.
You can iterate on your application source code locally then deploy to local or remote Kubernetes clusters.
Skaffold handles the workflow for building, pushing and deploying your application.
It also provides building blocks and describe customizations for a CI/CD pipeline.
'';
license = licenses.asl20;
maintainers = with maintainers; [ vdemeester ];
};

View file

@ -8,9 +8,9 @@ stdenv.mkDerivation {
sha256 = "0q5hildq2xcig7yrqi26n7fqlanyssjirm7swy2a9icfxpppfpkn";
};
buildInputs = [ unzip ];
nativeBuildInputs = [ unzip ];
makeFlags = [ "LINK=gcc" "CFLAGS=-O2" ];
makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" "LINK=${stdenv.cc.targetPrefix}cc" "CFLAGS=-O2" ];
hardeningDisable = [ "format" ];
@ -26,6 +26,6 @@ stdenv.mkDerivation {
homepage = "http://www.davidviner.com/dlx.php";
description = "DLX Simulator";
license = lib.licenses.gpl2;
platforms = lib.platforms.linux;
platforms = lib.platforms.all;
};
}

View file

@ -118,9 +118,11 @@ stdenv.mkDerivation rec {
logger() { '$out'/bin/logger "$@"; }\
' ${debianDispatcherScript} > ${outDispatchPath}
chmod 555 ${outDispatchPath}
PATH=$out/bin patchShebangs ${outDispatchPath}
HOST_PATH=$out/bin patchShebangs --host ${outDispatchPath}
'';
strictDeps = true;
depsBuildBuild = [ buildPackages.stdenv.cc ];
buildInputs = lib.optionals (enableStatic && !useMusl && stdenv.cc.libc ? static) [ stdenv.cc.libc stdenv.cc.libc.static ];

View file

@ -14,12 +14,12 @@ let
complPath = completionDirs ++ map (vendorDir "completions") pluginPkgs;
funcPath = functionDirs ++ map (vendorDir "functions") pluginPkgs;
confPath = confDirs ++ map (vendorDir "conf") pluginPkgs;
safeConfPath = map escapeShellArg confPath;
in writeShellScriptBin "fish" ''
${fish}/bin/fish --init-command "
set --prepend fish_complete_path ${escapeShellArgs complPath}
set --prepend fish_function_path ${escapeShellArgs funcPath}
for c in {${concatStringsSep "," safeConfPath}}/*; source $c; end
set --local fish_conf_source_path ${escapeShellArgs confPath}
for c in $fish_conf_source_path/*; source $c; end
" "$@"
'')

View file

@ -30,11 +30,11 @@ let
in
stdenv.mkDerivation rec {
pname = "tor";
version = "0.4.4.7";
version = "0.4.5.6";
src = fetchurl {
url = "https://dist.torproject.org/${pname}-${version}.tar.gz";
sha256 = "1vh5kdx7s74il8a6gr7jydbpv0an01nla4y2r8w7h33z2wk2jv9j";
sha256 = "0cz78pjw2bc3kl3ziip1nhhbq89crv315rf1my3zmmgd9xws7jr2";
};
outputs = [ "out" "geoip" ];

View file

@ -2,13 +2,13 @@
python3Packages.buildPythonPackage rec {
pname = "auto-cpufreq";
version = "1.5.3";
version = "1.6.1";
src = fetchFromGitHub {
owner = "AdnanHodzic";
repo = pname;
rev = "v${version}";
sha256 = "sha256-NDIdQ4gUN2jG+VWXsv3fdUogZxOOiNtnbekD30+jx6M=";
sha256 = "sha256-oz3C1150CPfT0kkx1x7VIX/Rm06dkjyxeDPFCRJaWNc=";
};
propagatedBuildInputs = with python3Packages; [ click distro psutil ];

View file

@ -1,8 +1,17 @@
diff --git a/auto_cpufreq/core.py b/auto_cpufreq/core.py
index 482a544..d142013 100644
index a685db8..1ca1ca1 100644
--- a/auto_cpufreq/core.py
+++ b/auto_cpufreq/core.py
@@ -163,31 +163,13 @@ def get_current_gov():
@@ -72,7 +72,7 @@ def app_version():
print("Git commit:", check_output(["git", "describe", "--always"]).strip().decode())
else:
print(getoutput("pacman -Qi auto-cpufreq | grep Version"))
- else:
+ else:
# source code (auto-cpufreq-installer)
try:
print("Git commit:", check_output(["git", "describe", "--always"]).strip().decode())
@@ -179,31 +179,13 @@ def get_current_gov():
return print("Currently using:", getoutput("cpufreqctl.auto-cpufreq --governor").strip().split(" ")[0], "governor")
def cpufreqctl():
@ -38,8 +47,8 @@ index 482a544..d142013 100644
def footer(l=79):
print("\n" + "-" * l + "\n")
@@ -212,74 +194,12 @@ def remove_complete_msg():
@@ -233,74 +215,12 @@ def remove_complete_msg():
footer()
def deploy_daemon():
- print("\n" + "-" * 21 + " Deploying auto-cpufreq as a daemon " + "-" * 22 + "\n")
@ -60,7 +69,7 @@ index 482a544..d142013 100644
- except:
- print("\nERROR:\nWas unable to turn off bluetooth on boot")
-
- auto_cpufreq_log_path.touch(exist_ok=True)
- auto_cpufreq_stats_path.touch(exist_ok=True)
-
- print("\n* Deploy auto-cpufreq install script")
- shutil.copy(SCRIPTS_DIR / "auto-cpufreq-install.sh", "/usr/bin/auto-cpufreq-install")
@ -102,12 +111,12 @@ index 482a544..d142013 100644
- # remove auto-cpufreq-remove
- os.remove("/usr/bin/auto-cpufreq-remove")
-
- # delete log file
- if auto_cpufreq_log_path.exists():
- if auto_cpufreq_log_file is not None:
- auto_cpufreq_log_file.close()
- # delete stats file
- if auto_cpufreq_stats_path.exists():
- if auto_cpufreq_stats_file is not None:
- auto_cpufreq_stats_file.close()
-
- auto_cpufreq_log_path.unlink()
- auto_cpufreq_stats_path.unlink()
-
- # restore original cpufrectl script
- cpufreqctl_restore()
@ -116,6 +125,15 @@ index 482a544..d142013 100644
def gov_check():
for gov in get_avail_gov():
@@ -331,7 +251,7 @@ def countdown(s):
if auto_cpufreq_stats_file is not None:
auto_cpufreq_stats_file.seek(0)
auto_cpufreq_stats_file.truncate(0)
-
+
# execution timestamp
from datetime import datetime
now = datetime.now()
diff --git a/scripts/cpufreqctl.sh b/scripts/cpufreqctl.sh
index 63a2b5b..e157efe 100755
--- a/scripts/cpufreqctl.sh

View file

@ -1,4 +1,9 @@
{ buildGoModule, fetchFromGitHub, lib, wl-clipboard, makeWrapper }:
{ buildGoModule
, fetchFromGitHub
, lib
, wl-clipboard
, makeWrapper
}:
buildGoModule rec {
pname = "clipman";
@ -24,9 +29,9 @@ buildGoModule rec {
meta = with lib; {
homepage = "https://github.com/yory8/clipman";
license = licenses.gpl3;
maintainers = with maintainers; [ ma27 ];
description = "A simple clipboard manager for Wayland";
license = licenses.gpl3Only;
maintainers = with maintainers; [ ma27 ];
platforms = platforms.linux;
};
}

View file

@ -1,4 +1,12 @@
{ lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, scdoc, wayland }:
{ lib
, stdenv
, fetchFromGitHub
, meson
, ninja
, pkg-config
, scdoc
, wayland
}:
stdenv.mkDerivation rec {
pname = "kanshi";
@ -15,6 +23,7 @@ stdenv.mkDerivation rec {
buildInputs = [ wayland ];
meta = with lib; {
homepage = "https://github.com/emersion/kanshi";
description = "Dynamic display configuration tool";
longDescription = ''
kanshi allows you to define output profiles that are automatically enabled
@ -24,8 +33,6 @@ stdenv.mkDerivation rec {
kanshi can be used on Wayland compositors supporting the
wlr-output-management protocol.
'';
homepage = "https://github.com/emersion/kanshi";
downloadPage = "https://github.com/emersion/kanshi";
license = licenses.mit;
maintainers = with maintainers; [ balsoft ];
platforms = platforms.linux;

View file

@ -0,0 +1,39 @@
{ lib
, stdenv
, fetchFromGitHub
, pkg-config
, meson
, ninja
, cairo
, gdk-pixbuf
, wayland
, wayland-protocols
}:
stdenv.mkDerivation rec {
pname = "oguri";
version = "unstable-2020-12-19";
src = fetchFromGitHub {
owner = "vilhalmer";
repo = pname;
rev = "6937fee10a9b0ef3ad8f94f606c0e0d9e7dec564";
sha256 = "sXNvpI/YPDPd2cXQAfRO4ut21gSCXxbo1DpaZmHJDYQ=";
};
nativeBuildInputs = [ pkg-config meson ninja ];
buildInputs = [
cairo
gdk-pixbuf
wayland
wayland-protocols
];
meta = with lib; {
homepage = "https://github.com/vilhalmer/oguri/";
description = "A very nice animated wallpaper daemon for Wayland compositors";
license = licenses.mit;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.unix;
};
}

View file

@ -1,5 +1,13 @@
{ lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config
, cairo, libxkbcommon, wayland, wayland-protocols
{ lib
, stdenv
, fetchFromGitHub
, meson
, ninja
, pkg-config
, cairo
, libxkbcommon
, wayland
, wayland-protocols
, buildDocs ? true, scdoc
}:
@ -33,7 +41,7 @@ stdenv.mkDerivation rec {
description = "Select a region in a Wayland compositor";
homepage = "https://github.com/emersion/slurp";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ buffet ];
platforms = platforms.linux;
};
}

View file

@ -1,6 +1,11 @@
{ lib, stdenv, fetchurl
, pkg-config, scdoc, wayland
, wayland-protocols, libxkbcommon
{ lib
, stdenv
, fetchurl
, pkg-config
, scdoc
, wayland
, wayland-protocols
, libxkbcommon
}:
stdenv.mkDerivation rec {
@ -18,14 +23,14 @@ stdenv.mkDerivation rec {
installFlags = [ "PREFIX=$(out)" ];
meta = with lib; {
homepage = "https://git.sr.ht/~sircmpwn/wev";
description = "Wayland event viewer";
longDescription = ''
This is a tool for debugging events on a Wayland window, analagous to the
X11 tool xev.
'';
homepage = "https://git.sr.ht/~sircmpwn/wev";
license = licenses.mit;
platforms = platforms.unix;
maintainers = with maintainers; [ primeos ];
platforms = platforms.unix;
};
}

View file

@ -1,5 +1,12 @@
{ lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config
, wayland, wayland-protocols }:
{ lib
, stdenv
, fetchFromGitHub
, meson
, ninja
, pkg-config
, wayland
, wayland-protocols
}:
stdenv.mkDerivation rec {
pname = "wl-clipboard";
@ -16,10 +23,11 @@ stdenv.mkDerivation rec {
buildInputs = [ wayland ];
meta = with lib; {
description = "Command-line copy/paste utilities for Wayland";
homepage = "https://github.com/bugaevc/wl-clipboard";
license = licenses.gpl3;
description = "Command-line copy/paste utilities for Wayland";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ dywedir ];
platforms = platforms.linux;
};
}
# TODO: is wayland-protocols a nativeBuildInput or a buildInput?

View file

@ -0,0 +1,54 @@
{ lib
, stdenv
, fetchFromGitHub
, pkg-config
, meson
, ninja
, scdoc
, gtk3
, libxkbcommon
, wayland
, wayland-protocols
}:
stdenv.mkDerivation rec {
pname = "wlogout";
version = "1.1.1";
src = fetchFromGitHub {
owner = "ArtsyMacaw";
repo = "wlogout";
rev = version;
sha256 = "cTscfx+erHVFHwwYpN7pADQWt5sq75sQSyXSP/H8kOs=";
};
nativeBuildInputs = [ pkg-config meson ninja scdoc ];
buildInputs = [
gtk3
libxkbcommon
wayland
wayland-protocols
];
postPatch = ''
substituteInPlace style.css \
--replace "/usr/share/wlogout" "$out/share/${pname}"
substituteInPlace main.c \
--replace "/etc/wlogout" "$out/etc/${pname}"
'';
mesonFlags = [
"--datadir=${placeholder "out"}/share"
"--sysconfdir=${placeholder "out"}/etc"
];
meta = with lib; {
homepage = "https://github.com/ArtsyMacaw/wlogout";
description = "A wayland based logout menu";
license = licenses.mit;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.unix;
};
}
# TODO: shell completions

View file

@ -1,4 +1,11 @@
{ lib, stdenv, fetchFromGitHub, meson, ninja, cmake, pkg-config, wayland }:
{ lib
, stdenv
, fetchFromGitHub
, meson
, ninja
, pkg-config
, wayland
}:
stdenv.mkDerivation rec {
pname = "wlr-randr";
@ -11,13 +18,14 @@ stdenv.mkDerivation rec {
sha256 = "sha256-JeSxFXSFxcTwJz9EaLb18wtD4ZIT+ATeYM5OyDTJhDQ=";
};
nativeBuildInputs = [ meson ninja cmake pkg-config ];
nativeBuildInputs = [ meson ninja pkg-config ];
buildInputs = [ wayland ];
meta = with lib; {
license = licenses.mit;
description = "An xrandr clone for wlroots compositors";
homepage = "https://github.com/emersion/wlr-randr";
license = licenses.mit;
maintainers = with maintainers; [ ma27 ];
platforms = platforms.unix;
};
}

View file

@ -1,6 +1,13 @@
{ lib, stdenv, fetchFromGitHub
, meson, ninja, pkg-config, scdoc, wayland # wayland-scanner
, wayland-protocols, libseccomp
{ lib
, stdenv
, fetchFromGitHub
, meson
, ninja
, pkg-config
, scdoc
, libseccomp
, wayland # wayland-scanner
, wayland-protocols
}:
stdenv.mkDerivation rec {
@ -21,15 +28,15 @@ stdenv.mkDerivation rec {
mesonFlags = lib.optional stdenv.isLinux "-Dseccomp=enabled";
meta = with lib; {
inherit (src.meta) homepage;
description = "A lightweight overlay bar for Wayland";
longDescription = ''
A lightweight overlay volume/backlight/progress/anything bar for Wayland,
inspired by xob.
'';
inherit (src.meta) homepage;
changelog = "https://github.com/francma/wob/releases/tag/${version}";
license = licenses.isc;
platforms = platforms.unix;
maintainers = with maintainers; [ primeos ];
platforms = platforms.unix;
};
}

View file

@ -1964,7 +1964,33 @@ in
chntpw = callPackage ../tools/security/chntpw { };
clipman = callPackage ../tools/misc/clipman { };
clipman = callPackage ../tools/wayland/clipman { };
kanshi = callPackage ../tools/wayland/kanshi { };
oguri = callPackage ../tools/wayland/oguri { };
slurp = callPackage ../tools/wayland/slurp { };
wayland-utils = callPackage ../tools/wayland/wayland-utils { };
wev = callPackage ../tools/wayland/wev { };
wl-clipboard = callPackage ../tools/wayland/wl-clipboard { };
wlogout = callPackage ../tools/wayland/wlogout { };
wlr-randr = callPackage ../tools/wayland/wlr-randr { };
wlsunset = callPackage ../tools/wayland/wlsunset { };
wob = callPackage ../tools/wayland/wob { };
wshowkeys = callPackage ../tools/wayland/wshowkeys { };
wtype = callPackage ../tools/wayland/wtype { };
ydotool = callPackage ../tools/wayland/ydotool { };
clipster = callPackage ../tools/misc/clipster { };
@ -3850,22 +3876,8 @@ in
wallutils = callPackage ../tools/graphics/wallutils { };
wayland-utils = callPackage ../tools/wayland/wayland-utils { };
wev = callPackage ../tools/misc/wev { };
wl-clipboard = callPackage ../tools/misc/wl-clipboard { };
wlsunset = callPackage ../tools/wayland/wlsunset { };
wob = callPackage ../tools/misc/wob { };
wtype = callPackage ../tools/wayland/wtype { };
wrangler = callPackage ../development/tools/wrangler { };
wshowkeys = callPackage ../tools/wayland/wshowkeys { };
wsl-open = callPackage ../tools/misc/wsl-open { };
xkcdpass = with python3Packages; toPythonApplication xkcdpass;
@ -10163,6 +10175,13 @@ in
buildPackages = buildPackages // { stdenv = gcc8Stdenv; };
});
go_1_16 = callPackage ../development/compilers/go/1.16.nix ({
inherit (darwin.apple_sdk.frameworks) Security Foundation;
} // lib.optionalAttrs (stdenv.cc.isGNU && stdenv.isAarch64) {
stdenv = gcc8Stdenv;
buildPackages = buildPackages // { stdenv = gcc8Stdenv; };
});
go_2-dev = callPackage ../development/compilers/go/2-dev.nix ({
inherit (darwin.apple_sdk.frameworks) Security Foundation;
} // lib.optionalAttrs (stdenv.cc.isGNU && stdenv.isAarch64) {
@ -17322,8 +17341,6 @@ in
yder = callPackage ../development/libraries/yder { };
ydotool = callPackage ../tools/wayland/ydotool { };
yojimbo = callPackage ../development/libraries/yojimbo { };
yubioath-desktop = libsForQt5.callPackage ../applications/misc/yubioath-desktop { };
@ -17483,6 +17500,9 @@ in
buildGo115Package = callPackage ../development/go-packages/generic {
go = buildPackages.go_1_15;
};
buildGo116Package = callPackage ../development/go-packages/generic {
go = buildPackages.go_1_16;
};
buildGoPackage = buildGo115Package;
@ -17492,6 +17512,9 @@ in
buildGo115Module = callPackage ../development/go-modules/generic {
go = buildPackages.go_1_15;
};
buildGo116Module = callPackage ../development/go-modules/generic {
go = buildPackages.go_1_16;
};
buildGoModule = buildGo115Module;
@ -22826,8 +22849,6 @@ in
super-productivity = callPackage ../applications/networking/super-productivity { };
wlr-randr = callPackage ../tools/misc/wlr-randr { };
wlroots = callPackage ../development/libraries/wlroots { };
sway-unwrapped = callPackage ../applications/window-managers/sway { };
@ -23134,8 +23155,6 @@ in
kanboard = callPackage ../applications/misc/kanboard { };
kanshi = callPackage ../tools/misc/kanshi { };
kapitonov-plugins-pack = callPackage ../applications/audio/kapitonov-plugins-pack { };
kapow = libsForQt5.callPackage ../applications/misc/kapow { };
@ -23926,6 +23945,8 @@ in
qbec = callPackage ../applications/networking/cluster/qbec { };
qemacs = callPackage ../applications/editors/qemacs { };
rssguard = libsForQt5.callPackage ../applications/networking/feedreaders/rssguard { };
scudcloud = callPackage ../applications/networking/instant-messengers/scudcloud { };
@ -24835,8 +24856,6 @@ in
slrn = callPackage ../applications/networking/newsreaders/slrn { };
slurp = callPackage ../tools/misc/slurp { };
sniproxy = callPackage ../applications/networking/sniproxy { };
sooperlooper = callPackage ../applications/audio/sooperlooper { };

View file

@ -6144,6 +6144,10 @@ let
license = with lib.licenses; [ artistic1 gpl1Plus ];
};
buildInputs = [ TestDifferences ];
nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang;
postInstall = lib.optionalString stdenv.isDarwin ''
shortenPerlShebang $out/bin/*
'';
};
DevelOverloadInfo = buildPerlPackage {

View file

@ -6316,6 +6316,8 @@ in {
python-engineio = callPackage ../development/python-modules/python-engineio { };
python-engineio_3 = callPackage ../development/python-modules/python-engineio/3.nix { };
python-etcd = callPackage ../development/python-modules/python-etcd { };
python_fedora = callPackage ../development/python-modules/python_fedora { };
@ -6456,6 +6458,8 @@ in {
python-socketio = callPackage ../development/python-modules/python-socketio { };
python-socketio_4 = callPackage ../development/python-modules/python-socketio/4.nix { };
python-sql = callPackage ../development/python-modules/python-sql { };
python_statsd = callPackage ../development/python-modules/python_statsd { };