From 0cf301d95f38c74cab403c424c6b318e3d5dfe79 Mon Sep 17 00:00:00 2001 From: tilpner Date: Mon, 2 Dec 2019 18:04:37 +0100 Subject: [PATCH 001/219] ferm: 2.4.1 -> 2.5 --- pkgs/tools/networking/ferm/default.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/networking/ferm/default.nix b/pkgs/tools/networking/ferm/default.nix index 6f1660484e78..c2f8f2142c02 100644 --- a/pkgs/tools/networking/ferm/default.nix +++ b/pkgs/tools/networking/ferm/default.nix @@ -1,12 +1,14 @@ { stdenv, fetchurl, makeWrapper, perl, ebtables, ipset, iptables, nixosTests }: -stdenv.mkDerivation rec { - version = "2.4.1"; +let + inherit (stdenv.lib.versions) majorMinor; +in stdenv.mkDerivation rec { + version = "2.5"; pname = "ferm"; src = fetchurl { - url = "http://ferm.foo-projects.org/download/2.4/ferm-${version}.tar.xz"; - sha256 = "1fv8wk513yysp4q0i65rl2m0hg2lxwwgk9ppprsca1xcxrdpsvwa"; + url = "http://ferm.foo-projects.org/download/${majorMinor version}/ferm-${version}.tar.xz"; + sha256 = "0lxqcpirphihpvdqrh5kq0621aqq0h2vdy9q2v85gqdhd52js20p"; }; buildInputs = [ perl ipset ebtables iptables makeWrapper ]; From 4238308b91ad7dc5f80c9d92c30d928a4d65223c Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Wed, 12 Feb 2020 23:41:55 +0000 Subject: [PATCH 002/219] mdds: 1.5.0 -> 1.6.0 --- pkgs/development/libraries/mdds/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/mdds/default.nix b/pkgs/development/libraries/mdds/default.nix index cdc3dfa5ca0b..605346d5644f 100644 --- a/pkgs/development/libraries/mdds/default.nix +++ b/pkgs/development/libraries/mdds/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "mdds"; - version = "1.5.0"; + version = "1.6.0"; src = fetchurl { url = "https://kohei.us/files/${pname}/src/${pname}-${version}.tar.bz2"; - sha256 = "03b8i43pw4m767mm0cnbi77x7qhpkzpi9b1f6dpp4cmyszmnsk8l"; + sha256 = "0zg0v9rfs92ff1gpnb06gzbxbnd9nqdar5fk8dnkmy0jpnf5qn7i"; }; postInstall = '' From e96fa035096cd84515d099d8ee6414a8e72fd619 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Mon, 30 Mar 2020 06:27:57 +0000 Subject: [PATCH 003/219] netcdf: 4.7.3 -> 4.7.4 --- pkgs/development/libraries/netcdf/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/netcdf/default.nix b/pkgs/development/libraries/netcdf/default.nix index 1436fb021271..925cd7649e26 100644 --- a/pkgs/development/libraries/netcdf/default.nix +++ b/pkgs/development/libraries/netcdf/default.nix @@ -10,11 +10,11 @@ let mpi = hdf5.mpi; in stdenv.mkDerivation rec { pname = "netcdf"; - version = "4.7.3"; + version = "4.7.4"; src = fetchurl { url = "https://www.unidata.ucar.edu/downloads/netcdf/ftp/${pname}-c-${version}.tar.gz"; - sha256 = "12s4w2s96p51hlsa81lw92w56rdx8i3mk21pz2ydwcamw579z34f"; + sha256 = "1a2fpp15a2rl1m50gcvvzd9y6bavl6vjf9zzf63sz5gdmq06yiqf"; }; postPatch = '' @@ -47,7 +47,7 @@ in stdenv.mkDerivation rec { meta = { description = "Libraries for the Unidata network Common Data Format"; platforms = stdenv.lib.platforms.unix; - homepage = https://www.unidata.ucar.edu/software/netcdf/; + homepage = "https://www.unidata.ucar.edu/software/netcdf/"; license = { url = https://www.unidata.ucar.edu/software/netcdf/docs/copyright.html; }; From 8e9e77ee7dc0d612616ebe0f93d67be89b931131 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 22 Nov 2019 21:49:16 +0100 Subject: [PATCH 004/219] nixosTests.cockroachdb: add to all-tests.nix --- nixos/tests/all-tests.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 2bdced6a3cc1..6367f0b158e5 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -51,6 +51,7 @@ in cloud-init = handleTest ./cloud-init.nix {}; codimd = handleTest ./codimd.nix {}; consul = handleTest ./consul.nix {}; + cockroachdb = handleTestOn ["x86_64-linux"] ./cockroachdb.nix {}; containers-bridge = handleTest ./containers-bridge.nix {}; containers-ephemeral = handleTest ./containers-ephemeral.nix {}; containers-extra_veth = handleTest ./containers-extra_veth.nix {}; From e7e05ad9575156e87468dafaf0964253cc628ea2 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 22 Nov 2019 21:01:22 +0100 Subject: [PATCH 005/219] nixosTests.cockroachdb: port to python --- nixos/tests/cockroachdb.nix | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/nixos/tests/cockroachdb.nix b/nixos/tests/cockroachdb.nix index 496283fddc7b..33ff7c31b25f 100644 --- a/nixos/tests/cockroachdb.nix +++ b/nixos/tests/cockroachdb.nix @@ -95,7 +95,7 @@ let ''; }; -in import ./make-test.nix ({ pkgs, ...} : { +in import ./make-test-python.nix ({ pkgs, ...} : { name = "cockroachdb"; meta.maintainers = with pkgs.stdenv.lib.maintainers; [ thoughtpolice ]; @@ -110,17 +110,13 @@ in import ./make-test.nix ({ pkgs, ...} : { # there's otherwise no way to guarantee that node1 will start before the others try # to join it. testScript = '' - $node1->start; - $node1->waitForUnit("cockroachdb"); - - $node2->start; - $node2->waitForUnit("cockroachdb"); - - $node3->start; - $node3->waitForUnit("cockroachdb"); - - $node1->mustSucceed("cockroach sql --host=192.168.1.1 --insecure -e 'SHOW ALL CLUSTER SETTINGS' 2>&1"); - $node1->mustSucceed("cockroach workload init bank 'postgresql://root\@192.168.1.1:26257?sslmode=disable'"); - $node1->mustSucceed("cockroach workload run bank --duration=1m 'postgresql://root\@192.168.1.1:26257?sslmode=disable'"); + for node in node1, node2, node3: + node.start() + node.wait_for_unit("cockroachdb") + node1.succeed( + "cockroach sql --host=192.168.1.1 --insecure -e 'SHOW ALL CLUSTER SETTINGS' 2>&1", + "cockroach workload init bank 'postgresql://root@192.168.1.1:26257?sslmode=disable'", + "cockroach workload run bank --duration=1m 'postgresql://root@192.168.1.1:26257?sslmode=disable'", + ) ''; }) From 4009ef44e9a1b0dec6ab1df418ad1f54647e9b63 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 22 Nov 2019 22:28:17 +0100 Subject: [PATCH 006/219] cockroachdb: remove stray trailing whitespace --- nixos/modules/services/databases/cockroachdb.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/databases/cockroachdb.nix b/nixos/modules/services/databases/cockroachdb.nix index b6f94a4881a0..35fb46d69d8e 100644 --- a/nixos/modules/services/databases/cockroachdb.nix +++ b/nixos/modules/services/databases/cockroachdb.nix @@ -153,7 +153,7 @@ in defaultText = "pkgs.cockroachdb"; description = '' The CockroachDB derivation to use for running the service. - + This would primarily be useful to enable Enterprise Edition features in your own custom CockroachDB build (Nixpkgs CockroachDB binaries only contain open source features and open source code). From 98906dfdefe322cb573c7c54b4744ef781bdd2cd Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Fri, 22 Nov 2019 22:28:38 +0100 Subject: [PATCH 007/219] nixosTests.cockroachdb: bump memory cockroachdb complained about not enough memory available. --- nixos/tests/cockroachdb.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/tests/cockroachdb.nix b/nixos/tests/cockroachdb.nix index 33ff7c31b25f..a03a223d66a3 100644 --- a/nixos/tests/cockroachdb.nix +++ b/nixos/tests/cockroachdb.nix @@ -1,7 +1,7 @@ # This performs a full 'end-to-end' test of a multi-node CockroachDB cluster # using the built-in 'cockroach workload' command, to simulate a semi-realistic # test load. It generally takes anywhere from 3-5 minutes to run and 1-2GB of -# RAM (though each of 3 workers gets 1GB allocated) +# RAM (though each of 3 workers gets 2GB allocated) # # CockroachDB requires synchronized system clocks within a small error window # (~500ms by default) on each node in order to maintain a multi-node cluster. @@ -55,7 +55,7 @@ let { # Bank/TPC-C benchmarks take some memory to complete - virtualisation.memorySize = 1024; + virtualisation.memorySize = 2048; # Install the KVM PTP "Virtualized Clock" driver. This allows a /dev/ptp0 # device to appear as a reference clock, synchronized to the host clock. From f25a301a0a98a96b54b1a221c2dd410a3b32c4f1 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sat, 23 Nov 2019 16:28:26 +0100 Subject: [PATCH 008/219] nixos/chrony: move to StateDirectory and tmpfiles.d --- nixos/modules/services/networking/ntp/chrony.nix | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/nixos/modules/services/networking/ntp/chrony.nix b/nixos/modules/services/networking/ntp/chrony.nix index da9d960cc142..f1062edaa05b 100644 --- a/nixos/modules/services/networking/ntp/chrony.nix +++ b/nixos/modules/services/networking/ntp/chrony.nix @@ -92,6 +92,11 @@ in systemd.services.systemd-timedated.environment = { SYSTEMD_TIMEDATED_NTP_SERVICES = "chronyd.service"; }; + systemd.tmpfiles.rules = [ + "d ${stateDir} 0755 chrony chrony - -" + "f ${keyFile} 0640 chrony chrony -" + ]; + systemd.services.chronyd = { description = "chrony NTP daemon"; @@ -103,13 +108,6 @@ in path = [ pkgs.chrony ]; - preStart = '' - mkdir -m 0755 -p ${stateDir} - touch ${keyFile} - chmod 0640 ${keyFile} - chown chrony:chrony ${stateDir} ${keyFile} - ''; - unitConfig.ConditionCapability = "CAP_SYS_TIME"; serviceConfig = { Type = "simple"; @@ -118,7 +116,7 @@ in ProtectHome = "yes"; ProtectSystem = "full"; PrivateTmp = "yes"; - + StateDirectory = "chrony"; }; }; From fe6dd71f72ad53f8556498f6c1fb97f4004df6d5 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sat, 23 Nov 2019 19:31:27 +0100 Subject: [PATCH 009/219] nixosTests.cockroachdb: set ConditionPathExists=/dev/ptp0 to chronyd --- nixos/tests/cockroachdb.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nixos/tests/cockroachdb.nix b/nixos/tests/cockroachdb.nix index a03a223d66a3..d0cc5e19837c 100644 --- a/nixos/tests/cockroachdb.nix +++ b/nixos/tests/cockroachdb.nix @@ -88,6 +88,8 @@ let services.cockroachdb.listen.address = myAddr; services.cockroachdb.join = lib.mkIf (joinNode != null) joinNode; + systemd.services.chronyd.unitConfig.ConditionPathExists = "/dev/ptp0"; + # Hold startup until Chrony has performed its first measurement (which # will probably result in a full timeskip, thanks to makestep) systemd.services.cockroachdb.preStart = '' From ef65b728d30335c1fca72e93504c205b547f0001 Mon Sep 17 00:00:00 2001 From: Evils Date: Tue, 24 Mar 2020 23:21:03 +0100 Subject: [PATCH 010/219] tuptime: init at 4.1.0 --- pkgs/tools/system/tuptime/default.nix | 35 +++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 37 insertions(+) create mode 100644 pkgs/tools/system/tuptime/default.nix diff --git a/pkgs/tools/system/tuptime/default.nix b/pkgs/tools/system/tuptime/default.nix new file mode 100644 index 000000000000..acc96998952d --- /dev/null +++ b/pkgs/tools/system/tuptime/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchFromGitHub, python3 }: + +stdenv.mkDerivation rec { + pname = "tuptime"; + version = "4.1.0"; + + src = fetchFromGitHub { + owner = "rfrail3"; + repo = "tuptime"; + rev = version; + sha256 = "0p5v1jp6bl0hjv04q3gh11q6dx9z0x61h6svcbvwp5ni0h1bkz1a"; + }; + + buildInputs = [ python3 ]; + + installPhase = '' + mkdir -p $out/bin + install -m 755 src/tuptime $out/bin/ + + mkdir -p $out/share/man/man1 + cp src/man/tuptime.1 $out/share/man/man1/ + + # upstream only ships this, there are more scripts there... + mkdir -p $out/usr/share/doc/tuptime/contrib + cp misc/scripts/uptimed-to-tuptime.py $out/usr/share/doc/tuptime/contrib/ + ''; + + meta = with stdenv.lib; { + description = "Total uptime & downtime statistics utility"; + homepage = "https://github.com/rfrail3/tuptime"; + license = licenses.gpl2; + platforms = platforms.all; + maintainers = [ maintainers.evils ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index eba10401d5cb..8527751e9bb5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7082,6 +7082,8 @@ in tuir = callPackage ../applications/misc/tuir { }; + tuptime = callPackage ../tools/system/tuptime { }; + turses = callPackage ../applications/networking/instant-messengers/turses { }; oysttyer = callPackage ../applications/networking/instant-messengers/oysttyer { }; From b29d48acfb9d1b489996726694030c5e3fc540c1 Mon Sep 17 00:00:00 2001 From: Evils Date: Tue, 24 Mar 2020 23:45:20 +0100 Subject: [PATCH 011/219] nixos/tuptime: init module --- nixos/modules/module-list.nix | 1 + nixos/modules/services/monitoring/tuptime.nix | 84 +++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 nixos/modules/services/monitoring/tuptime.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index c3d2bb85809e..8cadc9d16290 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -545,6 +545,7 @@ ./services/monitoring/teamviewer.nix ./services/monitoring/telegraf.nix ./services/monitoring/thanos.nix + ./services/monitoring/tuptime.nix ./services/monitoring/ups.nix ./services/monitoring/uptime.nix ./services/monitoring/vnstat.nix diff --git a/nixos/modules/services/monitoring/tuptime.nix b/nixos/modules/services/monitoring/tuptime.nix new file mode 100644 index 000000000000..731260a5c20a --- /dev/null +++ b/nixos/modules/services/monitoring/tuptime.nix @@ -0,0 +1,84 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + + cfg = config.services.tuptime; + +in { + + options.services.tuptime = { + + enable = mkEnableOption "the total uptime service"; + + timer = { + enable = mkOption { + type = types.bool; + default = true; + description = "Whether to regularly log uptime to detect bad shutdowns."; + }; + + period = mkOption { + type = types.str; + default = "*:0/5"; + description = "systemd calendar event"; + }; + }; + }; + + + config = mkIf cfg.enable { + + environment.systemPackages = [ pkgs.tuptime ]; + + users.users.tuptime.description = "tuptime database owner"; + + systemd = { + services = { + + tuptime = { + description = "the total uptime service"; + documentation = [ "man:tuptime(1)" ]; + after = [ "time-sync.target" ]; + wantedBy = [ "multi-user.target" ]; + serviceConfig = { + StateDirectory = "tuptime"; + Type = "oneshot"; + User = "tuptime"; + RemainAfterExit = true; + ExecStart = "${pkgs.tuptime}/bin/tuptime -x"; + ExecStop = "${pkgs.tuptime}/bin/tuptime -xg"; + }; + }; + + tuptime-oneshot = mkIf cfg.timer.enable { + description = "the tuptime scheduled execution unit"; + serviceConfig = { + StateDirectory = "tuptime"; + Type = "oneshot"; + User = "tuptime"; + ExecStart = "${pkgs.tuptime}/bin/tuptime -x"; + }; + }; + }; + + timers.tuptime = mkIf cfg.timer.enable { + description = "the tuptime scheduled execution timer"; + # this timer should be started if the service is started + # even if the timer was previously stopped + wantedBy = [ "tuptime.service" "timers.target" ]; + # this timer should be stopped if the service is stopped + partOf = [ "tuptime.service" ]; + timerConfig = { + OnBootSec = "1min"; + OnCalendar = cfg.timer.period; + Unit = "tuptime-oneshot.service"; + }; + }; + }; + }; + + meta.maintainers = [ maintainers.evils ]; + +} From b7b99c93f5a56aca8c726045c36f32bc3b3ed544 Mon Sep 17 00:00:00 2001 From: Evils Date: Tue, 24 Mar 2020 23:45:49 +0100 Subject: [PATCH 012/219] nixosTests.tuptime: init test --- nixos/tests/all-tests.nix | 1 + nixos/tests/tuptime.nix | 29 +++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 nixos/tests/tuptime.nix diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 2bdced6a3cc1..d059f55adb5d 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -308,6 +308,7 @@ in trilium-server = handleTestOn ["x86_64-linux"] ./trilium-server.nix {}; trezord = handleTest ./trezord.nix {}; trickster = handleTest ./trickster.nix {}; + tuptime = handleTest ./tuptime.nix {}; udisks2 = handleTest ./udisks2.nix {}; upnp = handleTest ./upnp.nix {}; uwsgi = handleTest ./uwsgi.nix {}; diff --git a/nixos/tests/tuptime.nix b/nixos/tests/tuptime.nix new file mode 100644 index 000000000000..36ce2b1ae192 --- /dev/null +++ b/nixos/tests/tuptime.nix @@ -0,0 +1,29 @@ +import ./make-test-python.nix ({ pkgs, ...} : { + name = "tuptime"; + meta = with pkgs.stdenv.lib.maintainers; { + maintainers = [ evils ]; + }; + + machine = { pkgs, ... }: { + imports = [ ../modules/profiles/minimal.nix ]; + services.tuptime.enable = true; + }; + + testScript = + '' + # see if it starts + start_all() + machine.wait_for_unit("multi-user.target") + machine.succeed("tuptime | grep 'System startups:[[:blank:]]*1'") + machine.succeed("tuptime | grep 'System uptime:[[:blank:]]*100.0%'") + machine.shutdown() + + # restart machine and see if it correctly reports the reboot + machine.start() + machine.wait_for_unit("multi-user.target") + machine.succeed("tuptime | grep 'System startups:[[:blank:]]*2'") + machine.succeed("tuptime | grep 'System shutdowns:[[:blank:]]*1 ok'") + machine.shutdown() + ''; +}) + From 4cfc499e1b69e2c9f07d6996ce155e5a966ff4aa Mon Sep 17 00:00:00 2001 From: Spencer Baugh Date: Sat, 4 Apr 2020 13:45:45 -0400 Subject: [PATCH 013/219] cataclysm-dda: 0.D -> 0.E --- pkgs/games/cataclysm-dda/default.nix | 18 +++--------------- .../cataclysm-dda/patches/fix_locale_dir.patch | 12 +++++------- 2 files changed, 8 insertions(+), 22 deletions(-) diff --git a/pkgs/games/cataclysm-dda/default.nix b/pkgs/games/cataclysm-dda/default.nix index ced19bffb31a..ad1a9c409d57 100644 --- a/pkgs/games/cataclysm-dda/default.nix +++ b/pkgs/games/cataclysm-dda/default.nix @@ -1,4 +1,4 @@ -{ stdenv, callPackage, lua, CoreFoundation +{ stdenv, callPackage, CoreFoundation , tiles ? true, Cocoa , debug ? false }: @@ -9,28 +9,16 @@ let in stdenv.mkDerivation (common // rec { - version = "0.D"; + version = "0.E"; name = "cataclysm-dda-${version}"; src = fetchFromCleverRaven { rev = version; - sha256 = "00zzhx1mh1qjq668cga5nbrxp2qk6b82j5ak65skhgnlr6ii4ysc"; + sha256 = "0pbi0fw37zimzdklfj58s1ql0wlqq7dy6idkcsib3hn910ajaxan"; }; - buildInputs = common.buildInputs ++ [ lua ]; - patches = [ ./patches/fix_locale_dir.patch ]; - postPatch = common.postPatch + '' - substituteInPlace lua/autoexec.lua --replace "/usr/share" "$out/share" - ''; - - NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isGNU "-Wno-error=deprecated-copy"; - - makeFlags = common.makeFlags ++ [ - "LUA=1" - ]; - meta = with stdenv.lib.maintainers; common.meta // { maintainers = common.meta.maintainers ++ [ skeidel ]; }; diff --git a/pkgs/games/cataclysm-dda/patches/fix_locale_dir.patch b/pkgs/games/cataclysm-dda/patches/fix_locale_dir.patch index 60a3dc457453..5bfff892d2af 100644 --- a/pkgs/games/cataclysm-dda/patches/fix_locale_dir.patch +++ b/pkgs/games/cataclysm-dda/patches/fix_locale_dir.patch @@ -1,15 +1,13 @@ -diff --git a/src/translations.cpp b/src/translations.cpp -index 2585b7ec56..7bb005823c 100644 --- a/src/translations.cpp +++ b/src/translations.cpp -@@ -195,14 +195,12 @@ void set_language() +@@ -212,14 +212,12 @@ void set_language() auto env = getenv( "LANGUAGE" ); - locale_dir = std::string( FILENAMES["base_path"] + "lang/mo/" + ( env ? env : "none" ) + + locale_dir = std::string( PATH_INFO::base_path() + "lang/mo/" + ( env ? env : "none" ) + "/LC_MESSAGES/cataclysm-dda.mo" ); --#elif (defined __linux__ || (defined MACOSX && !defined TILES)) +-#elif (defined(__linux__) || (defined(MACOSX) && !defined(TILES))) +#else - if( !FILENAMES["base_path"].empty() ) { - locale_dir = FILENAMES["base_path"] + "share/locale"; + if( !PATH_INFO::base_path().empty() ) { + locale_dir = PATH_INFO::base_path() + "share/locale"; } else { locale_dir = "lang/mo"; } From 1e25c474d9e257a758a42934feec748a377b48e7 Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Sun, 5 Apr 2020 11:34:22 -0300 Subject: [PATCH 014/219] [WIP] {help wanted} twolame: 2017-09-27 -> 0.4.0 --- pkgs/development/libraries/twolame/default.nix | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/pkgs/development/libraries/twolame/default.nix b/pkgs/development/libraries/twolame/default.nix index e1284c39aa3b..42fc91f9debe 100644 --- a/pkgs/development/libraries/twolame/default.nix +++ b/pkgs/development/libraries/twolame/default.nix @@ -1,25 +1,27 @@ { stdenv, fetchFromGitHub -, autoreconfHook, pkgconfig -, libsndfile }: +, autoreconfHook +, pkgconfig +, libsndfile, xmlto, asciidoc }: -stdenv.mkDerivation { +with stdenv.lib; +stdenv.mkDerivation rec { pname = "twolame"; - version = "2017-09-27"; + version = "0.4.0"; src = fetchFromGitHub { owner = "njh"; repo = "twolame"; - rev = "977c8ac55d8ca6d5f35d1d413a119dac2b3b0333"; - sha256 = "1rq3yc8ygzdqid9zk6pixmm4w9sk2vrlx217lhn5bjaglv7iyf7x"; + rev = version; + sha256 = "0ckwdx5kmgmh1jq2wl6c9d57pf6z6p2wjdy6fw01a8f3clg21a8g"; }; - nativeBuildInputs = [ autoreconfHook pkgconfig ]; + nativeBuildInputs = [ autoreconfHook pkgconfig xmlto asciidoc ]; buildInputs = [ libsndfile ]; doCheck = false; # fails with "../build-scripts/test-driver: line 107: -Mstrict: command not found" - meta = with stdenv.lib;{ + meta = { description = "A MP2 encoder"; longDescription = '' TwoLAME is an optimised MPEG Audio Layer 2 (MP2) encoder based on From 076f221a0bce289985f8b8b08f85932aff7c44b5 Mon Sep 17 00:00:00 2001 From: Mike Sperber Date: Thu, 9 Apr 2020 10:17:38 +0200 Subject: [PATCH 015/219] emacs: Unbreak on macOS Backport an unexec fix. --- pkgs/applications/editors/emacs/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/editors/emacs/default.nix b/pkgs/applications/editors/emacs/default.nix index 2b40eb77e2cf..ecf1e8d16485 100644 --- a/pkgs/applications/editors/emacs/default.nix +++ b/pkgs/applications/editors/emacs/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm +{ stdenv, lib, fetchurl, fetchpatch, ncurses, xlibsWrapper, libXaw, libXpm , Xaw3d, libXcursor, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif , libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux , alsaLib, cairo, acl, gpm, AppKit, GSS, ImageIO, m17n_lib, libotf @@ -44,6 +44,11 @@ stdenv.mkDerivation rec { patches = [ ./clean-env.patch ./tramp-detect-wrapped-gvfsd.patch + # unbreak macOS unexec + (fetchpatch { + url = https://github.com/emacs-mirror/emacs/commit/888ffd960c06d56a409a7ff15b1d930d25c56089.patch; + sha256 = "08q3ygdigqwky70r47rcgzlkc5jy82xiq8am5kwwy891wlpl7frw"; + }) ]; postPatch = lib.optionalString srcRepo '' From 8eefb7ce147bccc9ef4a17175455fe0bc9bcaab1 Mon Sep 17 00:00:00 2001 From: Aaron Andersen Date: Thu, 9 Apr 2020 11:14:07 -0400 Subject: [PATCH 016/219] redmine: 4.1.0 -> 4.1.1 --- .../version-management/redmine/Gemfile | 4 +- .../version-management/redmine/Gemfile.lock | 121 +++---- .../version-management/redmine/default.nix | 6 +- .../version-management/redmine/gemset.nix | 308 ++++++++++++++---- 4 files changed, 312 insertions(+), 127 deletions(-) diff --git a/pkgs/applications/version-management/redmine/Gemfile b/pkgs/applications/version-management/redmine/Gemfile index b1c651695c79..beff147c374a 100644 --- a/pkgs/applications/version-management/redmine/Gemfile +++ b/pkgs/applications/version-management/redmine/Gemfile @@ -1,8 +1,10 @@ source 'https://rubygems.org' +ruby '>= 2.3.0', '< 2.7.0' if Bundler::VERSION >= '1.12.0' gem "bundler", ">= 1.5.0" -gem "rails", "5.2.4.1" +gem 'rails', '5.2.4.2' +gem 'sprockets', '~> 3.7.2' if RUBY_VERSION < '2.5' gem "rouge", "~> 3.12.0" gem "request_store", "~> 1.4.1" gem "mini_mime", "~> 1.0.1" diff --git a/pkgs/applications/version-management/redmine/Gemfile.lock b/pkgs/applications/version-management/redmine/Gemfile.lock index 66326b282358..60aed5e17922 100644 --- a/pkgs/applications/version-management/redmine/Gemfile.lock +++ b/pkgs/applications/version-management/redmine/Gemfile.lock @@ -1,19 +1,19 @@ GEM remote: https://rubygems.org/ specs: - actioncable (5.2.4.1) - actionpack (= 5.2.4.1) + actioncable (5.2.4.2) + actionpack (= 5.2.4.2) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailer (5.2.4.1) - actionpack (= 5.2.4.1) - actionview (= 5.2.4.1) - activejob (= 5.2.4.1) + actionmailer (5.2.4.2) + actionpack (= 5.2.4.2) + actionview (= 5.2.4.2) + activejob (= 5.2.4.2) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (5.2.4.1) - actionview (= 5.2.4.1) - activesupport (= 5.2.4.1) + actionpack (5.2.4.2) + actionview (= 5.2.4.2) + activesupport (= 5.2.4.2) rack (~> 2.0, >= 2.0.8) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) @@ -21,26 +21,26 @@ GEM actionpack-xml_parser (2.0.1) actionpack (>= 5.0) railties (>= 5.0) - actionview (5.2.4.1) - activesupport (= 5.2.4.1) + actionview (5.2.4.2) + activesupport (= 5.2.4.2) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.0.3) - activejob (5.2.4.1) - activesupport (= 5.2.4.1) + activejob (5.2.4.2) + activesupport (= 5.2.4.2) globalid (>= 0.3.6) - activemodel (5.2.4.1) - activesupport (= 5.2.4.1) - activerecord (5.2.4.1) - activemodel (= 5.2.4.1) - activesupport (= 5.2.4.1) + activemodel (5.2.4.2) + activesupport (= 5.2.4.2) + activerecord (5.2.4.2) + activemodel (= 5.2.4.2) + activesupport (= 5.2.4.2) arel (>= 9.0) - activestorage (5.2.4.1) - actionpack (= 5.2.4.1) - activerecord (= 5.2.4.1) + activestorage (5.2.4.2) + actionpack (= 5.2.4.2) + activerecord (= 5.2.4.2) marcel (~> 0.3.1) - activesupport (5.2.4.1) + activesupport (5.2.4.2) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 0.7, < 2) minitest (~> 5.1) @@ -59,8 +59,8 @@ GEM regexp_parser (~> 1.5) xpath (~> 3.2) childprocess (3.0.0) - concurrent-ruby (1.1.5) - crass (1.0.5) + concurrent-ruby (1.1.6) + crass (1.0.6) css_parser (1.7.1) addressable csv (3.1.2) @@ -73,58 +73,58 @@ GEM concurrent-ruby (~> 1.0) jaro_winkler (1.5.4) json (2.3.0) - loofah (2.4.0) + loofah (2.5.0) crass (~> 1.0.2) nokogiri (>= 1.5.9) mail (2.7.1) mini_mime (>= 0.1.1) marcel (0.3.3) mimemagic (~> 0.3.2) - method_source (0.9.2) - mimemagic (0.3.3) + method_source (1.0.0) + mimemagic (0.3.4) mini_magick (4.9.5) mini_mime (1.0.2) mini_portile2 (2.4.0) - minitest (5.13.0) - mocha (1.11.1) + minitest (5.14.0) + mocha (1.11.2) mysql2 (0.5.3) net-ldap (0.16.2) nio4r (2.5.2) - nokogiri (1.10.7) + nokogiri (1.10.9) mini_portile2 (~> 2.4.0) parallel (1.19.1) - parser (2.6.5.0) + parser (2.7.1.0) ast (~> 2.4.0) pg (1.1.4) - public_suffix (4.0.1) - puma (3.12.2) - rack (2.0.8) + public_suffix (4.0.4) + puma (3.12.4) + rack (2.2.2) rack-openid (1.4.2) rack (>= 1.1.0) ruby-openid (>= 2.1.8) rack-test (1.1.0) rack (>= 1.0, < 3) - rails (5.2.4.1) - actioncable (= 5.2.4.1) - actionmailer (= 5.2.4.1) - actionpack (= 5.2.4.1) - actionview (= 5.2.4.1) - activejob (= 5.2.4.1) - activemodel (= 5.2.4.1) - activerecord (= 5.2.4.1) - activestorage (= 5.2.4.1) - activesupport (= 5.2.4.1) + rails (5.2.4.2) + actioncable (= 5.2.4.2) + actionmailer (= 5.2.4.2) + actionpack (= 5.2.4.2) + actionview (= 5.2.4.2) + activejob (= 5.2.4.2) + activemodel (= 5.2.4.2) + activerecord (= 5.2.4.2) + activestorage (= 5.2.4.2) + activesupport (= 5.2.4.2) bundler (>= 1.3.0) - railties (= 5.2.4.1) + railties (= 5.2.4.2) sprockets-rails (>= 2.0.0) rails-dom-testing (2.0.3) activesupport (>= 4.2.0) nokogiri (>= 1.6) rails-html-sanitizer (1.3.0) loofah (~> 2.3) - railties (5.2.4.1) - actionpack (= 5.2.4.1) - activesupport (= 5.2.4.1) + railties (5.2.4.2) + actionpack (= 5.2.4.2) + activesupport (= 5.2.4.2) method_source rake (>= 0.8.7) thor (>= 0.19.0, < 2.0) @@ -135,15 +135,15 @@ GEM rbpdf-font (~> 1.19.0) rbpdf-font (1.19.1) redcarpet (3.5.0) - regexp_parser (1.6.0) + regexp_parser (1.7.0) request_store (1.4.1) rack (>= 1.4) - roadie (3.5.1) + roadie (4.0.0) css_parser (~> 1.4) nokogiri (~> 1.8) - roadie-rails (2.1.0) + roadie-rails (2.1.1) railties (>= 5.1, < 6.1) - roadie (~> 3.1) + roadie (>= 3.1, < 5.0) rouge (3.12.0) rubocop (0.76.0) jaro_winkler (~> 1.5.1) @@ -152,15 +152,15 @@ GEM rainbow (>= 2.2.2, < 4.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 1.4.0, < 1.7) - rubocop-performance (1.5.1) + rubocop-performance (1.5.2) rubocop (>= 0.71.0) rubocop-rails (2.3.2) rack (>= 1.1) rubocop (>= 0.72.0) ruby-openid (2.9.2) ruby-progressbar (1.10.1) - rubyzip (2.0.0) - selenium-webdriver (3.142.6) + rubyzip (2.3.0) + selenium-webdriver (3.142.7) childprocess (>= 0.5, < 4.0) rubyzip (>= 1.2.2) simplecov (0.17.1) @@ -177,15 +177,15 @@ GEM sprockets (>= 3.0.0) thor (1.0.1) thread_safe (0.3.6) - tzinfo (1.2.5) + tzinfo (1.2.7) thread_safe (~> 0.1) - unicode-display_width (1.6.0) + unicode-display_width (1.6.1) websocket-driver (0.7.1) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.4) xpath (3.2.0) nokogiri (~> 1.8) - yard (0.9.20) + yard (0.9.24) PLATFORMS ruby @@ -208,7 +208,7 @@ DEPENDENCIES pg (~> 1.1.4) puma (~> 3.7) rack-openid - rails (= 5.2.4.1) + rails (= 5.2.4.2) rails-dom-testing rbpdf (~> 1.20.0) redcarpet (~> 3.5.0) @@ -224,5 +224,8 @@ DEPENDENCIES tzinfo-data yard +RUBY VERSION + ruby 2.6.6p146 + BUNDLED WITH 2.1.4 diff --git a/pkgs/applications/version-management/redmine/default.nix b/pkgs/applications/version-management/redmine/default.nix index a133a9a6a2a9..200b594e2e3c 100644 --- a/pkgs/applications/version-management/redmine/default.nix +++ b/pkgs/applications/version-management/redmine/default.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl, bundlerEnv, ruby }: let - version = "4.1.0"; + version = "4.1.1"; rubyEnv = bundlerEnv { name = "redmine-env-${version}"; inherit ruby; gemdir = ./.; - groups = [ "ldap" "openid" ]; + groups = [ "development" "ldap" "markdown" "minimagick" "openid" "test" ]; }; in stdenv.mkDerivation rec { @@ -16,7 +16,7 @@ in src = fetchurl { url = "https://www.redmine.org/releases/${pname}-${version}.tar.gz"; - sha256 = "1fxc0xql54cfvj4g8v31vsv19jbij326qkgdz2h5xlp09r821wli"; + sha256 = "1nndy5hz8zvfglxf1f3bsb1pkrfwinfxzkdan1vjs3rkckkszyh5"; }; buildInputs = [ rubyEnv rubyEnv.wrappedRuby rubyEnv.bundler ]; diff --git a/pkgs/applications/version-management/redmine/gemset.nix b/pkgs/applications/version-management/redmine/gemset.nix index e69cbb0e1c23..9a4deb7e155a 100644 --- a/pkgs/applications/version-management/redmine/gemset.nix +++ b/pkgs/applications/version-management/redmine/gemset.nix @@ -1,33 +1,41 @@ { actioncable = { dependencies = ["actionpack" "nio4r" "websocket-driver"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1yz5mcjl4is99650vq6rkv539xccq8mp5zsbvzh43wqzfga1llwm"; + sha256 = "0q4by8d41n972j8cdcddrwsh7qphcki50xvgm1syrawyck6w1f5v"; type = "gem"; }; - version = "5.2.4.1"; + version = "5.2.4.2"; }; actionmailer = { dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1dbw3q3yyh7m7wgc4196hc3v86v123z0xz40llmic8iwx3d9vnda"; + sha256 = "0kg2nayy8wmxhfp52217h80yqr0mcg793xw3cjlfg9lkvdh0nb5z"; type = "gem"; }; - version = "5.2.4.1"; + version = "5.2.4.2"; }; actionpack = { dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0f5pm62y08j679k3vhcml8436f92kripd6j3v5dyvn760kwzz72z"; + sha256 = "1w1l9i6q9xns4yl41l582pyc5i1xi40yyyq802drm58gwylv3wax"; type = "gem"; }; - version = "5.2.4.1"; + version = "5.2.4.2"; }; actionpack-xml_parser = { dependencies = ["actionpack" "railties"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1rnm6jrw3mzcf2g3q498igmhsn0kfkxq79w0nm532iclx4g4djs0"; @@ -37,60 +45,74 @@ }; actionview = { dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0hnkyx268czfb6ljv6ipcnz9dbgsb1z9n1gcr6279z9wx9550zij"; + sha256 = "0fp3my6216lb9gp800s46y0404jwfl6xb3j9rvx4zf087497q8lp"; type = "gem"; }; - version = "5.2.4.1"; + version = "5.2.4.2"; }; activejob = { dependencies = ["activesupport" "globalid"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0k4j3fcfc8m4hxwhs8xnbxazra760j3amn5r2zm2d5r1a1nqfh91"; + sha256 = "1qsvb89rwqrp779mvpn67qbzidg2q6d1fa8kwybvpc93nzb9zpvi"; type = "gem"; }; - version = "5.2.4.1"; + version = "5.2.4.2"; }; activemodel = { dependencies = ["activesupport"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0sg1yyz710pxhq9z0jsbpbgn666y8iv4aj7pywglydipp4i0bpx1"; + sha256 = "0jcfdv00kmifj86d0z347nw55q1f8vwzr1aa9jrfnwz47ndi22di"; type = "gem"; }; - version = "5.2.4.1"; + version = "5.2.4.2"; }; activerecord = { dependencies = ["activemodel" "activesupport" "arel"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1p35d6pj1370mnlppqq9lhr7m1ck82xvv621wq6hy12v41qfdnrg"; + sha256 = "1yaqrh23c8krrjw6rvxv7pvnkpp46nk5aq9z2daby640si4xpmp5"; type = "gem"; }; - version = "5.2.4.1"; + version = "5.2.4.2"; }; activestorage = { dependencies = ["actionpack" "activerecord" "marcel"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0dd8k91b88b875mypwqific2jilgzj5bx1637cwmzi4c0cy1v17f"; + sha256 = "1d51zp17c9k4brivm8y46rszcz07s5rb75gmkm0dpzg3rz3v38s9"; type = "gem"; }; - version = "5.2.4.1"; + version = "5.2.4.2"; }; activesupport = { dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"]; + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0lmlnx79sv18xv1ddm4vq7z3mwdfa4468mq5186av0k8n1k471sp"; + sha256 = "0y1397g5xxinjyxjsdmp8c92yn0y3bd2hl4wbmmrpd08bggy6flc"; type = "gem"; }; - version = "5.2.4.1"; + version = "5.2.4.2"; }; addressable = { dependencies = ["public_suffix"]; + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy"; @@ -99,6 +121,8 @@ version = "2.7.0"; }; arel = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1jk7wlmkr61f6g36w9s2sn46nmdg6wn2jfssrhbhirv5x9n95nk0"; @@ -107,6 +131,8 @@ version = "9.0.0"; }; ast = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7"; @@ -115,6 +141,8 @@ version = "2.4.0"; }; builder = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr"; @@ -124,6 +152,8 @@ }; capybara = { dependencies = ["addressable" "mini_mime" "nokogiri" "rack" "rack-test" "regexp_parser" "xpath"]; + groups = ["test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1bq1y3gy98rqgw8z69b42isc2klb75fvlwvpi36vycf1yk0sfmmx"; @@ -132,6 +162,8 @@ version = "3.25.0"; }; childprocess = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1ic028k8xgm2dds9mqnvwwx3ibaz32j8455zxr9f4bcnviyahya5"; @@ -140,23 +172,29 @@ version = "3.0.0"; }; concurrent-ruby = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1x07r23s7836cpp5z9yrlbpljcxpax14yw4fy4bnp6crhr6x24an"; + sha256 = "094387x4yasb797mv07cs3g6f08y56virc2rjcpb1k79rzaj3nhl"; type = "gem"; }; - version = "1.1.5"; + version = "1.1.6"; }; crass = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "030sc98kjrb36rh7g21qsbdfxrj6knsjkx0mn3b7gig8zknwhp2f"; + sha256 = "0pfl5c0pyqaparxaqxi6s4gfl21bdldwiawrc0aknyvflli60lfw"; type = "gem"; }; - version = "1.0.5"; + version = "1.0.6"; }; css_parser = { dependencies = ["addressable"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "04c4dl8cm5rjr50k9qa6yl9r05fk9zcb1zxh0y0cdahxlsgcydfw"; @@ -165,6 +203,8 @@ version = "1.7.1"; }; csv = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "00szzw96bqz59r0kaab4p75qb0wq54iahmq37wpdg96bxc8y80f5"; @@ -173,6 +213,8 @@ version = "3.1.2"; }; docile = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0qrwiyagxzl8zlx3dafb0ay8l14ib7imb2rsmx70i5cp420v8gif"; @@ -181,6 +223,8 @@ version = "1.3.2"; }; erubi = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1nwzxnqhr31fn7nbqmffcysvxjdfl3bhxi0bld5qqhcnfc1xd13x"; @@ -190,6 +234,8 @@ }; globalid = { dependencies = ["activesupport"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1zkxndvck72bfw235bd9nl2ii0lvs5z88q14706cmn702ww2mxv1"; @@ -198,6 +244,8 @@ version = "0.4.2"; }; htmlentities = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1nkklqsn8ir8wizzlakncfv42i32wc0w9hxp00hvdlgjr7376nhj"; @@ -207,6 +255,8 @@ }; i18n = { dependencies = ["concurrent-ruby"]; + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1hfxnlyr618s25xpafw9mypa82qppjccbh292c4l3bj36az7f6wl"; @@ -215,6 +265,8 @@ version = "1.6.0"; }; jaro_winkler = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1y8l6k34svmdyqxya3iahpwbpvmn3fswhwsvrz0nk1wyb8yfihsh"; @@ -223,6 +275,8 @@ version = "1.5.4"; }; json = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0nrmw2r4nfxlfgprfgki3hjifgrcrs3l5zvm3ca3gb4743yr25mn"; @@ -232,15 +286,19 @@ }; loofah = { dependencies = ["crass" "nokogiri"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1g7ps9m3s14cajhxrfgbzahv9i3gy47s4hqrv3mpybpj5cyr0srn"; + sha256 = "0jk9fgn5ayzbqvzqm11gbkqvas77zdbpkvynlylyiwynclgrn040"; type = "gem"; }; - version = "2.4.0"; + version = "2.5.0"; }; mail = { dependencies = ["mini_mime"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "00wwz6ys0502dpk8xprwcqfwyf3hmnx6lgxaiq6vj43mkx43sapc"; @@ -250,6 +308,8 @@ }; marcel = { dependencies = ["mimemagic"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1nxbjmcyg8vlw6zwagf17l9y2mwkagmmkg95xybpn4bmf3rfnksx"; @@ -258,22 +318,28 @@ version = "0.3.3"; }; method_source = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1pviwzvdqd90gn6y7illcdd9adapw8fczml933p5vl739dkvl3lq"; + sha256 = "1pnyh44qycnf9mzi1j6fywd5fkskv3x7nmsqrrws0rjn5dd4ayfp"; type = "gem"; }; - version = "0.9.2"; + version = "1.0.0"; }; mimemagic = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "04cp5sfbh1qx82yqxn0q75c7hlcx8y1dr5g3kyzwm4mx6wi2gifw"; + sha256 = "0frrfvz52fh4v1sb2xr9pyxhrxm5f7jppqxagpmd7c5ific66l9p"; type = "gem"; }; - version = "0.3.3"; + version = "0.3.4"; }; mini_magick = { + groups = ["minimagick"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0qy09qrd5bwh8mkbj514n5vcw9ni73218h9s3zmvbpmdwrnzi8j4"; @@ -282,6 +348,8 @@ version = "4.9.5"; }; mini_mime = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1axm0rxyx3ss93wbmfkm78a6x03l8y4qy60rhkkiq0aza0vwq3ha"; @@ -290,6 +358,8 @@ version = "1.0.2"; }; mini_portile2 = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "15zplpfw3knqifj9bpf604rb3wc1vhq6363pd6lvhayng8wql5vy"; @@ -298,22 +368,36 @@ version = "2.4.0"; }; minitest = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0w16p7cvslh3hxd3cia8jg4pd85z7rz7xqb16vh42gj4rijn8rmi"; + sha256 = "0g73x65hmjph8dg1h3rkzfg7ys3ffxm35hj35grw75fixmq53qyz"; type = "gem"; }; - version = "5.13.0"; + version = "5.14.0"; }; mocha = { + groups = ["test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "06i2q5qjr9mvjgjc8w41pdf3qalw340y33wjvzc0rp4a1cbbb7pp"; + sha256 = "0hxmkm8qxd04vwj8mqnpyrf2dwy7g1k9zipdfhl4y71cw7ijm9n4"; type = "gem"; }; - version = "1.11.1"; + version = "1.11.2"; }; mysql2 = { + groups = ["default"]; + platforms = [{ + engine = "maglev"; + } { + engine = "mingw"; + } { + engine = "mingw"; + } { + engine = "ruby"; + }]; source = { remotes = ["https://rubygems.org"]; sha256 = "0d14pcy5m4hjig0zdxnl9in5f4izszc7v9zcczf2gyi5kiyxk8jw"; @@ -322,6 +406,8 @@ version = "0.5.3"; }; net-ldap = { + groups = ["ldap"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1vzfhivjfr9q65hkln7xig3qcba6fw9y4kb4384fpm7d7ww0b7xg"; @@ -330,6 +416,8 @@ version = "0.16.2"; }; nio4r = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0gnmvbryr521r135yz5bv8354m7xn6miiapfgpg1bnwsvxz8xj6c"; @@ -339,14 +427,18 @@ }; nokogiri = { dependencies = ["mini_portile2"]; + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0r0qpgf80h764k176yr63gqbs2z0xbsp8vlvs2a79d5r9vs83kln"; + sha256 = "12j76d0bp608932xkzmfi638c7aqah57l437q8494znzbj610qnm"; type = "gem"; }; - version = "1.10.7"; + version = "1.10.9"; }; parallel = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "12jijkap4akzdv11lm08dglsc8jmc87xcgq6947i1s3qb69f4zn2"; @@ -356,14 +448,26 @@ }; parser = { dependencies = ["ast"]; + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "09davv4ld6caqlczw64vhwf8hr41apys3cj8v2h96yxs4qg1m2iw"; + sha256 = "07awrcwm2xibglrh7qwpj24vwzn9p64m7bmfr9xbrlffaznr0ii7"; type = "gem"; }; - version = "2.6.5.0"; + version = "2.7.1.0"; }; pg = { + groups = ["default"]; + platforms = [{ + engine = "maglev"; + } { + engine = "mingw"; + } { + engine = "mingw"; + } { + engine = "ruby"; + }]; source = { remotes = ["https://rubygems.org"]; sha256 = "0fmnyxcyrvgdbgq7m09whgn9i8rwfybk0w8aii1nc4g5kqw0k2jy"; @@ -372,31 +476,39 @@ version = "1.1.4"; }; public_suffix = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0xnfv2j2bqgdpg2yq9i2rxby0w2sc9h5iyjkpaas2xknwrgmhdb0"; + sha256 = "1l1kqw75asziwmzrig8rywxswxz8l91sc3pvns02ffsqac1a3wiz"; type = "gem"; }; - version = "4.0.1"; + version = "4.0.4"; }; puma = { + groups = ["test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "07sb9xqc9bn5lvl9ia25w8x1fwzk52p5vgysnvjlc3hvn0r00ysj"; + sha256 = "0mg8yh478mh55pg7pv8z7xyvk35ra98hy61z9lwkfr8fzyyz57zs"; type = "gem"; }; - version = "3.12.2"; + version = "3.12.4"; }; rack = { + groups = ["default" "openid" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1id0jsslx1ipv0pbqjfn7mjbb2vx2xybk7qypq59a17163xp30gr"; + sha256 = "10mp9s48ssnw004aksq90gvhdvwczh8j6q82q2kqiqq92jd1zxbp"; type = "gem"; }; - version = "2.0.8"; + version = "2.2.2"; }; rack-openid = { dependencies = ["rack" "ruby-openid"]; + groups = ["openid"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0sg85yn981j3a0iri3ch4znzdwscvz29l7vrk3dafqw4fdg31llc"; @@ -406,6 +518,8 @@ }; rack-test = { dependencies = ["rack"]; + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0rh8h376mx71ci5yklnpqqn118z3bl67nnv5k801qaqn1zs62h8m"; @@ -415,15 +529,19 @@ }; rails = { dependencies = ["actioncable" "actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activestorage" "activesupport" "railties" "sprockets-rails"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1198azwbhlhq2n9xmpb19709d6smkanimip9cagvnlihagw80b20"; + sha256 = "1x8k6n4yziwf386prhvr9d9plc9fwv0j8spw2bnmkwhf54v2ias4"; type = "gem"; }; - version = "5.2.4.1"; + version = "5.2.4.2"; }; rails-dom-testing = { dependencies = ["activesupport" "nokogiri"]; + groups = ["test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1lfq2a7kp2x64dzzi5p4cjcbiv62vxh9lyqk2f0rqq3fkzrw8h5i"; @@ -433,6 +551,8 @@ }; rails-html-sanitizer = { dependencies = ["loofah"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1icpqmxbppl4ynzmn6dx7wdil5hhq6fz707m9ya6d86c7ys8sd4f"; @@ -442,14 +562,18 @@ }; railties = { dependencies = ["actionpack" "activesupport" "method_source" "rake" "thor"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1iqsqyyjscwnj2d3i0zl2k9apgsm7bb92l5h4wv1zbpdbb30wsqb"; + sha256 = "1p2rnd1xdqlk19k3m5gd058yzvwjj25k5hwn4km683b5dhylpd16"; type = "gem"; }; - version = "5.2.4.1"; + version = "5.2.4.2"; }; rainbow = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk"; @@ -458,6 +582,8 @@ version = "3.0.0"; }; rake = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0w6qza25bq1s825faaglkx1k6d59aiyjjk3yw3ip5sb463mhhai9"; @@ -467,6 +593,8 @@ }; rbpdf = { dependencies = ["htmlentities" "rbpdf-font"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0sdj8frakpdms820rwlil38h9bh3p24xmwnjrxsjc1p9irc3za71"; @@ -475,6 +603,8 @@ version = "1.20.1"; }; rbpdf-font = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0pxlr0l4vf785qpy55m439dyii63a26l0sd0yyhbwwcy9zm9hd1v"; @@ -483,6 +613,8 @@ version = "1.19.1"; }; redcarpet = { + groups = ["markdown"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0skcyx1h8b5ms0rp2zm3ql6g322b8c1adnkwkqyv7z3kypb4bm7k"; @@ -491,15 +623,19 @@ version = "3.5.0"; }; regexp_parser = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1l44ml30jvqpdi3707x1n1dinq7fx9887pv3q2ywyfmi4kja7yf2"; + sha256 = "0l2vcj9qffj5b3v9jsyi4k994bdj3rjz7l9ql8x04lndqxfrrrv2"; type = "gem"; }; - version = "1.6.0"; + version = "1.7.0"; }; request_store = { dependencies = ["rack"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1963330z03fk382fi8y231ygcbnh86m91dqlp5rh1mwy9ihzzl6d"; @@ -509,23 +645,29 @@ }; roadie = { dependencies = ["css_parser" "nokogiri"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1zihd316bkbnrinz5s1s7pg7s0cadhhj6qs7wmc713j0g6ai1k9r"; + sha256 = "01kld3drqfiih5x8c13cvr6dpvdl7jml0v9bcw4fsy322lax3kn0"; type = "gem"; }; - version = "3.5.1"; + version = "4.0.0"; }; roadie-rails = { dependencies = ["railties" "roadie"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0hdkmnxrmw31dn9jq43xiypz2v6rbvg4x2yd2hgl2xbl3lm1ln7i"; + sha256 = "1fmn7kkbpgipjsx65rw7hqa3bwinlqykx5qf1x28ya9ag8v2q0ph"; type = "gem"; }; - version = "2.1.0"; + version = "2.1.1"; }; rouge = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "08fpnxbhqv5sqpnfjasl1ysxafssyq4q1yhcqamqqzmb9czj1czw"; @@ -535,6 +677,8 @@ }; rubocop = { dependencies = ["jaro_winkler" "parallel" "parser" "rainbow" "ruby-progressbar" "unicode-display_width"]; + groups = ["test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "07x51ixlx76y194xsszh5lbkaqakz44ykbrjxg3qaggbs18790q0"; @@ -544,15 +688,19 @@ }; rubocop-performance = { dependencies = ["rubocop"]; + groups = ["test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1kn6rb0ma32gjp5qdvrbbb9ckh66rm6xpfrw8h3kr7svirsww2h8"; + sha256 = "1fk9nd3b24avgsqp726hy2pl1iyfjrh6jni97wkky6kqy0lq6zq2"; type = "gem"; }; - version = "1.5.1"; + version = "1.5.2"; }; rubocop-rails = { dependencies = ["rack" "rubocop"]; + groups = ["test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1q7ffsq1cjm4m949nh935kjzv4zf1pacnrl00siwh8flhcn3mmjf"; @@ -561,6 +709,8 @@ version = "2.3.2"; }; ruby-openid = { + groups = ["openid"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "190p1m0bxd9xkfk1j6cpcv3x5c367g36nsglg4m1fcwqdd13k3kz"; @@ -569,6 +719,8 @@ version = "2.9.2"; }; ruby-progressbar = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1k77i0d4wsn23ggdd2msrcwfy0i376cglfqypkk2q77r2l3408zf"; @@ -577,24 +729,30 @@ version = "1.10.1"; }; rubyzip = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1gz0ri0pa2xr7b6bf66yjc2wfvk51f4gi6yk7bklwl1nr65zc4gz"; + sha256 = "0590m2pr9i209pp5z4mx0nb1961ishdiqb28995hw1nln1d1b5ji"; type = "gem"; }; - version = "2.0.0"; + version = "2.3.0"; }; selenium-webdriver = { dependencies = ["childprocess" "rubyzip"]; + groups = ["test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "11abil34dr8p1kw7hlaqd6kr430v4srmhzf72zzqvhcimlfvm4yb"; + sha256 = "0adcvp86dinaqq3nhf8p3m0rl2g6q0a4h52k0i7kdnsg1qz9k86y"; type = "gem"; }; - version = "3.142.6"; + version = "3.142.7"; }; simplecov = { dependencies = ["docile" "json" "simplecov-html"]; + groups = ["test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1135k46nik05sdab30yxb8264lqiz01c8v000g16cl9pjc4mxrdw"; @@ -603,6 +761,8 @@ version = "0.17.1"; }; simplecov-html = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1lihraa4rgxk8wbfl77fy9sf0ypk31iivly8vl3w04srd7i0clzn"; @@ -612,6 +772,8 @@ }; sprockets = { dependencies = ["concurrent-ruby" "rack"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0jm37zpvvm1arxjwrd6am0wrdbfhrhc5y0l4p2i3p11z04bsvgap"; @@ -621,6 +783,8 @@ }; sprockets-rails = { dependencies = ["actionpack" "activesupport" "sprockets"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0ab42pm8p5zxpv3sfraq45b9lj39cz9mrpdirm30vywzrwwkm5p1"; @@ -629,6 +793,8 @@ version = "3.2.1"; }; thor = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1xbhkmyhlxwzshaqa7swy2bx6vd64mm0wrr8g3jywvxy7hg0cwkm"; @@ -637,6 +803,8 @@ version = "1.0.1"; }; thread_safe = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy"; @@ -646,23 +814,29 @@ }; tzinfo = { dependencies = ["thread_safe"]; + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1fjx9j327xpkkdlxwmkl3a8wqj7i4l4jwlrv3z13mg95z9wl253z"; + sha256 = "1i3jh086w1kbdj3k5l60lc3nwbanmzdf8yjj3mlrx9b2gjjxhi9r"; type = "gem"; }; - version = "1.2.5"; + version = "1.2.7"; }; unicode-display_width = { + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "08kfiniak1pvg3gn5k6snpigzvhvhyg7slmm0s2qx5zkj62c1z2w"; + sha256 = "1pppclzq4qb26g321553nm9xqca3zgllvpwb2kqxsdadwj51s09x"; type = "gem"; }; - version = "1.6.0"; + version = "1.6.1"; }; websocket-driver = { dependencies = ["websocket-extensions"]; + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "1bxamwqldmy98hxs5pqby3andws14hl36ch78g0s81gaz9b91nj2"; @@ -671,6 +845,8 @@ version = "0.7.1"; }; websocket-extensions = { + groups = ["default"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "00i624ng1nvkz1yckj3f8yxxp6hi7xaqf40qh9q3hj2n1l9i8g6m"; @@ -680,6 +856,8 @@ }; xpath = { dependencies = ["nokogiri"]; + groups = ["default" "test"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; sha256 = "0bh8lk9hvlpn7vmi6h4hkcwjzvs2y0cmkk3yjjdr8fxvj6fsgzbd"; @@ -688,11 +866,13 @@ version = "3.2.0"; }; yard = { + groups = ["development"]; + platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0rxqwry3h2hjz069f0kfr140wgx1khgljnqf112dk5x9rm4l0xny"; + sha256 = "1g0bw2qcl48fxawrdf68l229508z53mrqisavji2lkxzv4w4j2pp"; type = "gem"; }; - version = "0.9.20"; + version = "0.9.24"; }; } \ No newline at end of file From a83bafb27e9ca095fb9c1aa70e8bbd00d4aada2c Mon Sep 17 00:00:00 2001 From: Jason Felice Date: Fri, 10 Apr 2020 11:46:48 -0400 Subject: [PATCH 017/219] plan9port: 2019-02-25 -> 2020-01-08 --- pkgs/tools/system/plan9port/default.nix | 7 ++-- pkgs/tools/system/plan9port/tmpdir.patch | 41 ------------------------ 2 files changed, 3 insertions(+), 45 deletions(-) delete mode 100644 pkgs/tools/system/plan9port/tmpdir.patch diff --git a/pkgs/tools/system/plan9port/default.nix b/pkgs/tools/system/plan9port/default.nix index 9a4a22385584..1541e988c1ef 100644 --- a/pkgs/tools/system/plan9port/default.nix +++ b/pkgs/tools/system/plan9port/default.nix @@ -11,17 +11,16 @@ stdenv.mkDerivation { pname = "plan9port"; - version = "2019-02-25"; + version = "2020-01-08"; src = fetchFromGitHub { owner = "9fans"; repo = "plan9port"; - rev = "047fd921744f39a82a86d9370e03f7af511e6e84"; - sha256 = "1lp17948q7vpl8rc2bf5a45bc8jqyj0s3zffmks9r25ai42vgb43"; + rev = "cc3d97d52a72d7eaceb5b636bcdf81c3e19f7a2e"; + sha256 = "0gb55kj0gzx1kdhiwcrbr7xcgz1im21dyxgxhfhh6d0q9rw0c17g"; }; patches = [ - ./tmpdir.patch ./darwin-sw_vers.patch ./darwin-cfframework.patch ]; diff --git a/pkgs/tools/system/plan9port/tmpdir.patch b/pkgs/tools/system/plan9port/tmpdir.patch deleted file mode 100644 index e8200a177a27..000000000000 --- a/pkgs/tools/system/plan9port/tmpdir.patch +++ /dev/null @@ -1,41 +0,0 @@ -From c762625549ff367b54bcd8281d1ce248a69b4401 Mon Sep 17 00:00:00 2001 -From: Jason Felice -Date: Mon, 1 Jul 2019 15:01:21 -0400 -Subject: [PATCH] Use $TMPDIR if available - -NixOS sandboxed builds (at least on Mac) don't have access to /tmp, -and this should be better POSIX. ---- - bin/9c | 2 +- - bin/9l | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/bin/9c b/bin/9c -index 3ffb716c..88c47887 100755 ---- a/bin/9c -+++ b/bin/9c -@@ -133,7 +133,7 @@ case "$tag" in - esac - - # N.B. Must use temp file to avoid pipe; pipe loses status. --xtmp=/tmp/9c.$$.$USER.out -+xtmp=${TMPDIR-/tmp}/9c.$$.$USER.out - $cc -DPLAN9PORT -I$PLAN9/include $cflags "$@" 2>$xtmp - status=$? - quiet $xtmp -diff --git a/bin/9l b/bin/9l -index 6195815f..717a540a 100755 ---- a/bin/9l -+++ b/bin/9l -@@ -346,7 +346,7 @@ then - echo $ld -L$PLAN9/lib "$@" $libsl $extralibs $frameworks - fi - --xtmp=/tmp/9l.$$.$USER.out -+xtmp="${TMPDIR-/tmp}/9l.$$.$USER.out" - xxout() { - sed 's/.*: In function `[^:]*: *//' $xtmp | egrep . | - egrep -v 'is (often|almost always) misused|is dangerous, better use|text-based stub' --- -2.21.0 - From 3fcbc7545c5f73c1c2bd58e6fd52604e4e78af04 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sat, 11 Apr 2020 15:46:52 +0000 Subject: [PATCH 018/219] verilator: 4.030 -> 4.032 --- pkgs/applications/science/electronics/verilator/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/science/electronics/verilator/default.nix b/pkgs/applications/science/electronics/verilator/default.nix index 85f6ac42126d..dd6c5a09851e 100644 --- a/pkgs/applications/science/electronics/verilator/default.nix +++ b/pkgs/applications/science/electronics/verilator/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "verilator"; - version = "4.030"; + version = "4.032"; src = fetchurl { url = "https://www.veripool.org/ftp/${pname}-${version}.tgz"; - sha256 = "07ldkf7xkr31n1dmx82bmzam8bvc1vsp32k76vd7yzn7r853qyky"; + sha256 = "1l3rhgw7pk59dz7dyhcl0iygn6c9rv9bv131rfzg66asxfwbfq1s"; }; enableParallelBuilding = true; From a4b7440f414b24f37b37c65b99485e7106655fe5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Fri, 10 Apr 2020 16:55:23 -0300 Subject: [PATCH 019/219] qtemu: init at 2.1 --- .../virtualization/qtemu/default.nix | 45 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 47 insertions(+) create mode 100644 pkgs/applications/virtualization/qtemu/default.nix diff --git a/pkgs/applications/virtualization/qtemu/default.nix b/pkgs/applications/virtualization/qtemu/default.nix new file mode 100644 index 000000000000..29f0004be830 --- /dev/null +++ b/pkgs/applications/virtualization/qtemu/default.nix @@ -0,0 +1,45 @@ +{ stdenv, mkDerivation, fetchFromGitLab, pkgconfig, qmake, qtbase, qemu, makeWrapper }: + +mkDerivation rec { + pname = "qtemu"; + version = "2.1"; + + src = fetchFromGitLab { + owner = "qtemu"; + repo = "gui"; + rev = version; + sha256 = "1555178mkfw0gwmw8bsxmg4339j2ifp0yb4b2f39nxh9hwshg07j"; + }; + + nativeBuildInputs = [ + qmake + pkgconfig + ]; + + buildInputs = [ + qtbase + qemu + ]; + + installPhase = '' + runHook preInstall + + # upstream lacks an install method + install -D -t $out/share/applications qtemu.desktop + install -D -t $out/share/pixmaps qtemu.png + install -D -t $out/bin qtemu + + # make sure that the qemu-* executables are found + wrapProgram $out/bin/qtemu --prefix PATH : ${stdenv.lib.makeBinPath [ qemu ]} + + runHook postInstall + ''; + + meta = with stdenv.lib; { + description = "Qt-based front-end for QEMU emulator"; + homepage = "https://qtemu.org"; + license = licenses.gpl2; + platforms = with platforms; linux; + maintainers = with maintainers; [ romildo ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c277e9ae98da..958e902cabde 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21421,6 +21421,8 @@ in qtchan = libsForQt5.callPackage ../applications/networking/browsers/qtchan { }; + qtemu = libsForQt5.callPackage ../applications/virtualization/qtemu { }; + qtox = libsForQt5.callPackage ../applications/networking/instant-messengers/qtox { }; qtpass = libsForQt5.callPackage ../applications/misc/qtpass { }; From 21f191cddb25206937a0a6d323f70c477f18ba70 Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Mon, 13 Apr 2020 12:32:37 -0400 Subject: [PATCH 020/219] python3Packages.apptools: fix build --- pkgs/development/python-modules/apptools/default.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/apptools/default.nix b/pkgs/development/python-modules/apptools/default.nix index 9e06abd9a71e..47144fc07aa0 100644 --- a/pkgs/development/python-modules/apptools/default.nix +++ b/pkgs/development/python-modules/apptools/default.nix @@ -1,4 +1,4 @@ -{ lib, fetchPypi, buildPythonPackage +{ lib, fetchPypi, buildPythonPackage, fetchpatch , configobj, six, traitsui , nose, tables, pandas }: @@ -12,6 +12,13 @@ buildPythonPackage rec { sha256 = "10h52ibhr2aw076pivqxiajr9rpcr1mancg6xlpxzckcm3if02i6"; }; + # PyTables issue; should be merged in next post-4.5.0 release (#117) + patches = [ (fetchpatch { + url = "https://github.com/enthought/apptools/commit/3734289d1a0ebd8513fa67f75288add31ed0113c.patch"; + sha256 = "001012q1ib5cbib3nq1alh9ckzj588bfrywr8brkd1f6y1pgvngk"; + }) + ]; + propagatedBuildInputs = [ configobj six traitsui ]; checkInputs = [ From 5ac182265e8dac3490b397a485f5b4deaeb69e16 Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Mon, 13 Apr 2020 12:33:51 -0400 Subject: [PATCH 021/219] python3Packages.pyface: remove optional wxPython dep --- pkgs/development/python-modules/pyface/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyface/default.nix b/pkgs/development/python-modules/pyface/default.nix index db8b05e8d683..db0ee541e09c 100644 --- a/pkgs/development/python-modules/pyface/default.nix +++ b/pkgs/development/python-modules/pyface/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchPypi, buildPythonPackage -, setuptools, six, traits, wxPython +, setuptools, six, traits }: buildPythonPackage rec { @@ -11,7 +11,7 @@ buildPythonPackage rec { sha256 = "1g2g3za64rfffbivlihbf5njrqbv63ln62rv9d8fi1gcrgaw6akw"; }; - propagatedBuildInputs = [ setuptools six traits wxPython ]; + propagatedBuildInputs = [ setuptools six traits ]; doCheck = false; # Needs X server From 2d8f346c7c4fc7ab55b209743517d24e814e3997 Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Mon, 13 Apr 2020 13:48:53 -0400 Subject: [PATCH 022/219] python3Packages.envisage: update and disable for Python 2 - next release will drop support for Python 2 --- .../python-modules/envisage/default.nix | 29 ++++++++++++++----- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/pkgs/development/python-modules/envisage/default.nix b/pkgs/development/python-modules/envisage/default.nix index ba3e6a0c636d..397e573a252f 100644 --- a/pkgs/development/python-modules/envisage/default.nix +++ b/pkgs/development/python-modules/envisage/default.nix @@ -1,15 +1,18 @@ -{ stdenv, fetchPypi, buildPythonPackage +{ lib, fetchPypi, fetchpatch, isPy27 +, buildPythonPackage , traits, apptools -, ipykernel +, python, ipykernel, ipython }: buildPythonPackage rec { pname = "envisage"; - version = "4.7.2"; + version = "4.9.2"; + + disabled = isPy27; src = fetchPypi { inherit pname version; - sha256 = "0jb5nw0w9x97jij0hd3d7kfzcj58r1cqmplmdy56bj11dyc4wyc9"; + sha256 = "1srjmkhnz84nz5jd72vdsnc4fn7dd9jr8nyf3hzk6yx1dsn815gd"; }; propagatedBuildInputs = [ traits apptools ]; @@ -18,16 +21,26 @@ buildPythonPackage rec { export HOME=$PWD/HOME ''; + # fix a test failure; should be merged in next release + patches = [ (fetchpatch { + url = "https://github.com/enthought/envisage/pull/248/commits/7b6d2dd615d5cb7455b200eb8f37e030bbf4df9e.patch"; + sha256 = "0a3dmbpxwsn1bkjcjv9v7b751rcmppj6hc9wcgiayg4l9r2nrvyh"; + }) ]; + checkInputs = [ - ipykernel + ipykernel ipython ]; - doCheck = true; + checkPhase = '' + runHook preCheck + ${python.interpreter} -m unittest + runHook postCheck + ''; - meta = with stdenv.lib; { + meta = with lib; { description = "Framework for building applications whose functionalities can be extended by adding 'plug-ins'"; homepage = "https://github.com/enthought/envisage"; - maintainers = with stdenv.lib.maintainers; [ knedlsepp ]; + maintainers = with lib.maintainers; [ knedlsepp ]; license = licenses.bsdOriginal; }; } From 51fcafe7797c9140da3c66ed8f7e76661ea60303 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Mon, 13 Apr 2020 19:20:08 -0400 Subject: [PATCH 023/219] README.md: 20.03 release --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index edcd8dc0a00c..da38b227b56e 100644 --- a/README.md +++ b/README.md @@ -45,9 +45,9 @@ Nixpkgs and NixOS are built and tested by our continuous integration system, [Hydra](https://hydra.nixos.org/). * [Continuous package builds for unstable/master](https://hydra.nixos.org/jobset/nixos/trunk-combined) -* [Continuous package builds for the NixOS 19.09 release](https://hydra.nixos.org/jobset/nixos/release-19.09) +* [Continuous package builds for the NixOS 20.03 release](https://hydra.nixos.org/jobset/nixos/release-20.03) * [Tests for unstable/master](https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents) -* [Tests for the NixOS 19.09 release](https://hydra.nixos.org/job/nixos/release-19.09/tested#tabs-constituents) +* [Tests for the NixOS 20.03 release](https://hydra.nixos.org/job/nixos/release-20.03/tested#tabs-constituents) Artifacts successfully built with Hydra are published to cache at https://cache.nixos.org/. When successful build and test criteria are From a045b050dcc321bc21b0475b9dfc44cea1a1a350 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Tue, 14 Apr 2020 09:55:55 -0400 Subject: [PATCH 024/219] CONTRIBUTING.md: 20.03 --- .github/CONTRIBUTING.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index a50a8a507de3..ae4f68dddc19 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -53,9 +53,9 @@ For package version upgrades and such a one-line commit message is usually suffi To [backport a change into a release branch](https://nixos.org/nixpkgs/manual/#submitting-changes-stable-release-branches): 1. Take note of the commit in which the change was introduced into `master`. -2. Check out the target _release branch_, e.g. `release-19.09`. Do not use a _channel branch_ like `nixos-19.09` or `nixpkgs-19.09`. +2. Check out the target _release branch_, e.g. `release-20.03`. Do not use a _channel branch_ like `nixos-20.03` or `nixpkgs-20.03`. 3. Use `git cherry-pick -x `. -4. Open your backport PR. Make sure to select the release branch (e.g. `release-19.09`) as the target branch of the PR, and link to the PR in which the original change was made to `master`. +4. Open your backport PR. Make sure to select the release branch (e.g. `release-20.03`) as the target branch of the PR, and link to the PR in which the original change was made to `master`. ## Reviewing contributions From 9b83c440f67d1e77387a99577a845318756a23ff Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Mon, 13 Apr 2020 13:50:19 -0400 Subject: [PATCH 025/219] python3Packages.mayavi: build for Python 3 instead of Python 2 - switch from wxPython to Qt5 --- .../python-modules/mayavi/default.nix | 32 ++++++++++++------- pkgs/top-level/python-packages.nix | 5 ++- 2 files changed, 24 insertions(+), 13 deletions(-) diff --git a/pkgs/development/python-modules/mayavi/default.nix b/pkgs/development/python-modules/mayavi/default.nix index ffdf97475837..2fd536609076 100644 --- a/pkgs/development/python-modules/mayavi/default.nix +++ b/pkgs/development/python-modules/mayavi/default.nix @@ -1,37 +1,45 @@ -{ stdenv, fetchPypi, buildPythonPackage -, wxPython, pygments, numpy, vtk, traitsui, envisage, apptools -, nose, mock -, isPy3k +{ lib, buildPythonPackage, isPy27, fetchPypi, wrapQtAppsHook +, pyface, pygments, numpy, vtk, traitsui, envisage, apptools, pyqt5 }: buildPythonPackage rec { pname = "mayavi"; version = "4.7.1"; + disabled = isPy27; + src = fetchPypi { inherit pname version; extension = "tar.bz2"; sha256 = "095p7mds6kqqrp7xqv24iygr3mw85rm7x41wb5y4yc3gi1pznldy"; }; - # Discovery of 'vtk' in setuptools is not working properly, due to a missing - # .egg-info in the vtk package. It does however import and run just fine. postPatch = '' + # Discovery of 'vtk' in setuptools is not working properly, due to a missing + # .egg-info in the vtk package. It does however import and run just fine. substituteInPlace mayavi/__init__.py --replace "'vtk'" "" + + # building the docs fails with the usual Qt xcb error, so skip: + substituteInPlace setup.py \ + --replace "build.build.run(self)" "build.build.run(self); return" ''; - propagatedBuildInputs = [ wxPython pygments numpy vtk traitsui envisage apptools ]; + nativeBuildInputs = [ wrapQtAppsHook ]; - checkInputs = [ nose mock ]; - - disabled = isPy3k; # TODO: This would need pyqt5 instead of wxPython + propagatedBuildInputs = [ + pyface pygments numpy vtk traitsui envisage apptools pyqt5 + ]; doCheck = false; # Needs X server - meta = with stdenv.lib; { + preFixup = '' + makeWrapperArgs+=("''${qtWrapperArgs[@]}") + ''; + + meta = with lib; { description = "3D visualization of scientific data in Python"; homepage = "https://github.com/enthought/mayavi"; - maintainers = with stdenv.lib.maintainers; [ knedlsepp ]; + maintainers = with maintainers; [ knedlsepp ]; license = licenses.bsdOriginal; }; } diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0f16f8c3afd0..cb147217fab8 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4370,7 +4370,10 @@ in { maya = callPackage ../development/python-modules/maya { }; - mayavi = callPackage ../development/python-modules/mayavi { }; + mayavi = pkgs.libsForQt5.callPackage ../development/python-modules/mayavi { + inherit buildPythonPackage isPy27 fetchPypi; + inherit (self) pyface pygments numpy vtk traitsui envisage apptools pyqt5; + }; mccabe = callPackage ../development/python-modules/mccabe { }; From b70a3dc5151c2c1be25f77be20f66c086491367a Mon Sep 17 00:00:00 2001 From: Hugo Reeves Date: Wed, 15 Apr 2020 08:33:29 +1200 Subject: [PATCH 026/219] joplin-desktop: 1.0.179 -> 1.0.200 Builds successfully on NixOS --- pkgs/applications/misc/joplin-desktop/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/misc/joplin-desktop/default.nix b/pkgs/applications/misc/joplin-desktop/default.nix index 8c066ddf0b82..11dd176b7c1f 100644 --- a/pkgs/applications/misc/joplin-desktop/default.nix +++ b/pkgs/applications/misc/joplin-desktop/default.nix @@ -2,7 +2,7 @@ let pname = "joplin-desktop"; - version = "1.0.179"; + version = "1.0.200"; desktopItem = makeDesktopItem { name = "Joplin"; exec = "joplin-desktop"; @@ -13,7 +13,7 @@ in appimageTools.wrapType2 rec { name = "${pname}-${version}"; src = fetchurl { url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}.AppImage"; - sha256 = "0v7d5wzwiznl755pl6jfg33g6jxr1cbm9j13jpbmfi497hj8w82k"; + sha256 = "14gwv8i6dprvl96mifadq0zj77a82rww8xd5bmzm8ql6sidi2216"; }; From fbd29dcbe7ec7dc0e77082fc1c649189c1f3b2e6 Mon Sep 17 00:00:00 2001 From: James Ottaway Date: Wed, 15 Apr 2020 14:09:12 +1000 Subject: [PATCH 027/219] git: 2.25.1 -> 2.26.1 This version addresses CVE-2020-5260. See https://lore.kernel.org/lkml/xmqqy2qy7xn8.fsf@gitster.c.googlers.com/ --- .../version-management/git-and-tools/git/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix index 6169c2d0296b..ef6ebbe6813b 100644 --- a/pkgs/applications/version-management/git-and-tools/git/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git/default.nix @@ -21,7 +21,7 @@ assert sendEmailSupport -> perlSupport; assert svnSupport -> perlSupport; let - version = "2.25.1"; + version = "2.26.1"; svn = subversionClient.override { perlBindings = perlSupport; }; gitwebPerlLibs = with perlPackages; [ CGI HTMLParser CGIFast FCGI FCGIProcManager HTMLTagCloud ]; @@ -33,7 +33,7 @@ stdenv.mkDerivation { src = fetchurl { url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz"; - sha256 = "09lzwa183nblr6l8ib35g2xrjf9wm9yhk3szfvyzkwivdv69c9r2"; + sha256 = "0s03ix9j1h0yychkh1l1cgpr1l9lwzn3rprl08rk8ii5ix02i0l8"; }; outputs = [ "out" ]; @@ -189,7 +189,7 @@ stdenv.mkDerivation { ln -s $out/libexec/git-core/git-http-backend $out/bin/git-http-backend '' + stdenv.lib.optionalString perlSupport '' # wrap perl commands - makeWrapper "$out/share/git/contrib/credential/netrc/git-credential-netrc" $out/bin/git-credential-netrc \ + makeWrapper "$out/share/git/contrib/credential/netrc/git-credential-netrc.perl" $out/bin/git-credential-netrc \ --set PERL5LIB "$out/${perlPackages.perl.libPrefix}:${perlPackages.makePerlPath perlLibs}" wrapProgram $out/libexec/git-core/git-cvsimport \ --set GITPERLLIB "$out/${perlPackages.perl.libPrefix}:${perlPackages.makePerlPath perlLibs}" From d811d6a0dcca49d24c12befc70b2e86e848b9106 Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Sun, 5 Apr 2020 14:20:42 -0300 Subject: [PATCH 028/219] [WIP] {help wanted} calibre: 4.12.0 -> 4.13.0 --- pkgs/applications/misc/calibre/default.nix | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix index afd602f60884..81fcc64de72e 100644 --- a/pkgs/applications/misc/calibre/default.nix +++ b/pkgs/applications/misc/calibre/default.nix @@ -16,7 +16,7 @@ , hyphen , unrarSupport ? false , chmlib -, python2Packages +, python3Packages , libusb1 , libmtp , xdg_utils @@ -25,16 +25,15 @@ }: let - pypkgs = python2Packages; - + pypkgs = python3Packages; in mkDerivation rec { pname = "calibre"; - version = "4.12.0"; + version = "4.13.0"; src = fetchurl { url = "https://download.calibre-ebook.com/${version}/${pname}-${version}.tar.xz"; - sha256 = "144vl5p0adcywcqaarrriq5zd8q5i934yfjg9himiq1vdp9vy4fi"; + sha256 = "1xp1fvpdizk6g74diam4nd59s6fhcvp086y1brm6r9wy9zm7sn7r"; }; patches = [ @@ -171,8 +170,7 @@ mkDerivation rec { description = "Comprehensive e-book software"; homepage = "https://calibre-ebook.com"; license = with licenses; if unrarSupport then unfreeRedistributable else gpl3; - maintainers = with maintainers; [ domenkozar pSub AndersonTorres ]; + maintainers = with maintainers; [ domenkozar pSub ]; platforms = platforms.linux; - inherit version; }; } From 35eac7e51e1f2cff4ed30b478d09d5e136339c24 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Thu, 16 Apr 2020 04:20:00 -0500 Subject: [PATCH 029/219] postgresqlPackages.timescaledb: 1.6.1 -> 1.7.0 Changelog: https://github.com/timescale/timescaledb/releases/tag/1.7.0 --- pkgs/servers/sql/postgresql/ext/timescaledb.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/sql/postgresql/ext/timescaledb.nix b/pkgs/servers/sql/postgresql/ext/timescaledb.nix index 606eaeb65ac7..cda9244e192f 100644 --- a/pkgs/servers/sql/postgresql/ext/timescaledb.nix +++ b/pkgs/servers/sql/postgresql/ext/timescaledb.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { pname = "timescaledb"; - version = "1.6.1"; + version = "1.7.0"; nativeBuildInputs = [ cmake ]; buildInputs = [ postgresql openssl ]; @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { owner = "timescale"; repo = "timescaledb"; rev = "refs/tags/${version}"; - sha256 = "0k03aqpc1faqlpw46wazv0dy0xja57cv1sr1zwmizw3j3p3s0zdq"; + sha256 = "0n234ard9sldpbdqvbq2i48xyiyj8ljirsbspsax11f8yzy9ziac"; }; cmakeFlags = [ "-DSEND_TELEMETRY_DEFAULT=OFF" "-DREGRESS_CHECKS=OFF" ]; From 7d84c7cd36f31c8548144ee613515b087da9ad4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 12:07:01 -0300 Subject: [PATCH 030/219] common-updater: change default development version check to false --- pkgs/common-updater/generic-updater.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/common-updater/generic-updater.nix b/pkgs/common-updater/generic-updater.nix index 8e8153d9a332..e54363a1dda5 100644 --- a/pkgs/common-updater/generic-updater.nix +++ b/pkgs/common-updater/generic-updater.nix @@ -5,8 +5,8 @@ , attrPath ? pname , versionLister , rev-prefix ? "" -, odd-unstable ? true -, patchlevel-unstable ? true +, odd-unstable ? false +, patchlevel-unstable ? false }: let From cef0895d24ac8e2c44706342293e076bb0bad750 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 12:58:47 -0300 Subject: [PATCH 031/219] xfce.xfce4-netload-plugin: odd minor version number is not unstable --- .../desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix index 09e686a9536c..9a9f02143721 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix @@ -5,6 +5,7 @@ mkXfceDerivation { pname = "xfce4-netload-plugin"; version = "1.3.1"; rev-prefix = "version-"; + odd-unstable = false; sha256 = "0nm8advafw4jpc9p1qszyfqa56194sz51z216rdh4c6ilcrrpy1h"; buildInputs = [ gtk3 libxfce4ui libxfce4util xfce4-panel xfconf ]; From 4cc7c2e55a231145201edc6473f7919e85473bf3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Thu, 16 Apr 2020 12:55:43 +0100 Subject: [PATCH 032/219] tmpfiles: load user-defined entries first systemd-tmpfiles will load all files in lexicographic order and ignores rules for the same path in later files with a warning Since we apply the default rules provided by systemd, we should load user-defines rules first so users have a chance to override defaults. --- nixos/modules/system/boot/systemd.nix | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix index 7f207e6c7ef4..518d875841bd 100644 --- a/nixos/modules/system/boot/systemd.nix +++ b/nixos/modules/system/boot/systemd.nix @@ -894,6 +894,13 @@ in "sysctl.d/50-coredump.conf".source = "${systemd}/example/sysctl.d/50-coredump.conf"; "sysctl.d/50-default.conf".source = "${systemd}/example/sysctl.d/50-default.conf"; + "tmpfiles.d/00-nixos.conf".text = '' + # This file is created automatically and should not be modified. + # Please change the option ‘systemd.tmpfiles.rules’ instead. + + ${concatStringsSep "\n" cfg.tmpfiles.rules} + ''; + "tmpfiles.d/home.conf".source = "${systemd}/example/tmpfiles.d/home.conf"; "tmpfiles.d/journal-nocow.conf".source = "${systemd}/example/tmpfiles.d/journal-nocow.conf"; "tmpfiles.d/portables.conf".source = "${systemd}/example/tmpfiles.d/portables.conf"; @@ -906,13 +913,6 @@ in "tmpfiles.d/var.conf".source = "${systemd}/example/tmpfiles.d/var.conf"; "tmpfiles.d/x11.conf".source = "${systemd}/example/tmpfiles.d/x11.conf"; - "tmpfiles.d/nixos.conf".text = '' - # This file is created automatically and should not be modified. - # Please change the option ‘systemd.tmpfiles.rules’ instead. - - ${concatStringsSep "\n" cfg.tmpfiles.rules} - ''; - "systemd/system-generators" = { source = hooks "generators" cfg.generators; }; "systemd/system-shutdown" = { source = hooks "shutdown" cfg.shutdown; }; }); From ff4419ac4a82a5472c3f0bf700111c39f2109f0d Mon Sep 17 00:00:00 2001 From: Jason Felice Date: Thu, 16 Apr 2020 13:08:50 -0400 Subject: [PATCH 033/219] plan9port: Do not attempt to build on aarch64-linux --- pkgs/tools/system/plan9port/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/system/plan9port/default.nix b/pkgs/tools/system/plan9port/default.nix index 1541e988c1ef..e5e1d41ab568 100644 --- a/pkgs/tools/system/plan9port/default.nix +++ b/pkgs/tools/system/plan9port/default.nix @@ -89,7 +89,7 @@ stdenv.mkDerivation { license = licenses.lpl-102; maintainers = with maintainers; [ AndersonTorres bbarker ftrvxmtrx kovirobi ]; - platforms = platforms.unix; + platforms = remove "aarch64-linux" platforms.unix; }; } # TODO: investigate the mouse chording support patch From 9301b2c95d34aca5d355494ca1d0ce3085663bf5 Mon Sep 17 00:00:00 2001 From: Hugo Reeves Date: Fri, 17 Apr 2020 10:52:22 +1200 Subject: [PATCH 034/219] joplin-desktop: add maintainer hugoreeves, change homepage --- pkgs/applications/misc/joplin-desktop/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/misc/joplin-desktop/default.nix b/pkgs/applications/misc/joplin-desktop/default.nix index 11dd176b7c1f..5787836487b4 100644 --- a/pkgs/applications/misc/joplin-desktop/default.nix +++ b/pkgs/applications/misc/joplin-desktop/default.nix @@ -40,9 +40,9 @@ in appimageTools.wrapType2 rec { applications directly or from your own text editor. The notes are in Markdown format. ''; - homepage = "https://joplin.cozic.net/"; + homepage = "https://joplinapp.org"; license = licenses.mit; - maintainers = with maintainers; [ rafaelgg raquelgb ]; + maintainers = with maintainers; [ hugoreeves rafaelgg raquelgb ]; platforms = [ "x86_64-linux" ]; }; } From 6dc7443d1b41df8365174ffeff3bf94a44f683ca Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Fri, 17 Apr 2020 10:04:38 +1000 Subject: [PATCH 035/219] skopeo: cleanup --- pkgs/development/tools/skopeo/default.nix | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/pkgs/development/tools/skopeo/default.nix b/pkgs/development/tools/skopeo/default.nix index 4425640828cc..c18a767928e7 100644 --- a/pkgs/development/tools/skopeo/default.nix +++ b/pkgs/development/tools/skopeo/default.nix @@ -1,5 +1,4 @@ { stdenv -, lib , buildGoPackage , fetchFromGitHub , runCommand @@ -12,8 +11,6 @@ , go-md2man }: -with stdenv.lib; - let version = "0.2.0"; @@ -28,6 +25,8 @@ let goPackagePath = "github.com/containers/skopeo"; + vendorPath = "${goPackagePath}/vendor/github.com/containers/image/v5"; + in buildGoPackage { pname = "skopeo"; @@ -36,20 +35,16 @@ buildGoPackage { outputs = [ "bin" "man" "out" ]; - excludedPackages = "integration"; + excludedPackages = [ "integration" ]; - nativeBuildInputs = [ pkg-config (lib.getBin go-md2man) ]; - buildInputs = [ gpgme ] ++ lib.optionals stdenv.isLinux [ libgpgerror lvm2 btrfs-progs libselinux ]; + nativeBuildInputs = [ pkg-config go-md2man ]; + buildInputs = [ gpgme ] + ++ stdenv.lib.optionals stdenv.isLinux [ libgpgerror lvm2 btrfs-progs libselinux ]; buildFlagsArray = '' -ldflags= - -X github.com/containers/skopeo/vendor/github.com/containers/image/v5/signature.systemDefaultPolicyPath=${defaultPolicyFile} - -X github.com/containers/skopeo/vendor/github.com/containers/image/v5/internal/tmpdir.unixTempDirForBigFiles=/tmp - ''; - - preBuild = '' - export CGO_CFLAGS="$CFLAGS" - export CGO_LDFLAGS="$LDFLAGS" + -X ${vendorPath}/signature.systemDefaultPolicyPath=${defaultPolicyFile} + -X ${vendorPath}/internal/tmpdir.unixTempDirForBigFiles=/tmp ''; postBuild = '' From fa4907859a845e001c4bd19181761647a4a59afc Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Fri, 17 Apr 2020 04:20:00 -0500 Subject: [PATCH 036/219] bazelisk: 1.3.0 -> 1.4.0 Changelog; https://github.com/bazelbuild/bazelisk/releases/tag/v1.4.0 --- pkgs/development/tools/bazelisk/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/bazelisk/default.nix b/pkgs/development/tools/bazelisk/default.nix index 5780cf4382a7..80ec4c4f448d 100644 --- a/pkgs/development/tools/bazelisk/default.nix +++ b/pkgs/development/tools/bazelisk/default.nix @@ -2,17 +2,19 @@ buildGoModule rec { pname = "bazelisk"; - version = "1.3.0"; + version = "1.4.0"; src = fetchFromGitHub { owner = "bazelbuild"; repo = pname; rev = "v${version}"; - sha256 = "15h4mbsfjwby4wq57rdj4dzsf595qjfgi3v5zw62yycn3m2w922p"; + sha256 = "14zp0bi0p1rfbx1pxi5y28ndxwbqbvfx0pvy3jh1mnx5qsii1gcq"; }; modSha256 = "1w8k659ifapcxbbim0nf7wd7w10bhlagc33q08izh84gcgsh0yyz"; + buildFlagsArray = [ "-ldflags=-s -w -X main.BazeliskVersion=${version}" ]; + meta = with stdenv.lib; { description = "A user-friendly launcher for Bazel"; longDescription = '' From acb4710214f075fc5277443d9cf982fed213629b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 17 Apr 2020 13:48:09 +0200 Subject: [PATCH 037/219] alsaTools: 1.1.7 -> 1.2.2 Fixes build regression (after alsa update, I assume). Despite the version number change, the diff is trivial: https://git.alsa-project.org/?p=alsa-tools.git;a=log;h=refs/tags/v1.2.2 --- pkgs/os-specific/linux/alsa-tools/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/alsa-tools/default.nix b/pkgs/os-specific/linux/alsa-tools/default.nix index 151549aa67bd..2fef5e07c63c 100644 --- a/pkgs/os-specific/linux/alsa-tools/default.nix +++ b/pkgs/os-specific/linux/alsa-tools/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { pname = "alsa-tools"; - version = "1.1.7"; + version = "1.2.2"; src = fetchurl { url = "mirror://alsa/tools/${pname}-${version}.tar.bz2"; - sha256 = "1xjfghr9s0j6n91kgs95cc4r6qrjsgc4yj2w0nir3xpnm0l36950"; + sha256 = "0jbkjmq038zapj66a7nkppdf644v2mwj581xbmh6k4i8w6mcglxz"; }; nativeBuildInputs = [ pkgconfig ]; From 10dd3f3de0b3868853e7077ff5ef6c13efc0fcc1 Mon Sep 17 00:00:00 2001 From: Emily Date: Wed, 8 Apr 2020 21:02:25 +0100 Subject: [PATCH 038/219] graphene-hardened-malloc: enable on aarch64-linux --- pkgs/development/libraries/graphene-hardened-malloc/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/graphene-hardened-malloc/default.nix b/pkgs/development/libraries/graphene-hardened-malloc/default.nix index 0d2b02489efb..c60b09144929 100644 --- a/pkgs/development/libraries/graphene-hardened-malloc/default.nix +++ b/pkgs/development/libraries/graphene-hardened-malloc/default.nix @@ -52,6 +52,6 @@ stdenv.mkDerivation rec { ''; license = licenses.mit; maintainers = with maintainers; [ ris ]; - platforms = [ "x86_64-linux" ]; + platforms = [ "x86_64-linux" "aarch64-linux" ]; }; } From 3d01e802bd56c78965b784a3fbb4db0d424e2c64 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 5 Apr 2020 04:18:36 +0100 Subject: [PATCH 039/219] linux: explicitly enable SYSVIPC The linux-hardened patch set removes this default, probably because of its original focus on Android kernel hardening. --- pkgs/os-specific/linux/kernel/common-config.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 2c8b8de65b31..1ed48baa924c 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -607,6 +607,8 @@ let MODULE_COMPRESS_XZ = yes; KERNEL_XZ = yes; + SYSVIPC = yes; # System-V IPC + UNIX = yes; # Unix domain sockets. MD = yes; # Device mapper (RAID, LVM, etc.) From 0d4f35efd4f905b322cd232e9740ce18f04270a0 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 22:47:13 +0100 Subject: [PATCH 040/219] linux_*_hardened: use linux-hardened patch set This is an updated version of the former upstream, https://github.com/AndroidHardeningArchive/linux-hardened, and provides a minimal set of additional hardening patches on top of upstream. The patch already incorporates many of our hardened profile defaults, and releases are timely (Linux 5.5.15 and 5.6.2 were released on 2020-04-02; linux-hardened patches for them came out on 2020-04-03 and 2020-04-04 respectively). --- pkgs/os-specific/linux/kernel/anthraxx.asc | 325 ++++++++++++++++++ .../linux/kernel/hardened-patches.json | 27 ++ pkgs/os-specific/linux/kernel/patches.nix | 17 +- .../linux/kernel/update-hardened.py | 200 +++++++++++ pkgs/os-specific/linux/kernel/update.sh | 3 + pkgs/top-level/aliases.nix | 5 + pkgs/top-level/all-packages.nix | 8 +- 7 files changed, 580 insertions(+), 5 deletions(-) create mode 100644 pkgs/os-specific/linux/kernel/anthraxx.asc create mode 100644 pkgs/os-specific/linux/kernel/hardened-patches.json create mode 100755 pkgs/os-specific/linux/kernel/update-hardened.py diff --git a/pkgs/os-specific/linux/kernel/anthraxx.asc b/pkgs/os-specific/linux/kernel/anthraxx.asc new file mode 100644 index 000000000000..101ccfbf0f2b --- /dev/null +++ b/pkgs/os-specific/linux/kernel/anthraxx.asc @@ -0,0 +1,325 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v2 + +mQINBE64OEUBEADPS1v+zoCdKA6zyfUtVIaBoIwMhCibqurXi30tVoC9LgM6W1ve +HwPFukWq7DAS0mZUPE3mSV63JFLaTy0bY/6GO1D4wLdWZx4ppH7XKNCvKCbsi70k +UozFykNVf+83WEskuF1oYzXlF3aB5suz2IWJl7ey1EXgIpehwQaTJUA5JIWYFp9A +566LRNJefYMzUR33xc4dRKj6Etg0xdLVq7/vZoo8HpLCBGNWiP0AKqFWEwTg0xQL +7nsJA5tfJJdwAJvrzjpFsvb63PKG6waAtdHhON4q7E2Udak9fz2tRjxA5l9l2zXk +aqsysUzkxPhNjwMENoQ04KZg4aT+ZhhBzTowSWLp3KV2uaZ66kdPUO3s+/1bPp5/ +N/IlykaUwyL773iYOZ5dOY/9hIuX/zssihcrGEMW6yIyZR5uKhzYdaM9ExTXP637 +UccgNS9/pskPGPx/xK23NDCfeHzL9YHS5KokA2wb/b9hqpwvLaeblbMl2pt79F1R +ac+rZlrRyX3NvlTQP4hqM9Ei2YBAU7QFDJEjH8pVIceL7grxi1Ju1iD5QiSK+je5 +Jj5EAikfwSeAttSzsqNvaXJHfABrv5mkkVt1z3icP3HIHTYnG+uj+t8kvW+o9/1i +pD6e6LUh4w5v1aY9kaK/M3+eBH59yNYI99crPUKUBVfW4gv4DBUJAQTWRQARAQAB +tDVMZXZlbnRlIFBvbHlhayAoYW50aHJheHgpIDxsZXZlbnRlQGxldmVudGVwb2x5 +YWsubmV0PokCQQQTAQIAKwIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4ACGQEF +AlSXU9QFCQfATw8ACgkQ/BtUfI2BcsjPbxAAs+UR/bJz/HeYTpPy+HnKwDJgI9GP +AZlNvp+QSIhOTtKCYkQ/Iu+5scY5J0Qyv0pcJW5Rxjx+l7KGovw84jzVznnYsJoy +UQ5H3Ev9T2xW1nrZT3abJ7j6ZIck+Q+WFHu5Plsq6doSXOXmJNoehvT3BVolvc6w +S1+CAoyA5Wm1yfocZgVOvWPWQaa1T4XA7OwxFWrvNWEZwAzTSjkGHkwmji+DxdBd +RPam9+qm/rcN1IJTu6xJPr38a9LydWonsUpTR2Qn7Bo4EJp8yHJLaiLEMV/Nmgrr +1orBYw/OzDzhbdMl+2zzwEBLUMPABdgnPM6ZCZ5PWyWnCU4jsBGyVd0IC5xEu3Eg +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 +a6MNZO/+vKN4UTlgjpjxZon+/yK8bsmT/VNie5hzqZim6tfztl3rpJ9jPUeLgr5x +oGePYV02inapzNHdWFHk0L9zR/3KKfJ3IRJwUXp00Eya28hEepIvdxgLYcN1UqVn +VuFuMY8zYSl/VXtPxySCLENJHxvdtClMZXZlbnRlIFBvbHlhayA8bGV2ZW50ZUBs +ZXZlbnRlcG9seWFrLmRlPokCPgQTAQIAKAIbAwYLCQgHAwIGFQgCCQoLBBYCAwEC +HgECF4AFAlSXU9oFCQfATw8ACgkQ/BtUfI2BcsiPxw//X2xUctIrd1O7UOk7LHBX +/xI7xXoWQcA7l/1XMuZhM8yC8yIoAgvFrWBP1a29I0P3/yigkQXs+eTDTdvb0QP2 +q72q7Azt852v5u8+dHzoOXDpbo+4lfX+0OBDWimwJuChD8LQH7b7jO0oqWIV0AzM +vegFJVp3cDbyqw08lBz3xZ79A9JtBeewf6PLpXKjEVS8bEAZjZKjsjAY+5ShtJAf +PsD8r353dmkaHgC5Aji74ijZeY3PUCvGVVCGeN9isLnRpTEn7qUvN2DfHJU4w6aw +sXu7m7zidISo6dQLUzo54dHKWPGFy6INNkzXPOgrlbYnjt7v0Ou21/R6HrhdmsSw +lt7GALJcgAUxrcT/ljB3SZhSB0BdH0DXPcUziEdfhgMhhrXYpMjwH2XFBD1MLusW +GaVDbpPrSoEnmPVePcDUonDHePcuLjfOl13mOER1Kf6WFapOCa+4HCLakfKcPnGY +eyfD7Dbz3/046MmfQ8/Iyf8ipFXN6tI2WkRKj8uq9IFYrX3yoCBxZJN837DM3Grq +h48/T3pYU1f9LiekxbsgXmcHoGNdXX5+EsuO+QILZPttlG5QLuqFdJHei77uvW+B +4u8mgzi1Zhh0hRLm4K6UaJ/fBJ87BZSHShPKI9PI073U1O/CcYXnb8cdPLu3UgSQ +FM/bxT70TSYKI01Dt4KXRfWIRgQQEQIABgUCTrg/KAAKCRC+dA9BPyK7GT9FAJ47 +X5+0dQaOFkfy3WnMgX3AmIXJYQCfR4XL47rZ9a66jWaD0IbcXMK4oE2JAj4EEwEC +ACgFAk64PJ4CGwMFCQIchwAGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEPwb +VHyNgXLI2U8QAJGKPv1gWLn7P1KeHVsKkfRf+zgdsoY4mF3bUjX/03z1h1OKp+S7 +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 +kekzzVjVTZxOgZE= +=yRuG +-----END PGP PUBLIC KEY BLOCK----- diff --git a/pkgs/os-specific/linux/kernel/hardened-patches.json b/pkgs/os-specific/linux/kernel/hardened-patches.json new file mode 100644 index 000000000000..24c44dd1ed1f --- /dev/null +++ b/pkgs/os-specific/linux/kernel/hardened-patches.json @@ -0,0 +1,27 @@ +{ + "4.14.176": { + "sha256": "0pr3m2j63mc746fcbzg1hlwv85im9f87qkl6r4033gwnpa9brcgk", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.176.a/linux-hardened-4.14.176.a.patch", + "version_suffix": "a" + }, + "4.19.116": { + "sha256": "1f54g0xw708kxha07nsb979h5vwxjrkbwa5h04zny2kq702x1h13", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.115.a/linux-hardened-4.19.115.a.patch", + "version_suffix": "NixOS-a" + }, + "5.4.33": { + "sha256": "154iz7i9l0hihjrmfk6rjh7hhqwyhsdjr2c74m3dhadrlm5hwy89", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.32.a/linux-hardened-5.4.32.a.patch", + "version_suffix": "NixOS-a" + }, + "5.5.17": { + "sha256": "1lms090kkk4vlvfssqsm7r3j88hlf8smrnpcgq24v9rq9pbr0fyw", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.5.17.a/linux-hardened-5.5.17.a.patch", + "version_suffix": "a" + }, + "5.6.4": { + "sha256": "05wkzh7927n71x4cl69mclc44grqpnx6i65hli470q1rg1qrk26n", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.6.4.a/linux-hardened-5.6.4.a.patch", + "version_suffix": "a" + } +} diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix index 2b718551cc78..69b0197d4e68 100644 --- a/pkgs/os-specific/linux/kernel/patches.nix +++ b/pkgs/os-specific/linux/kernel/patches.nix @@ -1,4 +1,4 @@ -{ fetchpatch }: +{ lib, fetchpatch, fetchurl }: { bridge_stp_helper = @@ -38,6 +38,21 @@ patch = ./tag-hardened.patch; }; + hardened = let + mkPatch = kernelVersion: patch: let + fullVersion = "${kernelVersion}.${patch.version_suffix}"; + name = "linux-hardened-${fullVersion}"; + in { + inherit name; + patch = fetchurl { + name = "${name}.patch"; + inherit (patch) url sha256; + meta.maintainers = with lib.maintainers; [ emily ]; + }; + }; + patches = builtins.fromJSON (builtins.readFile ./hardened-patches.json); + in lib.mapAttrs mkPatch patches; + # https://bugzilla.kernel.org/show_bug.cgi?id=197591#c6 iwlwifi_mvm_support_version_7_scan_req_umac_fw_command = rec { name = "iwlwifi_mvm_support_version_7_scan_req_umac_fw_command"; diff --git a/pkgs/os-specific/linux/kernel/update-hardened.py b/pkgs/os-specific/linux/kernel/update-hardened.py new file mode 100755 index 000000000000..089e991d06bc --- /dev/null +++ b/pkgs/os-specific/linux/kernel/update-hardened.py @@ -0,0 +1,200 @@ +#! /usr/bin/env nix-shell +#! nix-shell -i python -p "python3.withPackages (ps: [ps.PyGithub])" git gnupg + +# This is automatically called by ./update.sh. + +import re +import json +import sys +import os.path +from glob import glob +import subprocess +from tempfile import TemporaryDirectory + +from github import Github + +HERE = os.path.dirname(os.path.realpath(__file__)) +HARDENED_GITHUB_REPO = 'anthraxx/linux-hardened' +HARDENED_TRUSTED_KEY = os.path.join(HERE, 'anthraxx.asc') +HARDENED_PATCHES_PATH = os.path.join(HERE, 'hardened-patches.json') +MIN_KERNEL = (4, 14) + +HARDENED_VERSION_RE = re.compile(r''' + (?P [\d.]+) \. + (?P [a-z]+) +''', re.VERBOSE) + +def parse_version(version): + match = HARDENED_VERSION_RE.fullmatch(version) + if match: + return match.groups() + +def run(*args, **kwargs): + try: + return subprocess.run( + args, **kwargs, + check=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, + ) + except subprocess.CalledProcessError as err: + print( + f'error: `{err.cmd}` failed unexpectedly\n' + f'status code: {err.returncode}\n' + f'stdout:\n{err.stdout.decode("utf-8").strip()}\n' + f'stderr:\n{err.stderr.decode("utf-8").strip()}', + file=sys.stderr, + ) + sys.exit(1) + +def nix_prefetch_url(url): + output = run('nix-prefetch-url', '--print-path', url).stdout + return output.decode('utf-8').strip().split('\n') + +def verify_openpgp_signature(*, name, trusted_key, sig_path, data_path): + with TemporaryDirectory(suffix='.nixpkgs-gnupg-home') as gnupg_home: + run('gpg', '--homedir', gnupg_home, '--import', trusted_key) + keyring = os.path.join(gnupg_home, 'pubring.kbx') + try: + subprocess.run( + ('gpgv', '--keyring', keyring, sig_path, data_path), + check=True, stderr=subprocess.PIPE, + ) + return True + except subprocess.CalledProcessError as err: + print( + f'error: signature for {name} failed to verify!', + file=sys.stderr, + ) + print(err.stderr.decode('utf-8'), file=sys.stderr, end='') + return False + +def fetch_patch(*, name, release): + def find_asset(filename): + try: + return next( + asset.browser_download_url + for asset in release.get_assets() + if asset.name == filename + ) + except StopIteration: + raise KeyError(filename) + + try: + patch_url = find_asset(f'{name}.patch') + sig_url = find_asset(f'{name}.patch.sig') + except KeyError: + print(f'error: {name}.patch{{,sig}} not present', file=sys.stderr) + return None + + sha256, patch_path = nix_prefetch_url(patch_url) + _, sig_path = nix_prefetch_url(sig_url) + sig_ok = verify_openpgp_signature( + name=name, + trusted_key=HARDENED_TRUSTED_KEY, + sig_path=sig_path, + data_path=patch_path, + ) + if not sig_ok: + return None + + return { + 'url': patch_url, + 'sha256': sha256, + } + +def commit_patches(*, kernel_version, message): + with open(HARDENED_PATCHES_PATH + '.new', 'w') as new_patches_file: + json.dump(patches, new_patches_file, indent=4, sort_keys=True) + new_patches_file.write('\n') + os.rename(HARDENED_PATCHES_PATH + '.new', HARDENED_PATCHES_PATH) + message = f'linux/hardened-patches/{kernel_version}: {message}' + print(message) + if os.environ.get('COMMIT'): + run( + 'git', '-C', HERE, 'commit', f'--message={message}', + 'hardened-patches.json', + ) + +# Load the existing patches. +with open(HARDENED_PATCHES_PATH) as patches_file: + patches = json.load(patches_file) + +NIX_VERSION_RE = re.compile(r''' + \s* version \s* = + \s* " (?P [^"]*) " + \s* ; \s* \n +''', re.VERBOSE) + +# Get the set of currently packaged kernel versions. +kernel_versions = set() +for filename in os.listdir(HERE): + filename_match = re.fullmatch(r'linux-(\d+)\.(\d+)\.nix', filename) + if filename_match: + if tuple(int(v) for v in filename_match.groups()) < MIN_KERNEL: + continue + with open(os.path.join(HERE, filename)) as nix_file: + for nix_line in nix_file: + match = NIX_VERSION_RE.fullmatch(nix_line) + if match: + kernel_versions.add(match.group('version')) + +# Remove patches for old kernel versions. +for kernel_version in patches.keys() - kernel_versions: + del patches[kernel_version] + commit_patches(kernel_version=kernel_version, message='remove') + +g = Github(os.environ.get('GITHUB_TOKEN')) +repo = g.get_repo(HARDENED_GITHUB_REPO) +releases = repo.get_releases() + +found_kernel_versions = set() +failures = False + +for release in releases: + remaining_kernel_versions = kernel_versions - found_kernel_versions + + if not remaining_kernel_versions: + break + + version = release.tag_name + name = f'linux-hardened-{version}' + version_info = parse_version(version) + if not version_info: + continue + kernel_version, version_suffix = version_info + + if kernel_version in remaining_kernel_versions: + found_kernel_versions.add(kernel_version) + try: + old_version_suffix = patches[kernel_version]['version_suffix'] + old_version = f'{kernel_version}.{old_version_suffix}' + update = old_version_suffix < version_suffix + except KeyError: + update = True + old_version = None + + if update: + patch = fetch_patch(name=name, release=release) + if patch is None: + failures = True + else: + patch['version_suffix'] = version_suffix + patches[kernel_version] = patch + if old_version: + message = f'{old_version} -> {version}' + else: + message = f'init at {version}' + commit_patches(kernel_version=kernel_version, message=message) + +missing_kernel_versions = kernel_versions - patches.keys() + +if missing_kernel_versions: + print( + f'warning: no patches for kernel versions ' + + ', '.join(missing_kernel_versions) + + '\nwarning: consider manually backporting older patches (bump ' + 'JSON key, set version_suffix to "NixOS-a")', + file=sys.stderr, + ) + +if failures: + sys.exit(1) diff --git a/pkgs/os-specific/linux/kernel/update.sh b/pkgs/os-specific/linux/kernel/update.sh index c7fcc07ea0a8..c483661b6f5d 100755 --- a/pkgs/os-specific/linux/kernel/update.sh +++ b/pkgs/os-specific/linux/kernel/update.sh @@ -60,3 +60,6 @@ done # Update linux-libre COMMIT=1 $NIXPKGS/pkgs/os-specific/linux/kernel/update-libre.sh + +# Update linux-hardened +COMMIT=1 $NIXPKGS/pkgs/os-specific/linux/kernel/update-hardened.py diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 5ba9b723edd6..b3158b1e9c62 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -249,6 +249,11 @@ mapAliases ({ links = links2; # added 2016-01-31 linux_rpi0 = linux_rpi1; linuxPackages_rpi0 = linuxPackages_rpi1; + + # added 2020-04-04 + linuxPackages_testing_hardened = throw "linuxPackages_testing_hardened has been removed, please use linuxPackages_latest_hardened"; + linux_testing_hardened = throw "linux_testing_hardened has been removed, please use linux_latest_hardened"; + loadcaffe = throw "loadcaffe has been removed, as the upstream project has been abandoned"; # added 2020-03-28 lttngTools = lttng-tools; # added 2014-07-31 lttngUst = lttng-ust; # added 2014-07-31 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3cb27cf590e6..63eb7e00d60c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16978,7 +16978,10 @@ in inherit stdenv; inherit (kernel) version; }; - kernelPatches = kernel.kernelPatches ++ [ kernelPatches.tag_hardened ]; + kernelPatches = kernel.kernelPatches ++ [ + kernelPatches.tag_hardened + kernelPatches.hardened.${kernel.version} + ]; modDirVersionArg = kernel.modDirVersion + "-hardened"; }); @@ -16988,9 +16991,6 @@ in linuxPackages_latest_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor pkgs.linux_latest); linux_latest_hardened = linuxPackages_latest_hardened.kernel; - linuxPackages_testing_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor pkgs.linux_testing); - linux_testing_hardened = linuxPackages_testing_hardened.kernel; - linuxPackages_xen_dom0_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor (pkgs.linux.override { features.xen_dom0=true; })); linuxPackages_latest_xen_dom0_hardened = recurseIntoAttrs (hardenedLinuxPackagesFor (pkgs.linux_latest.override { features.xen_dom0=true; })); From 7d5352df311dec624fed63d6988f9ac999547769 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 5 Apr 2020 05:24:02 +0100 Subject: [PATCH 041/219] linux_*_hardened: don't set X86_X32 As far as I can tell, this has never defaulted to on upstream, and our common kernel configuration doesn't turn it on, so the attack surface reduction here is somewhat homeopathic. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 3010d87a178a..7e6f514e19f5 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -19,8 +19,6 @@ assert (versionAtLeast version "4.9"); optionalAttrs (stdenv.hostPlatform.platform.kernelArch == "x86_64") { DEFAULT_MMAP_MIN_ADDR = freeform "65536"; # Prevent allocation of first 64K of memory - # Reduce attack surface by disabling X32 - X86_X32 = no; # Note: this config depends on EXPERT y and so will not take effect, hence # it is left "optional" for now. MODIFY_LDT_SYSCALL = option no; From 3d4c8ae901585b3ad9de8a68df6c3ebaa4bde4df Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 5 Apr 2020 05:28:38 +0100 Subject: [PATCH 042/219] linux_*_hardened: don't set VMAP_STACK This has been on by default upstream for as long as it's been an option. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 7e6f514e19f5..302170f2f5c3 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -22,7 +22,6 @@ optionalAttrs (stdenv.hostPlatform.platform.kernelArch == "x86_64") { # Note: this config depends on EXPERT y and so will not take effect, hence # it is left "optional" for now. MODIFY_LDT_SYSCALL = option no; - VMAP_STACK = yes; # Catch kernel stack overflows # Randomize position of kernel and memory. RANDOMIZE_BASE = yes; From 8efe83c22e8c7a33847255bec30c4a9d5be8abe9 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 22:52:42 +0100 Subject: [PATCH 043/219] linux_*_hardened: don't set DEFAULT_MMAP_MIN_ADDR Upstreamed in anthraxx/linux-hardened@f1fe0a64dd532551b048d97b35473c25809f7a0f. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 302170f2f5c3..154365a5be53 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -17,8 +17,6 @@ with (stdenv.lib.kernel.whenHelpers version); assert (versionAtLeast version "4.9"); optionalAttrs (stdenv.hostPlatform.platform.kernelArch == "x86_64") { - DEFAULT_MMAP_MIN_ADDR = freeform "65536"; # Prevent allocation of first 64K of memory - # Note: this config depends on EXPERT y and so will not take effect, hence # it is left "optional" for now. MODIFY_LDT_SYSCALL = option no; From 8c68055432d501d604e906dfca242eed60c48e35 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 22:55:15 +0100 Subject: [PATCH 044/219] linux_*_hardened: don't set MODIFY_LDT_SYSCALL Upstreamed in anthraxx/linux-hardened@05644876fa5dc3a67a8ea4b396e2214a2f8e8411. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 154365a5be53..75cfd68ef0d3 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -17,10 +17,6 @@ with (stdenv.lib.kernel.whenHelpers version); assert (versionAtLeast version "4.9"); optionalAttrs (stdenv.hostPlatform.platform.kernelArch == "x86_64") { - # Note: this config depends on EXPERT y and so will not take effect, hence - # it is left "optional" for now. - MODIFY_LDT_SYSCALL = option no; - # Randomize position of kernel and memory. RANDOMIZE_BASE = yes; RANDOMIZE_MEMORY = yes; From 130f6812be4a3ea5ea7ed5403f1741bf8ffe1e19 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 22:57:15 +0100 Subject: [PATCH 045/219] linux_*_hardened: don't set RANDOMIZE_{BASE,MEMORY} These are on by default for x86 in upstream linux-5.6.2, and turned on for arm64 by anthraxx/linux-hardened@90f9670bc3696f564ac2e874a2b80046b90ea49f. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 75cfd68ef0d3..50bc120ff0fd 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -17,10 +17,6 @@ with (stdenv.lib.kernel.whenHelpers version); assert (versionAtLeast version "4.9"); optionalAttrs (stdenv.hostPlatform.platform.kernelArch == "x86_64") { - # Randomize position of kernel and memory. - RANDOMIZE_BASE = yes; - RANDOMIZE_MEMORY = yes; - # Disable legacy virtual syscalls by default (modern glibc use vDSO instead). # # Note that the vanilla default is to *emulate* the legacy vsyscall mechanism, From db6b3275086f2d27d5d419af7f6025cf1fc70d65 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 22:58:45 +0100 Subject: [PATCH 046/219] linux_*_hardened: don't set LEGACY_VSYSCALL_NONE Upstreamed in anthraxx/linux-hardened@d300b0fdad706daab3a36a8d23b35ebe03c3fc87. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 50bc120ff0fd..589dc50892ac 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -16,14 +16,7 @@ with (stdenv.lib.kernel.whenHelpers version); assert (versionAtLeast version "4.9"); -optionalAttrs (stdenv.hostPlatform.platform.kernelArch == "x86_64") { - # Disable legacy virtual syscalls by default (modern glibc use vDSO instead). - # - # Note that the vanilla default is to *emulate* the legacy vsyscall mechanism, - # which is supposed to be safer than the native variant (wrt. ret2libc), so - # disabling it mainly helps reduce surface. - LEGACY_VSYSCALL_NONE = yes; -} // { +{ # Report BUG() conditions and kill the offending process. BUG = yes; From 33b94e5a44cbd80af7438353b7cfd9935830a519 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:00:52 +0100 Subject: [PATCH 047/219] linux_*_hardened: don't set BUG_ON_DATA_CORRUPTION Upstreamed in anthraxx/linux-hardened@3fcd15014c8e99828de0f946611d715411dc611d. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 589dc50892ac..68a152917470 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -20,8 +20,6 @@ assert (versionAtLeast version "4.9"); # Report BUG() conditions and kill the offending process. BUG = yes; - BUG_ON_DATA_CORRUPTION = whenAtLeast "4.10" yes; - # Safer page access permissions (wrt. code injection). Default on >=4.11. DEBUG_RODATA = whenOlder "4.11" yes; DEBUG_SET_MODULE_RONX = whenOlder "4.11" yes; From 303bb60fb1c5332e478d684cdf382245e57db8a5 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:01:32 +0100 Subject: [PATCH 048/219] linux_*_hardened: don't set DEBUG_WX Upstreamed in anthraxx/linux-hardened@55ee7417f305835e6e0880ecf0b1aa334f7aabf4. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 68a152917470..4e1c79b477e9 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -35,7 +35,6 @@ assert (versionAtLeast version "4.9"); SECURITY_SELINUX_DISABLE = whenAtLeast "4.12" no; SECURITY_WRITABLE_HOOKS = whenAtLeast "4.12" (option no); - DEBUG_WX = yes; # boot-time warning on RWX mappings STRICT_KERNEL_RWX = whenAtLeast "4.11" yes; # Stricter /dev/mem From 0611462e3350df51a1eeab9fa72d181730105cb9 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:02:31 +0100 Subject: [PATCH 049/219] linux_*_hardened: don't set {,IO_}STRICT_DEVMEM STRICT_DEVMEM is on by default in upstream 5.6.2; IO_STRICT_DEVMEM is turned on by anthraxx/linux-hardened@103d23cb6645c1110fa33f2ce1ed1bba2b094081. Note that anthraxx/linux-hardened@db1d27e10e0e624632ecda9e72abb9ab126da4ce disables DEVMEM by default, so this is only relevant if that default is overridden to turn it back on. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 4e1c79b477e9..14503854d3eb 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -37,10 +37,6 @@ assert (versionAtLeast version "4.9"); STRICT_KERNEL_RWX = whenAtLeast "4.11" yes; - # Stricter /dev/mem - STRICT_DEVMEM = option yes; - IO_STRICT_DEVMEM = option yes; - # Perform additional validation of commonly targeted structures. DEBUG_CREDENTIALS = yes; DEBUG_NOTIFIERS = yes; From 3eeb5240ac1f01f2adf8f0947bbb73cf36af8dc4 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:04:48 +0100 Subject: [PATCH 050/219] linux_*_hardened: don't set DEBUG_LIST Upstreamed in anthraxx/linux-hardened@6b20124185e0548c1791bc8b7fde053de4fda269. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 14503854d3eb..d322f239c32a 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -40,7 +40,6 @@ assert (versionAtLeast version "4.9"); # Perform additional validation of commonly targeted structures. DEBUG_CREDENTIALS = yes; DEBUG_NOTIFIERS = yes; - DEBUG_LIST = yes; DEBUG_PI_LIST = yes; # doesn't BUG() DEBUG_SG = yes; SCHED_STACK_END_CHECK = yes; From 4fb796e34129934ed9c26c64beb1a0f93639957e Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:05:28 +0100 Subject: [PATCH 051/219] linux_*_hardened: don't set HARDENED_USERCOPY_FALLBACK Upstreamed in anthraxx/linux-hardened@c1fe7a68e368d05e109e69ee3491da69093883a3, anthraxx/linux-hardened@2c553a2bb115211c8e1c97eb8c949320aeb29a1d. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index d322f239c32a..f718235c625a 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -46,10 +46,6 @@ assert (versionAtLeast version "4.9"); REFCOUNT_FULL = whenAtLeast "4.13" yes; - # Perform usercopy bounds checking. - HARDENED_USERCOPY = yes; - HARDENED_USERCOPY_FALLBACK = whenAtLeast "4.16" no; # for full whitelist enforcement - # Randomize allocator freelists. SLAB_FREELIST_RANDOM = yes; From 0d5f1697b78a5d8dc7d0f2a25e71ecca4021b257 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:06:05 +0100 Subject: [PATCH 052/219] linux_*_hardened: don't set SLAB_FREELIST_{RANDOM,HARDENED} Upstreamed in anthraxx/linux-hardened@786126f177aba14110394be49b404beba061292f, anthraxx/linux-hardened@44822ebeb7c3ede030c58cc64fc1c8e8489c9063. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 5 ----- 1 file changed, 5 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index f718235c625a..20911714b90e 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -46,11 +46,6 @@ assert (versionAtLeast version "4.9"); REFCOUNT_FULL = whenAtLeast "4.13" yes; - # Randomize allocator freelists. - SLAB_FREELIST_RANDOM = yes; - - SLAB_FREELIST_HARDENED = whenAtLeast "4.14" yes; - # Randomize page allocator when page_alloc.shuffle=1 SHUFFLE_PAGE_ALLOCATOR = whenAtLeast "5.2" yes; From ed89b5b3f121920b811cfe1e705947fcd7cdb110 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:06:40 +0100 Subject: [PATCH 053/219] linux_*_hardened: don't set PANIC_ON_OOPS Upstreamed in anthraxx/linux-hardened@366e0216f15b7007c1f8b7ca86df681cbc22b50a. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 20911714b90e..63ed2219f48e 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -61,7 +61,6 @@ assert (versionAtLeast version "4.9"); SECURITY_SAFESETID = whenAtLeast "5.1" yes; # Reboot devices immediately if kernel experiences an Oops. - PANIC_ON_OOPS = yes; PANIC_TIMEOUT = freeform "-1"; GCC_PLUGINS = yes; # Enable gcc plugin options From 7fdfe5381d338c6f8fae6752b69055401e170627 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:08:09 +0100 Subject: [PATCH 054/219] linux_*_hardened: don't set FORTIFY_SOURCE Upstreamed in anthraxx/linux-hardened@d12c0d5f0c43f299634af7268f63929c1aaa10ee. --- pkgs/os-specific/linux/kernel/hardened-config.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-config.nix b/pkgs/os-specific/linux/kernel/hardened-config.nix index 63ed2219f48e..95510fe218e3 100644 --- a/pkgs/os-specific/linux/kernel/hardened-config.nix +++ b/pkgs/os-specific/linux/kernel/hardened-config.nix @@ -82,7 +82,4 @@ assert (versionAtLeast version "4.9"); CC_STACKPROTECTOR_REGULAR = whenOlder "4.18" no; CC_STACKPROTECTOR_STRONG = whenOlder "4.18" yes; - # Enable compile/run-time buffer overflow detection ala glibc's _FORTIFY_SOURCE - FORTIFY_SOURCE = whenAtLeast "4.13" yes; - } From 3b32cd2a5b951a82e37c2d8f9069ac3f12d62868 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 5 Apr 2020 05:55:58 +0100 Subject: [PATCH 055/219] nixos/hardened: don't set slab_nomerge Upstreamed in anthraxx/linux-hardened@df29f9248c6b2459dcaae216dc6f4751fab4ff3b. --- nixos/modules/profiles/hardened.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix index 35743d83134b..49cd3504aa0f 100644 --- a/nixos/modules/profiles/hardened.nix +++ b/nixos/modules/profiles/hardened.nix @@ -37,9 +37,6 @@ with lib; # Slab/slub sanity checks, redzoning, and poisoning "slub_debug=FZP" - # Disable slab merging to make certain heap overflow attacks harder - "slab_nomerge" - # Overwrite free'd memory "page_poison=1" From cf1bce6a7ada476671277ac5bffe132891ece0d8 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 5 Apr 2020 05:56:58 +0100 Subject: [PATCH 056/219] nixos/hardened: don't set vsyscall=none Upstreamed in anthraxx/linux-hardened@d300b0fdad706daab3a36a8d23b35ebe03c3fc87. --- nixos/modules/profiles/hardened.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix index 49cd3504aa0f..8a2763faec08 100644 --- a/nixos/modules/profiles/hardened.nix +++ b/nixos/modules/profiles/hardened.nix @@ -40,9 +40,6 @@ with lib; # Overwrite free'd memory "page_poison=1" - # Disable legacy virtual syscalls - "vsyscall=none" - # Enable page allocator randomization "page_alloc.shuffle=1" ]; From 9da578a78f6f442a193bd15af3c1c4544b1ff156 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 5 Apr 2020 04:57:03 +0100 Subject: [PATCH 057/219] nixos/hardened: don't set kernel.dmesg_restrict Upstreamed in anthraxx/linux-hardened@e3d3f13ffb1a5ff507a8ecae52e3d1fa05d30a07. --- nixos/modules/profiles/hardened.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix index 8a2763faec08..052909d63f53 100644 --- a/nixos/modules/profiles/hardened.nix +++ b/nixos/modules/profiles/hardened.nix @@ -76,9 +76,6 @@ with lib; # (e.g., parent/child) boot.kernel.sysctl."kernel.yama.ptrace_scope" = mkOverride 500 1; - # Restrict access to kernel ring buffer (information leaks) - boot.kernel.sysctl."kernel.dmesg_restrict" = mkDefault true; - # Hide kptrs even for processes with CAP_SYSLOG boot.kernel.sysctl."kernel.kptr_restrict" = mkOverride 500 2; From 71bbd876b743a98affd89dfe097c15a1048a63bf Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:12:06 +0100 Subject: [PATCH 058/219] nixos/hardened: don't set kernel.unprivileged_bpf_disabled Upstreamed in anthraxx/linux-hardened@1a3e0c283028533527595a91d9504d2b7eabc977. --- nixos/modules/profiles/hardened.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix index 052909d63f53..8889c6440f44 100644 --- a/nixos/modules/profiles/hardened.nix +++ b/nixos/modules/profiles/hardened.nix @@ -79,10 +79,6 @@ with lib; # Hide kptrs even for processes with CAP_SYSLOG boot.kernel.sysctl."kernel.kptr_restrict" = mkOverride 500 2; - # Unprivileged access to bpf() has been used for privilege escalation in - # the past - boot.kernel.sysctl."kernel.unprivileged_bpf_disabled" = mkDefault true; - # Disable bpf() JIT (to eliminate spray attacks) boot.kernel.sysctl."net.core.bpf_jit_enable" = mkDefault false; From af4f57b2c4b969c9bc72527dbbd970564ee8d90b Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:12:44 +0100 Subject: [PATCH 059/219] nixos/hardened: don't set net.core.bpf_jit_harden Upstreamed in anthraxx/linux-hardened@82e384401d441d42efad9830ab31650a7ea571db. --- nixos/modules/profiles/hardened.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix index 8889c6440f44..692afbff660d 100644 --- a/nixos/modules/profiles/hardened.nix +++ b/nixos/modules/profiles/hardened.nix @@ -82,9 +82,6 @@ with lib; # Disable bpf() JIT (to eliminate spray attacks) boot.kernel.sysctl."net.core.bpf_jit_enable" = mkDefault false; - # ... or at least apply some hardening to it - boot.kernel.sysctl."net.core.bpf_jit_harden" = mkDefault true; - # Raise ASLR entropy for 64bit & 32bit, respectively. # # Note: mmap_rnd_compat_bits may not exist on 64bit. From 46d12cca561165142580ccdc39eb97d0ee5b240d Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 5 Apr 2020 04:07:51 +0100 Subject: [PATCH 060/219] nixos/hardened: don't set vm.mmap_rnd{,_compat}_bits Upstreamed in anthraxx/linux-hardened@ae6d85f437dddf8f5a9076019cdfbb7788a9c154. --- nixos/modules/profiles/hardened.nix | 6 ------ 1 file changed, 6 deletions(-) diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix index 692afbff660d..33b62589b99b 100644 --- a/nixos/modules/profiles/hardened.nix +++ b/nixos/modules/profiles/hardened.nix @@ -82,12 +82,6 @@ with lib; # Disable bpf() JIT (to eliminate spray attacks) boot.kernel.sysctl."net.core.bpf_jit_enable" = mkDefault false; - # Raise ASLR entropy for 64bit & 32bit, respectively. - # - # Note: mmap_rnd_compat_bits may not exist on 64bit. - boot.kernel.sysctl."vm.mmap_rnd_bits" = mkDefault 32; - boot.kernel.sysctl."vm.mmap_rnd_compat_bits" = mkDefault 16; - # Allowing users to mmap() memory starting at virtual address 0 can turn a # NULL dereference bug in the kernel into code execution with elevated # privilege. Mitigate by enforcing a minimum base addr beyond the NULL memory From cc28d51237d39fa5f7de57f836fe2a0cf46e6182 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 22:52:42 +0100 Subject: [PATCH 061/219] nixos/hardened: don't set vm.mmap_min_addr Upstreamed in anthraxx/linux-hardened@f1fe0a64dd532551b048d97b35473c25809f7a0f. --- nixos/modules/profiles/hardened.nix | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix index 33b62589b99b..1747e962f025 100644 --- a/nixos/modules/profiles/hardened.nix +++ b/nixos/modules/profiles/hardened.nix @@ -82,16 +82,6 @@ with lib; # Disable bpf() JIT (to eliminate spray attacks) boot.kernel.sysctl."net.core.bpf_jit_enable" = mkDefault false; - # Allowing users to mmap() memory starting at virtual address 0 can turn a - # NULL dereference bug in the kernel into code execution with elevated - # privilege. Mitigate by enforcing a minimum base addr beyond the NULL memory - # space. This breaks applications that require mapping the 0 page, such as - # dosemu or running 16bit applications under wine. It also breaks older - # versions of qemu. - # - # The value is taken from the KSPP recommendations (Debian uses 4096). - boot.kernel.sysctl."vm.mmap_min_addr" = mkDefault 65536; - # Disable ftrace debugging boot.kernel.sysctl."kernel.ftrace_enabled" = mkDefault false; From 84f258bf096275fffbc95328e33ed981a677db68 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 5 Apr 2020 05:04:43 +0100 Subject: [PATCH 062/219] nixos/hardened: don't set vm.unprivileged_userfaultfd Upstreamed in anthraxx/linux-hardened@a712392b88b3cbc8385fd97be87a43db2ad7ecf0. --- nixos/modules/profiles/hardened.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix index 1747e962f025..09a1dd543331 100644 --- a/nixos/modules/profiles/hardened.nix +++ b/nixos/modules/profiles/hardened.nix @@ -108,7 +108,4 @@ with lib; # Ignore outgoing ICMP redirects (this is ipv4 only) boot.kernel.sysctl."net.ipv4.conf.all.send_redirects" = mkDefault false; boot.kernel.sysctl."net.ipv4.conf.default.send_redirects" = mkDefault false; - - # Restrict userfaultfd syscalls to processes with the SYS_PTRACE capability - boot.kernel.sysctl."vm.unprivileged_userfaultfd" = mkDefault false; } From ad9bfe2254e6205f94baa9c988063b0737911a23 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:13:27 +0100 Subject: [PATCH 063/219] nixos/hardened: enable user namespaces for root linux-hardened sets kernel.unprivileged_userns_clone=0 by default; see anthraxx/linux-hardened@104f44058f058a395502192c4939645df6f52ecb. This allows the Nix sandbox to function while reducing the attack surface posed by user namespaces, which allow unprivileged code to exercise lots of root-only code paths and have lead to privilege escalation vulnerabilities in the past. We can safely leave user namespaces on for privileged users, as root already has root privileges, but if you're not running builds on your machine and really want to minimize the kernel attack surface then you can set security.allowUserNamespaces to false. Note that Chrome's sandbox requires either unprivileged CLONE_NEWUSER or setuid, and Firefox's silently reduces the security level if it isn't allowed (see about:support), so desktop users may want to set: boot.kernel.sysctl."kernel.unprivileged_userns_clone" = true; --- nixos/modules/profiles/hardened.nix | 2 -- nixos/tests/hardened.nix | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix index 09a1dd543331..c771a4ed328a 100644 --- a/nixos/modules/profiles/hardened.nix +++ b/nixos/modules/profiles/hardened.nix @@ -21,8 +21,6 @@ with lib; security.lockKernelModules = mkDefault true; - security.allowUserNamespaces = mkDefault false; - security.protectKernelImage = mkDefault true; security.allowSimultaneousMultithreading = mkDefault false; diff --git a/nixos/tests/hardened.nix b/nixos/tests/hardened.nix index cbf76f9e5587..21bc9308aaa3 100644 --- a/nixos/tests/hardened.nix +++ b/nixos/tests/hardened.nix @@ -76,7 +76,8 @@ import ./make-test.nix ({ pkgs, ...} : { # Test userns subtest "userns", sub { - $machine->fail("unshare --user"); + $machine->succeed("unshare --user true"); + $machine->fail("su -l alice -c 'unshare --user true'"); }; # Test dmesg restriction From b0d5032ee4a1cee1fb9e521326114350ad414573 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 4 Apr 2020 23:58:54 +0100 Subject: [PATCH 064/219] nixos/hardened: add emily to maintainers --- nixos/modules/profiles/hardened.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix index c771a4ed328a..ef8c0d74f062 100644 --- a/nixos/modules/profiles/hardened.nix +++ b/nixos/modules/profiles/hardened.nix @@ -7,7 +7,7 @@ with lib; { meta = { - maintainers = [ maintainers.joachifm ]; + maintainers = [ maintainers.joachifm maintainers.emily ]; }; boot.kernelPackages = mkDefault pkgs.linuxPackages_hardened; From fe031d07f82fe87c3f258daf9085040d9ff9e49f Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 5 Apr 2020 00:29:24 +0100 Subject: [PATCH 065/219] nixos/tests/hardened: add latestKernel argument --- nixos/tests/all-tests.nix | 1 + nixos/tests/hardened.nix | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 5adfd6afd6a7..e52eb0d54824 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -160,6 +160,7 @@ in # kubernetes.e2e should eventually replace kubernetes.rbac when it works #kubernetes.e2e = handleTestOn ["x86_64-linux"] ./kubernetes/e2e.nix {}; kubernetes.rbac = handleTestOn ["x86_64-linux"] ./kubernetes/rbac.nix {}; + latestKernel.hardened = handleTest ./hardened.nix { latestKernel = true; }; latestKernel.login = handleTest ./login.nix { latestKernel = true; }; ldap = handleTest ./ldap.nix {}; leaps = handleTest ./leaps.nix {}; diff --git a/nixos/tests/hardened.nix b/nixos/tests/hardened.nix index 21bc9308aaa3..5ed0dfcf9ab8 100644 --- a/nixos/tests/hardened.nix +++ b/nixos/tests/hardened.nix @@ -1,4 +1,4 @@ -import ./make-test.nix ({ pkgs, ...} : { +import ./make-test.nix ({ pkgs, latestKernel ? false, ... } : { name = "hardened"; meta = with pkgs.stdenv.lib.maintainers; { maintainers = [ joachifm ]; @@ -10,6 +10,8 @@ import ./make-test.nix ({ pkgs, ...} : { { users.users.alice = { isNormalUser = true; extraGroups = [ "proc" ]; }; users.users.sybil = { isNormalUser = true; group = "wheel"; }; imports = [ ../modules/profiles/hardened.nix ]; + boot.kernelPackages = + lib.mkIf latestKernel pkgs.linuxPackages_latest_hardened; environment.memoryAllocator.provider = "graphene-hardened"; nix.useSandbox = false; virtualisation.emptyDiskImages = [ 4096 ]; @@ -23,7 +25,9 @@ import ./make-test.nix ({ pkgs, ...} : { options = [ "noauto" ]; }; }; - boot.extraModulePackages = [ config.boot.kernelPackages.wireguard ]; + boot.extraModulePackages = + optional (versionOlder config.boot.kernelPackages.kernel.version "5.6") + config.boot.kernelPackages.wireguard; boot.kernelModules = [ "wireguard" ]; }; From e133e396df9f5a466f2de592dd0b429dee62c959 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 5 Apr 2020 00:30:30 +0100 Subject: [PATCH 066/219] nixos/release-{small,combined}: add latestKernel.login Seems like a good idea to ensure that you can always use the latest stable upstream kernel. --- nixos/release-combined.nix | 1 + nixos/release-small.nix | 1 + 2 files changed, 2 insertions(+) diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix index 02f19610f8a6..9d16c013f464 100644 --- a/nixos/release-combined.nix +++ b/nixos/release-combined.nix @@ -96,6 +96,7 @@ in rec { (onFullSupported "nixos.tests.keymap.dvp") (onFullSupported "nixos.tests.keymap.neo") (onFullSupported "nixos.tests.keymap.qwertz") + (onFullSupported "nixos.tests.latestKernel.login") (onFullSupported "nixos.tests.lightdm") (onFullSupported "nixos.tests.login") (onFullSupported "nixos.tests.misc") diff --git a/nixos/release-small.nix b/nixos/release-small.nix index 6da2c59cedd4..ed7bbd81138f 100644 --- a/nixos/release-small.nix +++ b/nixos/release-small.nix @@ -101,6 +101,7 @@ in rec { "nixos.tests.installer.separateBoot.x86_64-linux" "nixos.tests.installer.simple.x86_64-linux" "nixos.tests.ipv6.x86_64-linux" + "nixos.tests.latestKernel.login.x86_64-linux" "nixos.tests.login.x86_64-linux" "nixos.tests.misc.x86_64-linux" "nixos.tests.nat.firewall-conntrack.x86_64-linux" From 2e31fb407eeea4ffb8428634f3c5695b747b7ec5 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 5 Apr 2020 00:32:38 +0100 Subject: [PATCH 067/219] nixos/release-combined: add {,latestKernel.}hardened These now depend on an external patch set; add them to the release tests to ensure that the build doesn't break silently as new kernel updates are merged. --- nixos/release-combined.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix index 9d16c013f464..87783c660953 100644 --- a/nixos/release-combined.nix +++ b/nixos/release-combined.nix @@ -75,6 +75,7 @@ in rec { (onFullSupported "nixos.tests.fontconfig-default-fonts") (onFullSupported "nixos.tests.gnome3") (onFullSupported "nixos.tests.gnome3-xorg") + (onFullSupported "nixos.tests.hardened") (onSystems ["x86_64-linux"] "nixos.tests.hibernate") (onFullSupported "nixos.tests.i3wm") (onSystems ["x86_64-linux"] "nixos.tests.installer.btrfsSimple") @@ -96,6 +97,7 @@ in rec { (onFullSupported "nixos.tests.keymap.dvp") (onFullSupported "nixos.tests.keymap.neo") (onFullSupported "nixos.tests.keymap.qwertz") + (onFullSupported "nixos.tests.latestKernel.hardened") (onFullSupported "nixos.tests.latestKernel.login") (onFullSupported "nixos.tests.lightdm") (onFullSupported "nixos.tests.login") From 40f3faedbdeecc21ddc784019433e20e0dd82453 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Fri, 17 Apr 2020 12:41:24 -0400 Subject: [PATCH 068/219] nixos/manual: 19.09 -> 20.03 --- nixos/doc/manual/installation/upgrading.xml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/nixos/doc/manual/installation/upgrading.xml b/nixos/doc/manual/installation/upgrading.xml index 92864cf2557a..e5e02aa07526 100644 --- a/nixos/doc/manual/installation/upgrading.xml +++ b/nixos/doc/manual/installation/upgrading.xml @@ -14,7 +14,7 @@ Stable channels, such as nixos-19.09. + xlink:href="https://nixos.org/channels/nixos-20.03">nixos-20.03. These only get conservative bug fixes and package upgrades. For instance, a channel update may cause the Linux kernel on your system to be upgraded from 4.19.34 to 4.19.38 (a minor bug fix), but not from @@ -38,7 +38,7 @@ Small channels, such as nixos-19.09-small + xlink:href="https://nixos.org/channels/nixos-20.03-small">nixos-20.03-small or nixos-unstable-small. @@ -63,8 +63,8 @@ When you first install NixOS, you’re automatically subscribed to the NixOS channel that corresponds to your installation source. For instance, if you - installed from a 19.09 ISO, you will be subscribed to the - nixos-19.09 channel. To see which NixOS channel you’re + installed from a 20.03 ISO, you will be subscribed to the + nixos-20.03 channel. To see which NixOS channel you’re subscribed to, run the following as root: # nix-channel --list | grep nixos @@ -75,13 +75,13 @@ nixos https://nixos.org/channels/nixos-unstable # nix-channel --add https://nixos.org/channels/channel-name nixos (Be sure to include the nixos parameter at the end.) For - instance, to use the NixOS 19.09 stable channel: + instance, to use the NixOS 20.03 stable channel: -# nix-channel --add https://nixos.org/channels/nixos-19.09 nixos +# nix-channel --add https://nixos.org/channels/nixos-20.03 nixos If you have a server, you may want to use the “small” channel instead: -# nix-channel --add https://nixos.org/channels/nixos-19.09-small nixos +# nix-channel --add https://nixos.org/channels/nixos-20.03-small nixos And if you want to live on the bleeding edge: @@ -132,7 +132,7 @@ nixos https://nixos.org/channels/nixos-unstable kernel, initrd or kernel modules. You can also specify a channel explicitly, e.g. - = https://nixos.org/channels/nixos-19.09; + = https://nixos.org/channels/nixos-20.03; From 094c35b9204869cf65b12617eda40f3a1ced81ee Mon Sep 17 00:00:00 2001 From: Jeff Labonte Date: Fri, 17 Apr 2020 19:50:17 -0400 Subject: [PATCH 069/219] brave: 1.5.123 -> 1.7.92 --- pkgs/applications/networking/browsers/brave/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/browsers/brave/default.nix b/pkgs/applications/networking/browsers/brave/default.nix index bab24d014567..151ce5edc355 100644 --- a/pkgs/applications/networking/browsers/brave/default.nix +++ b/pkgs/applications/networking/browsers/brave/default.nix @@ -82,11 +82,11 @@ in stdenv.mkDerivation rec { pname = "brave"; - version = "1.5.123"; + version = "1.7.92"; src = fetchurl { url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb"; - sha256 = "1yv6hfjqzcd60b0bjpfbj8d4s2yf10swanxhbmnslcqp6ajb2nqr"; + sha256 = "1f262xh88c83m6ixqxc69z8kvkl3qbjc6jnv2g8n0flw8s70hs7z"; }; dontConfigure = true; From 11be0cd7453ac41faf5b451ec36fe27ab20f1fa7 Mon Sep 17 00:00:00 2001 From: Bruno Bigras Date: Fri, 17 Apr 2020 20:29:56 -0400 Subject: [PATCH 070/219] spotifyd: add withMpris and withKeyring optionals --- pkgs/applications/audio/spotifyd/default.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/spotifyd/default.nix b/pkgs/applications/audio/spotifyd/default.nix index 263fe986df31..121f9cbc960f 100644 --- a/pkgs/applications/audio/spotifyd/default.nix +++ b/pkgs/applications/audio/spotifyd/default.nix @@ -2,6 +2,9 @@ , withALSA ? true, alsaLib ? null , withPulseAudio ? false, libpulseaudio ? null , withPortAudio ? false, portaudio ? null +, withMpris ? false +, withKeyring ? false +, dbus ? null }: rustPlatform.buildRustPackage rec { @@ -20,7 +23,7 @@ rustPlatform.buildRustPackage rec { cargoBuildFlags = [ "--no-default-features" "--features" - "${stdenv.lib.optionalString withALSA "alsa_backend,"}${stdenv.lib.optionalString withPulseAudio "pulseaudio_backend,"}${stdenv.lib.optionalString withPortAudio "portaudio_backend,"}" + "${stdenv.lib.optionalString withALSA "alsa_backend,"}${stdenv.lib.optionalString withPulseAudio "pulseaudio_backend,"}${stdenv.lib.optionalString withPortAudio "portaudio_backend,"}${stdenv.lib.optionalString withMpris "dbus_mpris,"}${stdenv.lib.optionalString withKeyring "dbus_keyring,"}" ]; nativeBuildInputs = [ pkgconfig ]; @@ -28,7 +31,8 @@ rustPlatform.buildRustPackage rec { buildInputs = [ openssl ] ++ stdenv.lib.optional withALSA alsaLib ++ stdenv.lib.optional withPulseAudio libpulseaudio - ++ stdenv.lib.optional withPortAudio portaudio; + ++ stdenv.lib.optional withPortAudio portaudio + ++ stdenv.lib.optional (withMpris || withKeyring) dbus; doCheck = false; From 6285d5eabda26d0e696a328bcc9b8bf33dea1b3a Mon Sep 17 00:00:00 2001 From: Emily Date: Tue, 24 Mar 2020 05:21:39 +0000 Subject: [PATCH 071/219] pebble: v2.2.2 -> v2.3.0 Also add myself to maintainers and correct meta.homepage. --- pkgs/tools/admin/pebble/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/admin/pebble/default.nix b/pkgs/tools/admin/pebble/default.nix index 5aa220fd89e6..efd9bfe05964 100644 --- a/pkgs/tools/admin/pebble/default.nix +++ b/pkgs/tools/admin/pebble/default.nix @@ -4,7 +4,7 @@ }: let - version = "v2.2.2"; + version = "v2.3.0"; pname = "pebble"; in buildGoPackage { inherit pname version; @@ -14,13 +14,13 @@ in buildGoPackage { owner = "letsencrypt"; repo = pname; rev = version; - sha256 = "10g6ivdxxp3632wk0gvmp75v9x668kchhmlczbsq8qnsc8sb8pwf"; + sha256 = "1piwzzfqsdx6s2niczzp4mf4r3qn9nfdgpn7882g52cmmm0vzks2"; }; meta = { - homepage = "https://github.com/letsencrypt/boulder"; + homepage = "https://github.com/letsencrypt/pebble"; description = "A miniature version of Boulder, Pebble is a small RFC 8555 ACME test server not suited for a production CA"; license = [ lib.licenses.mpl20 ]; - maintainers = [ ]; + maintainers = with lib.maintainers; [ emily ]; }; } From 352e30df8a38b1b673c19de817fedca7d3d95d71 Mon Sep 17 00:00:00 2001 From: Emily Date: Mon, 23 Mar 2020 22:12:15 +0000 Subject: [PATCH 072/219] nixos/tests/acme: don't restrict to x86_64 This was added in aade4e577bbb27f044217c51a006ab6ba544ebb5, but the implementation of the ACME module has been entirely rewritten since then, and the test seems to run fine on AArch64. --- nixos/tests/all-tests.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 4f60892488ab..5ff1c9586f84 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -22,7 +22,7 @@ let in { _3proxy = handleTest ./3proxy.nix {}; - acme = handleTestOn ["x86_64-linux"] ./acme.nix {}; + acme = handleTest ./acme.nix {}; atd = handleTest ./atd.nix {}; automysqlbackup = handleTest ./automysqlbackup.nix {}; avahi = handleTest ./avahi.nix {}; From d0f04c1623ae74f256ff5ced77ac78c7fe3b6abc Mon Sep 17 00:00:00 2001 From: Emily Date: Mon, 23 Mar 2020 20:35:16 +0000 Subject: [PATCH 073/219] nixos/tests/acme: use *.test domains Shimming out the Let's Encrypt domain name to reuse client configuration doesn't work properly (Pebble uses different endpoint URL formats), is recommended against by upstream,[1] and is unnecessary now that the ACME module supports specifying an ACME server. This commit changes the tests to use the domain name acme.test instead, and renames the letsencrypt node to acme to reflect that it has nothing to do with the ACME server that Let's Encrypt runs. The imports are renamed for clarity: * nixos/tests/common/{letsencrypt => acme}/{common.nix => client} * nixos/tests/common/{letsencrypt => acme}/{default.nix => server} The test's other domain names are also adjusted to use *.test for consistency (and to avoid misuse of non-reserved domain names such as standalone.com). [1] https://github.com/letsencrypt/pebble/issues/283#issuecomment-545123242 Co-authored-by: Yegor Timoshenko --- nixos/tests/acme.nix | 99 ++++--- nixos/tests/common/acme/client/default.nix | 19 ++ .../{letsencrypt => acme/server}/default.nix | 28 +- .../{letsencrypt => acme/server}/mkcerts.nix | 5 +- .../{letsencrypt => acme/server}/mkcerts.sh | 0 .../common/acme/server/snakeoil-certs.nix | 171 ++++++++++++ nixos/tests/common/letsencrypt/common.nix | 12 - .../common/letsencrypt/snakeoil-certs.nix | 254 ------------------ nixos/tests/common/resolver.nix | 2 +- 9 files changed, 254 insertions(+), 336 deletions(-) create mode 100644 nixos/tests/common/acme/client/default.nix rename nixos/tests/common/{letsencrypt => acme/server}/default.nix (83%) rename nixos/tests/common/{letsencrypt => acme/server}/mkcerts.nix (94%) rename nixos/tests/common/{letsencrypt => acme/server}/mkcerts.sh (100%) create mode 100644 nixos/tests/common/acme/server/snakeoil-certs.nix delete mode 100644 nixos/tests/common/letsencrypt/common.nix delete mode 100644 nixos/tests/common/letsencrypt/snakeoil-certs.nix diff --git a/nixos/tests/acme.nix b/nixos/tests/acme.nix index 638601cd75f3..032432287bd0 100644 --- a/nixos/tests/acme.nix +++ b/nixos/tests/acme.nix @@ -1,5 +1,5 @@ let - commonConfig = ./common/letsencrypt/common.nix; + commonConfig = ./common/acme/client; dnsScript = {writeScript, dnsAddress, bash, curl}: writeScript "dns-hook.sh" '' #!${bash}/bin/bash @@ -16,8 +16,8 @@ in import ./make-test-python.nix { name = "acme"; nodes = rec { - letsencrypt = { nodes, lib, ... }: { - imports = [ ./common/letsencrypt ]; + acme = { nodes, lib, ... }: { + imports = [ ./common/acme/server ]; networking.nameservers = lib.mkForce [ nodes.dnsserver.config.networking.primaryIPAddress ]; @@ -45,19 +45,16 @@ in import ./make-test-python.nix { nodes.dnsserver.config.networking.primaryIPAddress ]; networking.firewall.allowedTCPPorts = [ 80 ]; - security.acme = { - server = "https://acme-v02.api.letsencrypt.org/dir"; - certs."standalone.com" = { - webroot = "/var/lib/acme/acme-challenges"; - }; + security.acme.certs."standalone.test" = { + webroot = "/var/lib/acme/acme-challenges"; }; - systemd.targets."acme-finished-standalone.com" = {}; - systemd.services."acme-standalone.com" = { - wants = [ "acme-finished-standalone.com.target" ]; - before = [ "acme-finished-standalone.com.target" ]; + systemd.targets."acme-finished-standalone.test" = {}; + systemd.services."acme-standalone.test" = { + wants = [ "acme-finished-standalone.test.target" ]; + before = [ "acme-finished-standalone.test.target" ]; }; services.nginx.enable = true; - services.nginx.virtualHosts."standalone.com" = { + services.nginx.virtualHosts."standalone.test" = { locations."/.well-known/acme-challenge".root = "/var/lib/acme/acme-challenges"; }; }; @@ -71,16 +68,16 @@ in import ./make-test-python.nix { # A target remains active. Use this to probe the fact that # a service fired eventhough it is not RemainAfterExit - systemd.targets."acme-finished-a.example.com" = {}; - systemd.services."acme-a.example.com" = { - wants = [ "acme-finished-a.example.com.target" ]; - before = [ "acme-finished-a.example.com.target" ]; + systemd.targets."acme-finished-a.example.test" = {}; + systemd.services."acme-a.example.test" = { + wants = [ "acme-finished-a.example.test.target" ]; + before = [ "acme-finished-a.example.test.target" ]; after = [ "nginx.service" ]; }; services.nginx.enable = true; - services.nginx.virtualHosts."a.example.com" = { + services.nginx.virtualHosts."a.example.test" = { enableACME = true; forceSSL = true; locations."/".root = pkgs.runCommand "docroot" {} '' @@ -89,16 +86,16 @@ in import ./make-test-python.nix { ''; }; - security.acme.server = "https://acme-v02.api.letsencrypt.org/dir"; + security.acme.server = "https://acme.test/dir"; specialisation.second-cert.configuration = {pkgs, ...}: { - systemd.targets."acme-finished-b.example.com" = {}; - systemd.services."acme-b.example.com" = { - wants = [ "acme-finished-b.example.com.target" ]; - before = [ "acme-finished-b.example.com.target" ]; + systemd.targets."acme-finished-b.example.test" = {}; + systemd.services."acme-b.example.test" = { + wants = [ "acme-finished-b.example.test.target" ]; + before = [ "acme-finished-b.example.test.target" ]; after = [ "nginx.service" ]; }; - services.nginx.virtualHosts."b.example.com" = { + services.nginx.virtualHosts."b.example.test" = { enableACME = true; forceSSL = true; locations."/".root = pkgs.runCommand "docroot" {} '' @@ -108,8 +105,8 @@ in import ./make-test-python.nix { }; }; specialisation.dns-01.configuration = {pkgs, config, nodes, lib, ...}: { - security.acme.certs."example.com" = { - domain = "*.example.com"; + security.acme.certs."example.test" = { + domain = "*.example.test"; dnsProvider = "exec"; dnsPropagationCheck = false; credentialsFile = with pkgs; writeText "wildcard.env" '' @@ -118,17 +115,17 @@ in import ./make-test-python.nix { user = config.services.nginx.user; group = config.services.nginx.group; }; - systemd.targets."acme-finished-example.com" = {}; - systemd.services."acme-example.com" = { - wants = [ "acme-finished-example.com.target" ]; - before = [ "acme-finished-example.com.target" "nginx.service" ]; + systemd.targets."acme-finished-example.test" = {}; + systemd.services."acme-example.test" = { + wants = [ "acme-finished-example.test.target" ]; + before = [ "acme-finished-example.test.target" "nginx.service" ]; wantedBy = [ "nginx.service" ]; }; - services.nginx.virtualHosts."c.example.com" = { + services.nginx.virtualHosts."c.example.test" = { forceSSL = true; - sslCertificate = config.security.acme.certs."example.com".directory + "/cert.pem"; - sslTrustedCertificate = config.security.acme.certs."example.com".directory + "/full.pem"; - sslCertificateKey = config.security.acme.certs."example.com".directory + "/key.pem"; + sslCertificate = config.security.acme.certs."example.test".directory + "/cert.pem"; + sslTrustedCertificate = config.security.acme.certs."example.test".directory + "/full.pem"; + sslCertificateKey = config.security.acme.certs."example.test".directory + "/key.pem"; locations."/".root = pkgs.runCommand "docroot" {} '' mkdir -p "$out" echo hello world > "$out/index.html" @@ -159,46 +156,44 @@ in import ./make-test-python.nix { client.start() dnsserver.start() - letsencrypt.wait_for_unit("default.target") + acme.wait_for_unit("default.target") dnsserver.wait_for_unit("pebble-challtestsrv.service") client.succeed( - 'curl --data \'{"host": "acme-v02.api.letsencrypt.org", "addresses": ["${nodes.letsencrypt.config.networking.primaryIPAddress}"]}\' http://${nodes.dnsserver.config.networking.primaryIPAddress}:8055/add-a' + 'curl --data \'{"host": "acme.test", "addresses": ["${nodes.acme.config.networking.primaryIPAddress}"]}\' http://${nodes.dnsserver.config.networking.primaryIPAddress}:8055/add-a' ) client.succeed( - 'curl --data \'{"host": "standalone.com", "addresses": ["${nodes.acmeStandalone.config.networking.primaryIPAddress}"]}\' http://${nodes.dnsserver.config.networking.primaryIPAddress}:8055/add-a' + 'curl --data \'{"host": "standalone.test", "addresses": ["${nodes.acmeStandalone.config.networking.primaryIPAddress}"]}\' http://${nodes.dnsserver.config.networking.primaryIPAddress}:8055/add-a' ) - letsencrypt.start() + acme.start() acmeStandalone.start() - letsencrypt.wait_for_unit("default.target") - letsencrypt.wait_for_unit("pebble.service") + acme.wait_for_unit("default.target") + acme.wait_for_unit("pebble.service") with subtest("can request certificate with HTTPS-01 challenge"): acmeStandalone.wait_for_unit("default.target") - acmeStandalone.succeed("systemctl start acme-standalone.com.service") - acmeStandalone.wait_for_unit("acme-finished-standalone.com.target") + acmeStandalone.succeed("systemctl start acme-standalone.test.service") + acmeStandalone.wait_for_unit("acme-finished-standalone.test.target") client.wait_for_unit("default.target") - client.succeed("curl https://acme-v02.api.letsencrypt.org:15000/roots/0 > /tmp/ca.crt") - client.succeed( - "curl https://acme-v02.api.letsencrypt.org:15000/intermediate-keys/0 >> /tmp/ca.crt" - ) + client.succeed("curl https://acme.test:15000/roots/0 > /tmp/ca.crt") + client.succeed("curl https://acme.test:15000/intermediate-keys/0 >> /tmp/ca.crt") with subtest("Can request certificate for nginx service"): - webserver.wait_for_unit("acme-finished-a.example.com.target") + webserver.wait_for_unit("acme-finished-a.example.test.target") client.succeed( - "curl --cacert /tmp/ca.crt https://a.example.com/ | grep -qF 'hello world'" + "curl --cacert /tmp/ca.crt https://a.example.test/ | grep -qF 'hello world'" ) with subtest("Can add another certificate for nginx service"): webserver.succeed( "/run/current-system/specialisation/second-cert/bin/switch-to-configuration test" ) - webserver.wait_for_unit("acme-finished-b.example.com.target") + webserver.wait_for_unit("acme-finished-b.example.test.target") client.succeed( - "curl --cacert /tmp/ca.crt https://b.example.com/ | grep -qF 'hello world'" + "curl --cacert /tmp/ca.crt https://b.example.test/ | grep -qF 'hello world'" ) with subtest("Can request wildcard certificates using DNS-01 challenge"): @@ -208,9 +203,9 @@ in import ./make-test-python.nix { webserver.succeed( "/run/current-system/specialisation/dns-01/bin/switch-to-configuration test" ) - webserver.wait_for_unit("acme-finished-example.com.target") + webserver.wait_for_unit("acme-finished-example.test.target") client.succeed( - "curl --cacert /tmp/ca.crt https://c.example.com/ | grep -qF 'hello world'" + "curl --cacert /tmp/ca.crt https://c.example.test/ | grep -qF 'hello world'" ) ''; } diff --git a/nixos/tests/common/acme/client/default.nix b/nixos/tests/common/acme/client/default.nix new file mode 100644 index 000000000000..22ba6f4df194 --- /dev/null +++ b/nixos/tests/common/acme/client/default.nix @@ -0,0 +1,19 @@ +{ lib, nodes, pkgs, ... }: + +let + acme-ca = nodes.acme.config.test-support.acme.caCert; +in + +{ + networking.nameservers = [ + nodes.acme.config.networking.primaryIPAddress + ]; + + security.acme = { + server = "https://acme.test/dir"; + email = "hostmaster@example.test"; + acceptTerms = true; + }; + + security.pki.certificateFiles = [ acme-ca ]; +} diff --git a/nixos/tests/common/letsencrypt/default.nix b/nixos/tests/common/acme/server/default.nix similarity index 83% rename from nixos/tests/common/letsencrypt/default.nix rename to nixos/tests/common/acme/server/default.nix index 110a2520971d..fdc053a2d828 100644 --- a/nixos/tests/common/letsencrypt/default.nix +++ b/nixos/tests/common/acme/server/default.nix @@ -1,27 +1,27 @@ # The certificate for the ACME service is exported as: # -# config.test-support.letsencrypt.caCert +# config.test-support.acme.caCert # # This value can be used inside the configuration of other test nodes to inject # the snakeoil certificate into security.pki.certificateFiles or into package # overlays. # # Another value that's needed if you don't use a custom resolver (see below for -# notes on that) is to add the letsencrypt node as a nameserver to every node +# notes on that) is to add the acme node as a nameserver to every node # that needs to acquire certificates using ACME, because otherwise the API host -# for letsencrypt.org can't be resolved. +# for acme.test can't be resolved. # # A configuration example of a full node setup using this would be this: # # { -# letsencrypt = import ./common/letsencrypt; +# acme = import ./common/acme/server; # # example = { nodes, ... }: { # networking.nameservers = [ -# nodes.letsencrypt.config.networking.primaryIPAddress +# nodes.acme.config.networking.primaryIPAddress # ]; # security.pki.certificateFiles = [ -# nodes.letsencrypt.config.test-support.letsencrypt.caCert +# nodes.acme.config.test-support.acme.caCert # ]; # }; # } @@ -33,8 +33,8 @@ # override networking.nameservers like this: # # { -# letsencrypt = { nodes, ... }: { -# imports = [ ./common/letsencrypt ]; +# acme = { nodes, ... }: { +# imports = [ ./common/acme/server ]; # networking.nameservers = [ # nodes.myresolver.config.networking.primaryIPAddress # ]; @@ -55,16 +55,16 @@ let snakeOilCerts = import ./snakeoil-certs.nix; - wfeDomain = "acme-v02.api.letsencrypt.org"; + wfeDomain = "acme.test"; wfeCertFile = snakeOilCerts.${wfeDomain}.cert; wfeKeyFile = snakeOilCerts.${wfeDomain}.key; - siteDomain = "letsencrypt.org"; + siteDomain = "acme.test"; siteCertFile = snakeOilCerts.${siteDomain}.cert; siteKeyFile = snakeOilCerts.${siteDomain}.key; pebble = pkgs.pebble; resolver = let - message = "You need to define a resolver for the letsencrypt test module."; + message = "You need to define a resolver for the acme test module."; firstNS = lib.head config.networking.nameservers; in if config.networking.nameservers == [] then throw message else firstNS; @@ -82,9 +82,9 @@ let pebbleDataDir = "/root/pebble"; in { - imports = [ ../resolver.nix ]; + imports = [ ../../resolver.nix ]; - options.test-support.letsencrypt.caCert = lib.mkOption { + options.test-support.acme.caCert = lib.mkOption { type = lib.types.path; description = '' A certificate file to use with the nodes attribute to @@ -98,7 +98,7 @@ in { resolver.enable = let isLocalResolver = config.networking.nameservers == [ "127.0.0.1" ]; in lib.mkOverride 900 isLocalResolver; - letsencrypt.caCert = snakeOilCerts.ca.cert; + acme.caCert = snakeOilCerts.ca.cert; }; # This has priority 140, because modules/testing/test-instrumentation.nix diff --git a/nixos/tests/common/letsencrypt/mkcerts.nix b/nixos/tests/common/acme/server/mkcerts.nix similarity index 94% rename from nixos/tests/common/letsencrypt/mkcerts.nix rename to nixos/tests/common/acme/server/mkcerts.nix index e7ac2bae46bd..2474019cbac3 100644 --- a/nixos/tests/common/letsencrypt/mkcerts.nix +++ b/nixos/tests/common/acme/server/mkcerts.nix @@ -1,10 +1,9 @@ { pkgs ? import {} , lib ? pkgs.lib - -, domains ? [ "acme-v02.api.letsencrypt.org" "letsencrypt.org" ] +, domains ? [ "acme.test" ] }: -pkgs.runCommand "letsencrypt-snakeoil-ca" { +pkgs.runCommand "acme-snakeoil-ca" { nativeBuildInputs = [ pkgs.openssl ]; } '' addpem() { diff --git a/nixos/tests/common/letsencrypt/mkcerts.sh b/nixos/tests/common/acme/server/mkcerts.sh similarity index 100% rename from nixos/tests/common/letsencrypt/mkcerts.sh rename to nixos/tests/common/acme/server/mkcerts.sh diff --git a/nixos/tests/common/acme/server/snakeoil-certs.nix b/nixos/tests/common/acme/server/snakeoil-certs.nix new file mode 100644 index 000000000000..fd537c3260f1 --- /dev/null +++ b/nixos/tests/common/acme/server/snakeoil-certs.nix @@ -0,0 +1,171 @@ +# Generated via mkcert.sh in the same directory. +{ + ca.key = builtins.toFile "ca.key" '' + -----BEGIN PRIVATE KEY----- + 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 + JUsBXFNz132nP4iIr3UKrPedQZijSi4= + -----END PRIVATE KEY----- + ''; + ca.cert = builtins.toFile "ca.cert" '' + -----BEGIN CERTIFICATE----- + MIIFDzCCAvegAwIBAgIUTRDYSWJvmlhwIR3pzVrIQfnboLEwDQYJKoZIhvcNAQEL + BQAwFjEUMBIGA1UEAwwLU25ha2VvaWwgQ0EwIBcNMjAwMzIyMjI1NjE3WhgPMjEy + MDAyMjcyMjU2MTdaMBYxFDASBgNVBAMMC1NuYWtlb2lsIENBMIICIjANBgkqhkiG + 9w0BAQEFAAOCAg8AMIICCgKCAgEAwp1WRhJ+vHs15Q1hOYI7Aj6rrUeJ8cP8LyGw + MQdlZNlnkOhxr7diXa8+anq9iF3e+mLaUHqnfn33rWi7THhU6/l8vcqhKcdgH75h + BHC57olm7FBmc7B8Fu/+JD4ABQcvU8CZ/5PPdpUerkGGtEEt/Ql/OZCzGfy2V1Mg + pSAWviMU9TqL5hqjDq+JxgEkUD+nf558p+NSp2rf3bacmmuc4H2MAOmFulMXMsLw + UqTDlzNP/NgRWRsgC7d50Pn35q7SnLzI7DSwRWrJVfs2DtTzGy20wlvEpiU44c7m + qV7QR67r6HtuNd911pb3D9cpWk8dGpcIkFia9VxDlFixBU4Dk3kcolQ8Q7p6c/u6 + BnMM3HThvJwoHesNGmGhAs9c70txWE0M/jIqphJMerOG49VPdCNJMFCW3lo46xju + 2PUKuItfRmnw4O3ADJ/XhwojWzaz4+rf4H2lWwq25Jt2VY5Ly00Npm9pb+/rVYou + Odtu4jT7jUupcdhVZa/w14kazlX4IT76DsVH186ICYWS1eGZIvsnGxkGucPGDA2A + r+HNPHSgOwGrVYTUutHNc4EDY7lhdwb6HEskshlKJ1U+odQ2JSfWAKoKjaXnYDUf + ZKadN+EjIQe3Y/ZXgei0TAPnNXxv0/tZQ25APr6KXqbePt9KA3Ak2HxIn5dR8Kjc + P21w5tcCAwEAAaNTMFEwHQYDVR0OBBYEFCIoeYSYjtMiPrmxfHmcrsZkyTpvMB8G + A1UdIwQYMBaAFCIoeYSYjtMiPrmxfHmcrsZkyTpvMA8GA1UdEwEB/wQFMAMBAf8w + DQYJKoZIhvcNAQELBQADggIBAHPdwOgAxyhIhbqFObNftW8K3sptorB/Fj6jwYCm + mHleFueqQnjTHMWsflOjREvQp1M307FWooGj+KQkjwvAyDc/Hmy7WgJxBg9p3vc+ + /Xf/e7ZfBl8rv7vH8VXW/BC1vVsILdFncrgTrP8/4psV50/cl1F4+nPBiekvvxwZ + k+R7SgeSvcWT7YlOG8tm1M3al4F4mWzSRkYjkrXmwRCKAiya9xcGSt0Bob+LoM/O + mpDGV/PMC1WAoDc1mMuXN2hSc0n68xMcuFs+dj/nQYn8uL5pzOxpX9560ynKyLDv + yOzQlM2VuZ7H2hSIeYOFgrtHJJwhDtzjmUNDQpQdp9Fx+LONQTS1VLCTXND2i/3F + 10X6PkdnLEn09RiPt5qy20pQkICxoEydmlwpFs32musYfJPdBPkZqZWrwINBv2Wb + HfOmEB4xUvXufZ5Ju5icgggBkyNA3PCLo0GZFRrMtvA7i9IXOcXNR+njhKa9246V + QQfeWiz05RmIvgShJYVsnZWtael8ni366d+UXypBYncohimyNlAD1n+Bh3z0PvBB + +FK4JgOSeouM4SuBHdwmlZ/H0mvfUG81Y8Jbrw0yuRHtuCtX5HpN5GKpZPHDE7aQ + fEShVB/GElC3n3DvgK9OJBeVVhYQgUEfJi4rsSxt3cdEI0NrdckUoZbApWVJ3CBc + F8Y7 + -----END CERTIFICATE----- + ''; + "acme.test".key = builtins.toFile "acme.test.key" '' + -----BEGIN RSA PRIVATE KEY----- + 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 + -----END RSA PRIVATE KEY----- + ''; + "acme.test".cert = builtins.toFile "acme.test.cert" '' + -----BEGIN CERTIFICATE----- + MIIEoTCCAokCAgKaMA0GCSqGSIb3DQEBCwUAMBYxFDASBgNVBAMMC1NuYWtlb2ls + IENBMCAXDTIwMDMyMjIyNTYxOFoYDzIxMjAwMjI3MjI1NjE4WjAUMRIwEAYDVQQD + DAlhY21lLnRlc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCWBBNm + Mp+zdofDQn33eTuMUCz6FVE9///McwCJSQ8pRg9NKXVPFL9s9uFbNKiibTSPhIuE + YYaFt36We9ODS68pvGySABN/DlyVubVk36DHgO7HCMtXfEjGl5Jj48rOznPzD+T4 + AmH7M4/JfAfe63cL6iCnVL/kiGbNXdr/JT/qTTOkbGM3pk9FNcWvP3cjWk94KQnP + 3SXu2P7a4Vz3G0zbQ1BfnZ/RjahKFwbx8p01lXO4ceRleStkiGi7nn+dHLaMqAV4 + PcZBB9r2vA9atXJtDq0owyShrMH9SeTL3FxMjYslqt/GAcM72/3IUG+ZHhQzwHeQ + zzY0egQ20dpnaaaIwZnNMRCV/zHBjIcWuoEUhVFYRSvuuv87lCv2Ag3RPi7frscJ + 7FVgArNs7Y/2HvlzPOMwygaRtfN71IxD+KSvESbAAeCvVfGHqJBiaA82TwBHd336 + jYjtYlkxRhkBEue6FWv0E1e/nXSKplOpfyVzIvl8SPdJPgBv4fut969m3o1TbqIk + sFgCOsDaZK8f7C+RujGuBJLzFg+Q5bw0s0Rtuh3Oh8ikH5Jornc4iTRuP1zVgCCt + I0RH9MNOANetZQ2uV9Vn8zv4AR15TTrCLuxWFWJ/o4EPc6mApI2N4TpO4kfzQ+Lk + xa6BIUGvv3Zdvq6FWg+JU4U36qIYHpSTAGBIqQIDAQABMA0GCSqGSIb3DQEBCwUA + A4ICAQBCDs0V4z00Ze6Ask3qDOLAPo4k85QCfItlRZmwl2XbPZq7kbe13MqF2wxx + yiLalm6veK+ehU9MYN104hJZnuce5iEcZurk+8A+Pwn1Ifz+oWKVbUtUP3uV8Sm3 + chktJ2H1bebXtNJE5TwvdHiUkXU9ywQt2FkxiTSl6+eac7JKEQ8lVN/o6uYxF5ds + +oIZplb7bv2XxsRCzq55F2tJX7fIzqXrSa+lQTnfLGmDVMAQX4TRB/lx0Gqd1a9y + qGfFnZ7xVyW97f6PiL8MoxPfd2I2JzrzGyP/igNbFOW0ho1OwfxVmvZeS7fQSc5e + +qu+nwnFfl0S4cHRif3G3zmz8Ryx9LM5TYkH41qePIHxoEO2sV0DgWJvbSjysV2S + EU2a31dJ0aZ+z6YtZVpHlujKMVzxVTrqj74trS4LvU5h/9hv7e1gjYdox1TO0HMK + mtDfgBevB21Tvxpz67Ijf31HvfTmCerKJEOjGnbYmyYpMeMNSONRDcToWk8sUwvi + OWa5jlUFRAxgXNM09vCTPi9aRUhcFqACqfAd6I1NqGVlfplLWrc7SWaSa+PsLfBf + 4EOZfk8iEKBVeYXNjg+CcD8j8yk/oEs816/jpihIk8haCDRWYWGKyyGnwn6OQb8d + MdRO2b7Oi/AAmEF3jMlICqv286GIYK5qTKk2/CKHlOLPnsWEuA== + -----END CERTIFICATE----- + ''; +} diff --git a/nixos/tests/common/letsencrypt/common.nix b/nixos/tests/common/letsencrypt/common.nix deleted file mode 100644 index bd559c8dacc5..000000000000 --- a/nixos/tests/common/letsencrypt/common.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ lib, nodes, pkgs, ... }: let - letsencrypt-ca = nodes.letsencrypt.config.test-support.letsencrypt.caCert; -in { - networking.nameservers = [ - nodes.letsencrypt.config.networking.primaryIPAddress - ]; - - security.acme.acceptTerms = true; - security.acme.email = "webmaster@example.com"; - - security.pki.certificateFiles = [ letsencrypt-ca ]; -} diff --git a/nixos/tests/common/letsencrypt/snakeoil-certs.nix b/nixos/tests/common/letsencrypt/snakeoil-certs.nix deleted file mode 100644 index ca4f71ae688a..000000000000 --- a/nixos/tests/common/letsencrypt/snakeoil-certs.nix +++ /dev/null @@ -1,254 +0,0 @@ -# Generated via mkcert.sh in the same directory. -{ - ca.key = builtins.toFile "ca.key" '' - -----BEGIN PRIVATE KEY----- - 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 - Eq4OVTSu/s8gmY94tgbjeOaLUPEPmg== - -----END PRIVATE KEY----- - ''; - ca.cert = builtins.toFile "ca.cert" '' - -----BEGIN CERTIFICATE----- - MIIFDzCCAvegAwIBAgIUU9rbCLTuvaI6gjSsFsJJjfLWIX8wDQYJKoZIhvcNAQEL - BQAwFjEUMBIGA1UEAwwLU25ha2VvaWwgQ0EwIBcNMTkxMDE4MDc1NDEyWhgPMjEx - OTA5MjQwNzU0MTJaMBYxFDASBgNVBAMMC1NuYWtlb2lsIENBMIICIjANBgkqhkiG - 9w0BAQEFAAOCAg8AMIICCgKCAgEA0NG9tyNbKyWcEdjDHb0iSuaXMC3611PuIBGR - J1jck/MnlcHsmvvL5jTTpbyt88X/mYmP+2kNEWSTDodvlXZYB5q9kCoUE39R8H2Q - P9OhaJQ9/w3EvgzCTEk1a9e/f1y53XlVWVKlO7Y7wQFikiEvB9oUhdVDj4vYAQ0f - DMAj+kII/FmIW5LfauO/5TveqgJpulNRfkO0WDPWUCFiPNTdDLOcCaHIO5+ktfYl - eunj4ewD2qWRWLqetYBRln2oZgNtexCyGXeep/MozhdHqW/bAtF6WAg0a2CgVi6j - 4r/usL3WbWbwCyLciL9PGcF5QZBYNy2wAIT539Fcc6WMrEJssss5IMtudp/kontJ - MfgeKpunzpKX4GJT0lU29nV8f23v0hNPLtGvRTtH2aZAclhGSVFMJ4LCYC1GuzKK - 0H92r8aM3wtuV6r824nmX0l5QO5jlHJWWwv1lBacozJciVNngkPMEsLD15fdaMXG - JTpLlS4HeNYK/aRl0EriiJK4G35H7Y4NrQwvu4OzvKq3ReNhY22YyMf++AGrJrBo - eBk0LYkpLxJ07LYqAumgleOA5SVmwSDL5MmsLm41JT6Yo9B+umPUOLRHP5LXO6Bk - H6qpbsi2+N03qG0zxwC7DXgGG9/azLQaOQwwlHPNbH7gzITK/6GFyqxbLVLIOQGO - piWkRtECAwEAAaNTMFEwHQYDVR0OBBYEFAZcEiVphGxBT4OWXbM6lKu96dvbMB8G - A1UdIwQYMBaAFAZcEiVphGxBT4OWXbM6lKu96dvbMA8GA1UdEwEB/wQFMAMBAf8w - DQYJKoZIhvcNAQELBQADggIBAGJ5Jnxq1IQ++IRYxCE7r7BqzzF+HTx0EWKkSOmt - eSPqeOdhC26hJlclgGZXAF/Xosmn8vkSQMHhj/jr4HI0VF9IyvDUJm8AKsnOgu/7 - DUey3lEUdOtJpTG9NyTOcrzxToMJ+hWlFLZKxx2dk4FLIvTLjmo1VHM97Bat7XYW - IrL9RRIZ25V+eCYtlR7XYjceGFQ0rCdp8SFIQwC6C/AH2tV3b1AJFsND9PcoLu7c - //fH+WUQCcD/N0grdC/QCX7AFWzd4rKQ8gjfND4TSYFTSDwW10Mud4kAVhY2P1sY - Y3ZpnxWrCHbIZMbszlbMyD+cjsCBnNvOtYGm7pDut/371rllVcB/uOWYWMCtKPoj - 0elPrwNMrK+P+wceNBCRQO+9gwzB589F2morFTtsob/qtpAygW8Sfl8M+iLWXeYS - c3LBLnj0TpgXKRWg7wgIWKSZx9v6pgy70U0qvkjNS1XseUCPf7hfAbxT3xF+37Dw - zZRwF4WAWqdnJoOey21mgc+a2DQzqtykA6KfHgCqNFfDbQXPXvNy25DDThbk+paX - G2M2EWtr+Nv9s/zm7Xv/pOXlgMFavaj+ikqZ4wfJf6c/sMOdZJtMA4TsYtAJgbc8 - ts+0eymTq4v5S8/fW51Lbjw6hc1Kcm8k7NbHSi9sEjBfxFLTZNQ5eb4NGr9Od3sU - kgwJ - -----END CERTIFICATE----- - ''; - "acme-v02.api.letsencrypt.org".key = builtins.toFile "acme-v02.api.letsencrypt.org.key" '' - -----BEGIN RSA PRIVATE KEY----- - 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 - -----END RSA PRIVATE KEY----- - ''; - "acme-v02.api.letsencrypt.org".cert = builtins.toFile "acme-v02.api.letsencrypt.org.cert" '' - -----BEGIN CERTIFICATE----- - MIIEtDCCApwCAgKaMA0GCSqGSIb3DQEBCwUAMBYxFDASBgNVBAMMC1NuYWtlb2ls - IENBMCAXDTE5MTAxODA3NTQxM1oYDzIxMTkwOTI0MDc1NDEzWjAnMSUwIwYDVQQD - DBxhY21lLXYwMi5hcGkubGV0c2VuY3J5cHQub3JnMIICIjANBgkqhkiG9w0BAQEF - AAOCAg8AMIICCgKCAgEApny0WhfDwEXe6WDTCw8qBuMAPDr88pj6kbhQWfzAW2c0 - TggJEtjs9dktENeTpSl14nnLVMiSYIJPYY3KbOIFQH1qDaOuQ7NaOhj9CdMTm5r9 - bl+CYAyqLIMQ9AAZDhUcQjOy3moiL7ClFHlkFYuEzZBO9DF7hJpfUFIs0Idg50mN - oZh/K/fb4P2skNjfCjjomTRUmZHxT6G00ImSTtSaYbN/WHut1xXwJvOoT1nlEA/P - ghKmJJ9ZuRMSddUJmjL+sT09L8LVkK8CKeHi4r58DHM0D0u8owIFV9qsXd5UvZHa - NgvQ4OAWGukMX+TxRuqkUZkaj84vnNL+ttEMl4jedw0ImzNtCOYehDyTPRkfng5P - LWMSvWbwyP8jDd2578mSbx5BF7ypYX366+vknjIFyZ5WezcC1pscIHxLoEwuhuf+ - knN+kFkLOHeYbqQrU6mxSnu9q0hnNvGUkTP0a/1aLOGRfQ5C/pxpE/Rebi8qfM/O - JFd4mSxGL93JUTXWAItiIeBnQpIne65/Ska9dWynOEfIb0okdet3kfmNHz3zc17d - Z5g4AdOSCgHAlQgFt/Qd8W6xXUe4C5Mfv2ctxRrfQhDwtB6rMByPwzImnciC2h3v - CwD3vS/vjUyWICyhZyi2LZDUQz+sCKBXCYYcYh8ThFO40j5x1OnYMq7XQvyl8QkC - AwEAATANBgkqhkiG9w0BAQsFAAOCAgEAkx0GLPuCvKSLTHxVLh5tP4jxSGG/zN37 - PeZLu3QJTdRdRc8bgeOGXAVEVFbqOLTNTsuY1mvpiv2V6wxR6nns+PIHeLY/UOdc - mOreKPtMU2dWPp3ybec2Jwii6PhAXZJ26AKintmug1psMw7662crR3SCnn85/CvW - 192vhr5gM1PqLBIlbsX0tAqxAwBe1YkxBb9vCq8NVghJlKme49xnwGULMTGs15MW - hIPx6sW93zwrGiTsDImH49ILGF+NcX1AgAq90nG0j/l5zhDgXGJglX+K1xP99X1R - de3I4uoufPa5q+Pjmhy7muL+o4Qt0D0Vm86RqqjTkNPsr7gAJtt66A7TJrYiIoKn - GTIBsgM6egeFLLYQsT0ap/59HJismO2Pjx4Jk/jHOkC8TJsXQNRq1Km76VMBnuc0 - 2CMoD9pb38GjUUH94D4hJK4Ls/gJMF3ftKUyR8Sr/LjE6qU6Yj+ZpeEQP4kW9ANq - Lv9KSNDQQpRTL4LwGLTGomksLTQEekge7/q4J2TQRZNYJ/mxnrBKRcv9EAMgBMXq - Q+7GHtKDv9tJVlMfG/MRD3CMuuSRiT3OVbvMMkFzsPkqxYAP1CqE/JGvh67TzKI+ - MUfXKehA6TKuxrTVqCtoFIfGaqA9IWyoRTtugYq/xssB9ESeEYGeaM1A9Yueqz+h - KkBZO00jHSE= - -----END CERTIFICATE----- - ''; - "letsencrypt.org".key = builtins.toFile "letsencrypt.org.key" '' - -----BEGIN RSA PRIVATE KEY----- - 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 - -----END RSA PRIVATE KEY----- - ''; - "letsencrypt.org".cert = builtins.toFile "letsencrypt.org.cert" '' - -----BEGIN CERTIFICATE----- - MIIEpzCCAo8CAgKaMA0GCSqGSIb3DQEBCwUAMBYxFDASBgNVBAMMC1NuYWtlb2ls - IENBMCAXDTE5MTAxODA3NTQxNVoYDzIxMTkwOTI0MDc1NDE1WjAaMRgwFgYDVQQD - DA9sZXRzZW5jcnlwdC5vcmcwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC - AQD12l08TLMPf8EF2zu0D/nWz5aYsXJa4WurjIx3ZH6+LmC8rueUs1UqFiCJOYrZ - Sb5QSka5wmpkdxNJkDUHPhL/w0P8Aj0joSbC8GKdjn8+5vEQAuT1iIMD4jMfxkYU - zzBeDt8xtskCzK/5IcC2vaOYKyCCum4Pl+DOzan4XarT6hWh4XAwA5R0B/aM200s - SPZDoyJHler7AU5xG1eU2VdYhfc2ua5s7/E6kM2mzKPJgLkt35bToxLltMdJ2/no - CRSDY+6AwKGPXlM510QkgrzM9cVOUxjJ71IrCOE1Rmi997jFcJpOPaebOty4wovP - 5LewpB5NaOJFxjfDjNOUBuG0ZcONeOEw5usehYzx7dxMvg0ky+201K1d+JzFt5Ns - iJi77t20XSr6JZpmp7Fzo90BoikVnRdLD6LmIt1BmYHDNjs0uUelC6l+HrN7SoNR - VkAwO5ujgkpRMHMfpBO6EfH65Sbstzxh00Cufuj+8xkNDKbUSJrErFm4IZqoW+rx - kricFWwd9xduEX9cPYcyJ3e3siZtERW72qdz4Sf5pxT9IlpoveuMxboctUyvr69C - sLNiS8vMpimhSb0PUpyfp3w5/GXaIJpj0KQyvn/onWnXBxN1w3shVD8MUF5MNq7J - ZvJmQ7+U+hmhqRbJc7H1L22AKXOEWY2BGRm/3A35CC40NwIDAQABMA0GCSqGSIb3 - DQEBCwUAA4ICAQBbJwE+qc0j6JGHWe0TGjv1viJU3WuyJkMRi+ejx0p/k7Ntp5An - 2wLC7b/lVP/Nh+PKY/iXWn/BErv2MUo4POc1g8svgxsmMMh5KGGieIfGs7xT+JMH - dzZZM+pUpIB5fEO5JfjiOEOKDdAvRSs0mTAVYZEokGkXSNWyylvEaA16mHtMgPjo - Lm75d0O66RfJDdd/hTl8umGpF7kEGW1qYk2QmuPr7AqOa8na7olL5fMPh6Q7yRqx - GIS9JKQ0fWl8Ngk09WfwUN/kEMcp9Jl5iunNRkbpUJIM/lHFkSA7yOFFL+dVWzd4 - 2r+ddJXTFzW8Rwt65l8SV2MEhijEamKva3mqKLIRWxDsfFVT1T04LWFtnzMW4Z29 - UHF9Pi7XSyKz0Y/Lz31mNTkjJYbOvbnwok8lc3wFWHc+lummZk8IkCq8xfqzwmwX - Ow6EV+Q6VaQpOHumQZ12pBBLtL8DyDhWaRUgVy2vYpwYsMYa5BFMcKCynjlSewo9 - G2hNoW45cQZP1qHltRR9Xad7SaP7iTETDCiR7AWOqSpDipSh9eMfVW97ZbSfz+vl - xl8PZEZMTRIIRVXsPP+E8gtDUhUQp2+Vcz8r6q71qslXM09xl/501uaNjCc3hH2R - iw2N77Lho1F3FrBbHdML3RYHZI55eC9iQw6R4S+R4b+iWLJoHzHrW61itg== - -----END CERTIFICATE----- - ''; -} diff --git a/nixos/tests/common/resolver.nix b/nixos/tests/common/resolver.nix index 6be8d1d18e62..09a74de20faa 100644 --- a/nixos/tests/common/resolver.nix +++ b/nixos/tests/common/resolver.nix @@ -18,7 +18,7 @@ defining this option needs to be explicitly imported. The reason this option exists is for the - nixos/tests/common/letsencrypt module, which + nixos/tests/common/acme/server module, which needs that option to disable the resolver once the user has set its own resolver. ''; From 695fd78ac45763b02ae4c68abda28974bb72c96b Mon Sep 17 00:00:00 2001 From: Emily Date: Mon, 23 Mar 2020 17:58:36 +0000 Subject: [PATCH 074/219] nixos/tests/acme: use CAP_NET_BIND_SERVICE --- nixos/tests/acme.nix | 3 +-- nixos/tests/common/acme/server/default.nix | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/nixos/tests/acme.nix b/nixos/tests/acme.nix index 032432287bd0..693f02962f45 100644 --- a/nixos/tests/acme.nix +++ b/nixos/tests/acme.nix @@ -33,8 +33,7 @@ in import ./make-test-python.nix { serviceConfig = { ExecStart = "${pkgs.pebble}/bin/pebble-challtestsrv -dns01 ':53' -defaultIPv6 '' -defaultIPv4 '${nodes.webserver.config.networking.primaryIPAddress}'"; # Required to bind on privileged ports. - User = "root"; - Group = "root"; + AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" ]; }; }; }; diff --git a/nixos/tests/common/acme/server/default.nix b/nixos/tests/common/acme/server/default.nix index fdc053a2d828..1d6c2cc9d30a 100644 --- a/nixos/tests/common/acme/server/default.nix +++ b/nixos/tests/common/acme/server/default.nix @@ -126,8 +126,7 @@ in { ''; serviceConfig = { # Required to bind on privileged ports. - User = "root"; - Group = "root"; + AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" ]; }; }; }; From e6d5e83cf10f8d6d900c53f8b29399e3619434c7 Mon Sep 17 00:00:00 2001 From: Emily Date: Tue, 24 Mar 2020 05:13:24 +0000 Subject: [PATCH 075/219] nixos/tests/common/acme: enable Pebble strict mode This lets us get early warning about any bugs or backwards-compatibility hazards in lego. Pebble will default to this in the future, but doesn't currently; see https://github.com/letsencrypt/pebble/blob/v2.3.0/README.md#strict-mode. --- nixos/tests/common/acme/server/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/tests/common/acme/server/default.nix b/nixos/tests/common/acme/server/default.nix index 1d6c2cc9d30a..36c1a477392c 100644 --- a/nixos/tests/common/acme/server/default.nix +++ b/nixos/tests/common/acme/server/default.nix @@ -76,6 +76,7 @@ let httpPort = 80; tlsPort = 443; ocspResponderURL = "http://0.0.0.0:4002"; + strict = true; }; pebbleConfFile = pkgs.writeText "pebble.conf" (builtins.toJSON pebbleConf); From 21f183a3fe4eddbbb418cc1ee37a9f86526f675a Mon Sep 17 00:00:00 2001 From: Emily Date: Mon, 23 Mar 2020 16:23:53 +0000 Subject: [PATCH 076/219] nixos/tests/common/acme: don't set nameservers for client The resolver is mainly useful for the ACME server, and acme.nix uses its own DNS server to test DNS-01 challenges. --- nixos/tests/common/acme/client/default.nix | 4 ---- nixos/tests/common/acme/server/default.nix | 4 ++-- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/nixos/tests/common/acme/client/default.nix b/nixos/tests/common/acme/client/default.nix index 22ba6f4df194..80893da02524 100644 --- a/nixos/tests/common/acme/client/default.nix +++ b/nixos/tests/common/acme/client/default.nix @@ -5,10 +5,6 @@ let in { - networking.nameservers = [ - nodes.acme.config.networking.primaryIPAddress - ]; - security.acme = { server = "https://acme.test/dir"; email = "hostmaster@example.test"; diff --git a/nixos/tests/common/acme/server/default.nix b/nixos/tests/common/acme/server/default.nix index 36c1a477392c..1a0ee882572c 100644 --- a/nixos/tests/common/acme/server/default.nix +++ b/nixos/tests/common/acme/server/default.nix @@ -33,9 +33,9 @@ # override networking.nameservers like this: # # { -# acme = { nodes, ... }: { +# acme = { nodes, lib, ... }: { # imports = [ ./common/acme/server ]; -# networking.nameservers = [ +# networking.nameservers = lib.mkForce [ # nodes.myresolver.config.networking.primaryIPAddress # ]; # }; From 312e9037f49bf0b163d071dc68fe76c2b5d77319 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 18 Apr 2020 07:25:52 +0200 Subject: [PATCH 077/219] python2.pkgs.cryptography: fixup build of dependants ... most notably fix pyopenssl. I can't say I really understand this, but the commit seems safe enough. --- pkgs/development/python-modules/cryptography/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/cryptography/default.nix b/pkgs/development/python-modules/cryptography/default.nix index 22f647b216d5..9b14f4a6fc7d 100644 --- a/pkgs/development/python-modules/cryptography/default.nix +++ b/pkgs/development/python-modules/cryptography/default.nix @@ -17,6 +17,7 @@ , iso8601 , pytz , hypothesis +, enum34 }: buildPythonPackage rec { @@ -36,7 +37,7 @@ buildPythonPackage rec { packaging six ] ++ stdenv.lib.optional (!isPyPy) cffi - ++ stdenv.lib.optionals isPy27 [ ipaddress ]; + ++ stdenv.lib.optionals isPy27 [ ipaddress enum34 ]; checkInputs = [ cryptography_vectors From f37c9226fc41d204bf4cf5fe3787ef6d18b00213 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Sat, 18 Apr 2020 04:20:00 -0500 Subject: [PATCH 078/219] lean: 3.8.0 -> 3.9.0 --- pkgs/applications/science/logic/lean/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/science/logic/lean/default.nix b/pkgs/applications/science/logic/lean/default.nix index 594f596b5ef7..36df6ae0658f 100644 --- a/pkgs/applications/science/logic/lean/default.nix +++ b/pkgs/applications/science/logic/lean/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "lean"; - version = "3.8.0"; + version = "3.9.0"; src = fetchFromGitHub { owner = "leanprover-community"; repo = "lean"; rev = "v${version}"; - sha256 = "0frs2vhxlzdliyydb462c1886dn585zd7yp7hdxzsri2v6gdh89g"; + sha256 = "0sklw211cmqp4y0c6nycfavpdxdpfwhq9a4sbwdlqd5agyf85h1j"; }; nativeBuildInputs = [ cmake ]; From 6d02fcb2c2fe6e1198dabba2566a859568e4b8d3 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Sat, 18 Apr 2020 04:20:00 -0500 Subject: [PATCH 079/219] zeek: 3.1.1 -> 3.1.2 --- pkgs/applications/networking/ids/zeek/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/ids/zeek/default.nix b/pkgs/applications/networking/ids/zeek/default.nix index 6faacf2e67e6..8fe856f9773f 100644 --- a/pkgs/applications/networking/ids/zeek/default.nix +++ b/pkgs/applications/networking/ids/zeek/default.nix @@ -5,11 +5,11 @@ let in stdenv.mkDerivation rec { pname = "zeek"; - version = "3.1.1"; + version = "3.1.2"; src = fetchurl { - url = "https://old.zeek.org/downloads/zeek-${version}.tar.gz"; - sha256 = "0siybzdp8w62jqk5vdi5fxwvj6cn4r6c2d4z2axd4rj5vhv5zvx2"; + url = "https://download.zeek.org/zeek-${version}.tar.gz"; + sha256 = "18aa4pfwav8m6vq7cr4bhfg243da54ak933rqbriljnhsrgp4n0q"; }; nativeBuildInputs = [ cmake flex bison file ]; From 4c538d022d7a573f9d155842327e5751109bec34 Mon Sep 17 00:00:00 2001 From: Lionello Lunesu Date: Sat, 18 Apr 2020 18:11:47 +0800 Subject: [PATCH 080/219] ldc: 1.17.0 -> 1.20.1 --- pkgs/development/compilers/ldc/binary.nix | 41 +++++ pkgs/development/compilers/ldc/bootstrap.nix | 10 ++ pkgs/development/compilers/ldc/default.nix | 174 +------------------ pkgs/development/compilers/ldc/generic.nix | 164 +++++++++++++++++ pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 1 + 6 files changed, 220 insertions(+), 171 deletions(-) create mode 100644 pkgs/development/compilers/ldc/binary.nix create mode 100644 pkgs/development/compilers/ldc/bootstrap.nix create mode 100644 pkgs/development/compilers/ldc/generic.nix diff --git a/pkgs/development/compilers/ldc/binary.nix b/pkgs/development/compilers/ldc/binary.nix new file mode 100644 index 000000000000..41a70662948e --- /dev/null +++ b/pkgs/development/compilers/ldc/binary.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchurl, curl, tzdata, autoPatchelfHook, fixDarwinDylibNames +, version, hashes }: +with stdenv; +let + OS = if hostPlatform.isDarwin then "osx" else hostPlatform.parsed.kernel.name; + ARCH = toString hostPlatform.parsed.cpu.name; +in mkDerivation { + pname = "ldc-bootstrap"; + inherit version; + + src = fetchurl rec { + name = "ldc2-${version}-${OS}-${ARCH}.tar.xz"; + url = "https://github.com/ldc-developers/ldc/releases/download/v${version}/${name}"; + sha256 = hashes."${OS}-${ARCH}" or (throw "missing bootstrap sha256 for ${OS}-${ARCH}"); + }; + + dontConfigure = true; + dontBuild = true; + + nativeBuildInputs = [ fixDarwinDylibNames autoPatchelfHook ]; + propagatedBuildInputs = [ curl tzdata ]; + + installPhase = '' + mkdir -p $out + + mv bin etc import lib LICENSE README $out/ + + # fix paths in ldc2.conf (one level less) + # substituteInPlace $out/bin/ldc2.conf --replace "/../../" "/../" + ''; + + meta = with lib; { + inherit version; + description = "The LLVM-based D Compiler"; + homepage = "https://github.com/ldc-developers/ldc"; + # from https://github.com/ldc-developers/ldc/blob/master/LICENSE + license = with licenses; [ bsd3 boost mit ncsa gpl2Plus ]; + maintainers = with maintainers; [ ThomasMader lionello ]; + platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" ]; + }; +} diff --git a/pkgs/development/compilers/ldc/bootstrap.nix b/pkgs/development/compilers/ldc/bootstrap.nix new file mode 100644 index 000000000000..fde4c8426848 --- /dev/null +++ b/pkgs/development/compilers/ldc/bootstrap.nix @@ -0,0 +1,10 @@ +{ callPackage }: +callPackage ./binary.nix { + version = "1.19.0"; + hashes = { + # Get these from `nix-prefetch-url https://github.com/ldc-developers/ldc/releases/download/v1.19.0/ldc2-1.19.0-osx-x86_64.tar.xz` etc.. + osx-x86_64 = "1bp3xkh9zp64dzq8isanib1gacb3nfbl70qv15qygwk1zan6zgy7"; + linux-x86_64 = "146grr2lwarfk13wgkpyb77xb6b3as1is2rf4s2hipqjmc8biy1h"; + linux-aarch64 = "1fv6jshfvi15m7masgxq1hgp216qjd5amizrqdf26vhrq3a08li3"; + }; +} diff --git a/pkgs/development/compilers/ldc/default.nix b/pkgs/development/compilers/ldc/default.nix index 19fe2981c833..5a4baabcf8d8 100644 --- a/pkgs/development/compilers/ldc/default.nix +++ b/pkgs/development/compilers/ldc/default.nix @@ -1,173 +1,5 @@ -{ stdenv, fetchurl, cmake, ninja, llvm_5, llvm_8, curl, tzdata -, libconfig, lit, gdb, unzip, darwin, bash -, callPackage, makeWrapper, runCommand, targetPackages -, bootstrapVersion ? false -, version ? "1.17.0" -, ldcSha256 ? "1aag5jfrng6p4ms0fs90hjbv9bcj3hj8h52r68c3cm6racdajbva" -}: - -let - bootstrapLdc = if !bootstrapVersion then - # LDC 0.17.x is the last version which doesn't need a working D compiler to - # build so we use that version to bootstrap the actual build. - callPackage ./default.nix { - bootstrapVersion = true; - version = "0.17.6"; - ldcSha256 = "0qf5kbxddgmg3kqzi0kf4bgv8vdrnv16y07hcpm0cwv9mc3qr2w6"; - } - else - ""; - - pathConfig = runCommand "ldc-lib-paths" {} '' - mkdir $out - echo ${tzdata}/share/zoneinfo/ > $out/TZDatabaseDirFile - echo ${curl.out}/lib/libcurl${stdenv.hostPlatform.extensions.sharedLibrary} > $out/LibcurlPathFile - ''; -in - -stdenv.mkDerivation rec { - pname = "ldc"; - inherit version; - - enableParallelBuilding = true; - - src = fetchurl { - url = "https://github.com/ldc-developers/ldc/releases/download/v${version}/ldc-${version}-src.tar.gz"; - sha256 = ldcSha256; - }; - - # https://issues.dlang.org/show_bug.cgi?id=19553 - hardeningDisable = [ "fortify" ]; - - postUnpack = '' - patchShebangs . - '' - - + stdenv.lib.optionalString (!bootstrapVersion) '' - rm ldc-${version}-src/tests/d2/dmd-testsuite/fail_compilation/mixin_gc.d - rm ldc-${version}-src/tests/d2/dmd-testsuite/runnable/xtest46_gc.d - rm ldc-${version}-src/tests/d2/dmd-testsuite/runnable/testptrref_gc.d - - # test depends on current year - rm ldc-${version}-src/tests/d2/dmd-testsuite/compilable/ddocYear.d - '' - - + stdenv.lib.optionalString (!bootstrapVersion && stdenv.hostPlatform.isDarwin) '' - # https://github.com/NixOS/nixpkgs/issues/34817 - rm -r ldc-${version}-src/tests/plugins/addFuncEntryCall - ''; - - postPatch = '' - # Setting SHELL=$SHELL when dmd testsuite is run doesn't work on Linux somehow - substituteInPlace tests/d2/dmd-testsuite/Makefile --replace "SHELL=/bin/bash" "SHELL=${bash}/bin/bash" - '' - - + stdenv.lib.optionalString (!bootstrapVersion && stdenv.hostPlatform.isLinux) '' - substituteInPlace runtime/phobos/std/socket.d --replace "assert(ih.addrList[0] == 0x7F_00_00_01);" "" - '' - - + stdenv.lib.optionalString (!bootstrapVersion && stdenv.hostPlatform.isDarwin) '' - substituteInPlace runtime/phobos/std/socket.d --replace "foreach (name; names)" "names = []; foreach (name; names)" - '' - - + stdenv.lib.optionalString (bootstrapVersion && stdenv.hostPlatform.isDarwin) '' - # Was not able to compile on darwin due to "__inline_isnanl" - # being undefined. - # TODO Remove with version > 0.17.6 - substituteInPlace dmd2/root/port.c --replace __inline_isnanl __inline_isnan - ''; - - nativeBuildInputs = [ cmake ninja makeWrapper unzip ] - ++ stdenv.lib.optionals (!bootstrapVersion) [ - bootstrapLdc lit lit.python - ] - ++ stdenv.lib.optional (!bootstrapVersion && stdenv.hostPlatform.isDarwin) - # https://github.com/NixOS/nixpkgs/issues/57120 - # https://github.com/NixOS/nixpkgs/pull/59197#issuecomment-481972515 - llvm_5 - ++ stdenv.lib.optional (!bootstrapVersion && !stdenv.hostPlatform.isDarwin) - llvm_8 - ++ stdenv.lib.optional (!bootstrapVersion && !stdenv.hostPlatform.isDarwin) - # https://github.com/NixOS/nixpkgs/pull/36378#issuecomment-385034818 - gdb - ++ stdenv.lib.optionals (bootstrapVersion) [ - libconfig llvm_5 - ] - ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin - darwin.apple_sdk.frameworks.Foundation; - - - buildInputs = [ curl tzdata ]; - - cmakeFlags = stdenv.lib.optionals (!bootstrapVersion) [ - "-DD_FLAGS=-d-version=TZDatabaseDir;-d-version=LibcurlPath;-J${pathConfig}" - "-DCMAKE_BUILD_TYPE=Release" - ]; - - postConfigure = '' - export DMD=$PWD/bin/ldmd2 - ''; - - makeFlags = [ "DMD=$DMD" ]; - - fixNames = stdenv.lib.optionalString stdenv.hostPlatform.isDarwin '' - fixDarwinDylibNames() { - local flags=() - - for fn in "$@"; do - flags+=(-change "$(basename "$fn")" "$fn") - done - - for fn in "$@"; do - if [ -L "$fn" ]; then continue; fi - echo "$fn: fixing dylib" - install_name_tool -id "$fn" "''${flags[@]}" "$fn" - done - } - - fixDarwinDylibNames $(find "$(pwd)/lib" -name "*.dylib") - export DYLD_LIBRARY_PATH=$(pwd)/lib - ''; - - # https://github.com/ldc-developers/ldc/issues/2497#issuecomment-459633746 - additionalExceptions = stdenv.lib.optionalString stdenv.hostPlatform.isDarwin - "|druntime-test-shared"; - - doCheck = !bootstrapVersion; - - checkPhase = stdenv.lib.optionalString doCheck '' - # Build default lib test runners - ninja -j$NIX_BUILD_CORES all-test-runners - - ${fixNames} - - # Run dmd testsuite - export DMD_TESTSUITE_MAKE_ARGS="-j$NIX_BUILD_CORES DMD=$DMD CC=$CXX" - ctest -V -R "dmd-testsuite" - - # Build and run LDC D unittests. - ctest --output-on-failure -R "ldc2-unittest" - - # Run LIT testsuite. - ctest -V -R "lit-tests" - - # Run default lib unittests - ctest -j$NIX_BUILD_CORES --output-on-failure -E "ldc2-unittest|lit-tests|dmd-testsuite${additionalExceptions}" - ''; - - postInstall = '' - wrapProgram $out/bin/ldc2 \ - --prefix PATH ":" "${targetPackages.stdenv.cc}/bin" \ - --set-default CC "${targetPackages.stdenv.cc}/bin/cc" - ''; - - meta = with stdenv.lib; { - description = "The LLVM-based D compiler"; - homepage = "https://github.com/ldc-developers/ldc"; - # from https://github.com/ldc-developers/ldc/blob/master/LICENSE - license = with licenses; [ bsd3 boost mit ncsa gpl2Plus ]; - maintainers = with maintainers; [ ThomasMader ]; - platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ]; - }; +import ./generic.nix { + version = "1.20.1"; + ldcSha256 = "1bqsgab22v02pc3c9gcyf15y7aimadv24d68icaw5lpgnvzxy89b"; } diff --git a/pkgs/development/compilers/ldc/generic.nix b/pkgs/development/compilers/ldc/generic.nix new file mode 100644 index 000000000000..93ffe37785d7 --- /dev/null +++ b/pkgs/development/compilers/ldc/generic.nix @@ -0,0 +1,164 @@ +{ bootstrapVersion ? false +, version +, ldcSha256 +}: +{ stdenv, fetchurl, cmake, ninja, llvm_5, llvm_8, curl, tzdata +, libconfig, lit, gdb, unzip, darwin, bash, ldcBootstrap +, callPackage, makeWrapper, runCommand, targetPackages +}: + +let + pathConfig = runCommand "ldc-lib-paths" {} '' + mkdir $out + echo ${tzdata}/share/zoneinfo/ > $out/TZDatabaseDirFile + echo ${curl.out}/lib/libcurl${stdenv.hostPlatform.extensions.sharedLibrary} > $out/LibcurlPathFile + ''; + + bootstrapLdc = if bootstrapVersion then null else ldcBootstrap; + +in + +stdenv.mkDerivation rec { + pname = "ldc"; + inherit version; + + enableParallelBuilding = true; + + src = fetchurl { + url = "https://github.com/ldc-developers/ldc/releases/download/v${version}/ldc-${version}-src.tar.gz"; + sha256 = ldcSha256; + }; + + # https://issues.dlang.org/show_bug.cgi?id=19553 + hardeningDisable = [ "fortify" ]; + + postUnpack = '' + patchShebangs . + '' + + + stdenv.lib.optionalString (!bootstrapVersion) '' + rm ldc-${version}-src/tests/d2/dmd-testsuite/fail_compilation/mixin_gc.d + rm ldc-${version}-src/tests/d2/dmd-testsuite/runnable/xtest46_gc.d + rm ldc-${version}-src/tests/d2/dmd-testsuite/runnable/testptrref_gc.d + + # test depends on current year + rm ldc-${version}-src/tests/d2/dmd-testsuite/compilable/ddocYear.d + '' + + + stdenv.lib.optionalString (!bootstrapVersion && stdenv.hostPlatform.isDarwin) '' + # https://github.com/NixOS/nixpkgs/issues/34817 + rm -r ldc-${version}-src/tests/plugins/addFuncEntryCall + ''; + + postPatch = '' + # Setting SHELL=$SHELL when dmd testsuite is run doesn't work on Linux somehow + substituteInPlace tests/d2/dmd-testsuite/Makefile --replace "SHELL=/bin/bash" "SHELL=${bash}/bin/bash" + '' + + + stdenv.lib.optionalString (!bootstrapVersion && stdenv.hostPlatform.isLinux) '' + substituteInPlace runtime/phobos/std/socket.d --replace "assert(ih.addrList[0] == 0x7F_00_00_01);" "" + '' + + + stdenv.lib.optionalString (!bootstrapVersion && stdenv.hostPlatform.isDarwin) '' + substituteInPlace runtime/phobos/std/socket.d --replace "foreach (name; names)" "names = []; foreach (name; names)" + '' + + + stdenv.lib.optionalString (bootstrapVersion && stdenv.hostPlatform.isDarwin) '' + # Was not able to compile on darwin due to "__inline_isnanl" + # being undefined. + # TODO Remove with version > 0.17.6 + substituteInPlace dmd2/root/port.c --replace __inline_isnanl __inline_isnan + ''; + + nativeBuildInputs = [ cmake ninja makeWrapper unzip ] + ++ stdenv.lib.optionals (!bootstrapVersion) [ + bootstrapLdc lit lit.python + ] + ++ stdenv.lib.optional (!bootstrapVersion && stdenv.hostPlatform.isDarwin) + # https://github.com/NixOS/nixpkgs/issues/57120 + # https://github.com/NixOS/nixpkgs/pull/59197#issuecomment-481972515 + llvm_5 + ++ stdenv.lib.optional (!bootstrapVersion && !stdenv.hostPlatform.isDarwin) + llvm_8 + ++ stdenv.lib.optional (!bootstrapVersion && !stdenv.hostPlatform.isDarwin) + # https://github.com/NixOS/nixpkgs/pull/36378#issuecomment-385034818 + gdb + ++ stdenv.lib.optionals (bootstrapVersion) [ + libconfig llvm_5 + ] + ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin + darwin.apple_sdk.frameworks.Foundation; + + buildInputs = [ curl tzdata ]; + + cmakeFlags = stdenv.lib.optionals (!bootstrapVersion) [ + "-DD_FLAGS=-d-version=TZDatabaseDir;-d-version=LibcurlPath;-J${pathConfig}" + "-DCMAKE_BUILD_TYPE=Release" + ]; + + postConfigure = '' + export DMD=$PWD/bin/ldmd2 + ''; + + makeFlags = [ "DMD=$DMD" ]; + + fixNames = stdenv.lib.optionalString stdenv.hostPlatform.isDarwin '' + fixDarwinDylibNames() { + local flags=() + + for fn in "$@"; do + flags+=(-change "$(basename "$fn")" "$fn") + done + + for fn in "$@"; do + if [ -L "$fn" ]; then continue; fi + echo "$fn: fixing dylib" + install_name_tool -id "$fn" "''${flags[@]}" "$fn" + done + } + + fixDarwinDylibNames $(find "$(pwd)/lib" -name "*.dylib") + export DYLD_LIBRARY_PATH=$(pwd)/lib + ''; + + # https://github.com/ldc-developers/ldc/issues/2497#issuecomment-459633746 + additionalExceptions = stdenv.lib.optionalString stdenv.hostPlatform.isDarwin + "|druntime-test-shared"; + + doCheck = !bootstrapVersion; + + checkPhase = stdenv.lib.optionalString doCheck '' + # Build default lib test runners + ninja -j$NIX_BUILD_CORES all-test-runners + + ${fixNames} + + # Run dmd testsuite + export DMD_TESTSUITE_MAKE_ARGS="-j$NIX_BUILD_CORES DMD=$DMD" + ctest -V -R "dmd-testsuite" + + # Build and run LDC D unittests. + ctest --output-on-failure -R "ldc2-unittest" + + # Run LIT testsuite. + ctest -V -R "lit-tests" + + # Run default lib unittests + ctest -j$NIX_BUILD_CORES --output-on-failure -E "ldc2-unittest|lit-tests|dmd-testsuite${additionalExceptions}" + ''; + + postInstall = '' + wrapProgram $out/bin/ldc2 \ + --prefix PATH ":" "${targetPackages.stdenv.cc}/bin" \ + --set-default CC "${targetPackages.stdenv.cc}/bin/cc" + ''; + + meta = with stdenv.lib; { + description = "The LLVM-based D compiler"; + homepage = "https://github.com/ldc-developers/ldc"; + # from https://github.com/ldc-developers/ldc/blob/master/LICENSE + license = with licenses; [ bsd3 boost mit ncsa gpl2Plus ]; + maintainers = with maintainers; [ ThomasMader lionello ]; + platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ]; + }; +} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 6ebf2bcf8df7..73e2ee3a2074 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -215,6 +215,7 @@ mapAliases ({ keymon = throw "keymon has been removed from nixpkgs, as it's abandoned and archived."; # 2019-12-10 kvm = qemu_kvm; # added 2018-04-25 latinmodern-math = lmmath; + ldc2 = ldc; # added 2020-04-18 letsencrypt = certbot; # added 2016-05-16 libaudit = audit; # added 2018-04-25 libcanberra_gtk2 = libcanberra-gtk2; # added 2018-02-25 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ef8ea2a268c7..3654c4c45a11 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4554,6 +4554,7 @@ in lalezar-fonts = callPackage ../data/fonts/lalezar-fonts { }; + ldcBootstrap = callPackage ../development/compilers/ldc/bootstrap.nix { }; ldc = callPackage ../development/compilers/ldc { }; lbreakout2 = callPackage ../games/lbreakout2 { }; From 8a5fa6531f87c769651b679b75a9693d8fddf646 Mon Sep 17 00:00:00 2001 From: Las Date: Sat, 18 Apr 2020 15:57:32 +0900 Subject: [PATCH 081/219] age: 1.0.0-beta2 -> unstable-2020-03-25 There has been no new official release of age, but some important fixes and changes have been done since the last release in December: https://github.com/FiloSottile/age/compare/v1.0.0-beta2...f0f8092d60bb96737fa096c29ec6d8adb5810390 --- pkgs/tools/security/age/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/security/age/default.nix b/pkgs/tools/security/age/default.nix index bde597ba9f30..c8b4f069f795 100644 --- a/pkgs/tools/security/age/default.nix +++ b/pkgs/tools/security/age/default.nix @@ -2,9 +2,9 @@ buildGoModule rec { pname = "age"; - version = "1.0.0-beta2"; + version = "unstable-2020-03-25"; goPackagePath = "github.com/FiloSottile/age"; - modSha256 = "0kwdwhkxgqjd8h1p7pm4h4xidp2vk840h1j4qya4qz8bjf9vskl9"; + modSha256 = "00yhn1894ni8bvkqm1vr0rqkky52pkhvdzbi2sqx3czlgb5ibw3h"; subPackages = [ "cmd/age" @@ -14,8 +14,8 @@ buildGoModule rec { src = fetchFromGitHub { owner = "FiloSottile"; repo = "age"; - rev = "v${version}"; - sha256 = "1n1ww8yjw0mg00dvnfmggww9kwp1hls0a85iv6vx9k89mzv8mdrq"; + rev = "f0f8092d60bb96737fa096c29ec6d8adb5810390"; + sha256 = "079kfc8d1pr39hr4qnx48kviyzwg4p8m4pz0bdkypns4aq8ppbfk"; }; meta = with lib; { From dfe70a2d6347aa9a2bf2fa34124cc835c0d51c4b Mon Sep 17 00:00:00 2001 From: Benjamin Hipple Date: Sat, 18 Apr 2020 11:38:48 -0400 Subject: [PATCH 082/219] dnnl: 1.2.2 -> 1.4 The upstream readme has a note about renaming the git repo and libname: https://github.com/oneapi-src/oneDNN#oneapi-deep-neural-network-library-onednn Changelog: https://github.com/oneapi-src/oneDNN/releases/tag/v1.4 --- .../libraries/dnnl/bash-to-sh.patch | 13 ---------- pkgs/development/libraries/dnnl/default.nix | 24 +++++++++---------- 2 files changed, 11 insertions(+), 26 deletions(-) delete mode 100644 pkgs/development/libraries/dnnl/bash-to-sh.patch diff --git a/pkgs/development/libraries/dnnl/bash-to-sh.patch b/pkgs/development/libraries/dnnl/bash-to-sh.patch deleted file mode 100644 index 063d9ef952be..000000000000 --- a/pkgs/development/libraries/dnnl/bash-to-sh.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt -index f6810246..e1d2a1f1 100644 ---- a/tests/CMakeLists.txt -+++ b/tests/CMakeLists.txt -@@ -72,7 +72,7 @@ if(UNIX OR MINGW) - set(test_c_symbols "${CMAKE_CURRENT_BINARY_DIR}/test_c_symbols.c") - add_custom_command( - OUTPUT ${test_c_symbols} -- COMMAND /bin/bash ${CMAKE_CURRENT_SOURCE_DIR}/generate_c_symbols_refs.sh -+ COMMAND @bash@/bin/bash ${CMAKE_CURRENT_SOURCE_DIR}/generate_c_symbols_refs.sh - ${CMAKE_CURRENT_SOURCE_DIR}/.. ${test_c_symbols} ${include_dirs} - ) - register_exe(test_c_symbols-c ${test_c_symbols} "test") diff --git a/pkgs/development/libraries/dnnl/default.nix b/pkgs/development/libraries/dnnl/default.nix index 40d9030b9534..0d29c6eae8bf 100644 --- a/pkgs/development/libraries/dnnl/default.nix +++ b/pkgs/development/libraries/dnnl/default.nix @@ -1,23 +1,20 @@ { stdenv, lib, fetchFromGitHub, substituteAll, cmake, bash }: +# This was originally called mkl-dnn, then it was renamed to dnnl, and it has +# just recently been renamed again to oneDNN. In a follow-up, let's move the +# attr and alias dnnl -> oneDNN. See here for details: +# https://github.com/oneapi-src/oneDNN#oneapi-deep-neural-network-library-onednn stdenv.mkDerivation rec { pname = "dnnl"; - version = "1.2.2"; + version = "1.4"; src = fetchFromGitHub { - owner = "intel"; - repo = "mkl-dnn"; + owner = "oneapi-src"; + repo = "oneDNN"; rev = "v${version}"; - sha256 = "0ydy7ibm6sh1awrikyj938n26cpg5magnxraz2d0pj76irv4vj5m"; + sha256 = "162fb0c7klahz2irchhyxympi4fq4yp284apc53cadbss41mzld9"; }; - # Generic fix merged upstream in https://github.com/intel/mkl-dnn/pull/631 - # Delete after next release - patches = [ (substituteAll { - src = ./bash-to-sh.patch; - inherit bash; - }) ]; - outputs = [ "out" "dev" "doc" ]; nativeBuildInputs = [ cmake ]; @@ -36,8 +33,9 @@ stdenv.mkDerivation rec { ''; meta = with lib; { - description = "Deep Neural Network Library (DNNL)"; - homepage = "https://intel.github.io/mkl-dnn/dev_guide_transition_to_dnnl.html"; + description = "oneAPI Deep Neural Network Library (oneDNN)"; + homepage = "https://01.org/dnnl"; + changelog = "https://github.com/oneapi-src/oneDNN/releases/tag/v${version}"; license = licenses.asl20; platforms = [ "x86_64-linux" ]; maintainers = with maintainers; [ alexarice bhipple ]; From 07a85c01ac02d157dbad7ae59f1dc355a03d3913 Mon Sep 17 00:00:00 2001 From: xrelkd <46590321+xrelkd@users.noreply.github.com> Date: Wed, 15 Apr 2020 14:08:47 +0800 Subject: [PATCH 083/219] rshijack: init at 0.3.0 --- pkgs/tools/networking/rshijack/default.nix | 23 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/tools/networking/rshijack/default.nix diff --git a/pkgs/tools/networking/rshijack/default.nix b/pkgs/tools/networking/rshijack/default.nix new file mode 100644 index 000000000000..59558028c01e --- /dev/null +++ b/pkgs/tools/networking/rshijack/default.nix @@ -0,0 +1,23 @@ +{ lib, fetchFromGitHub, rustPlatform }: + +rustPlatform.buildRustPackage rec { + pname = "rshijack"; + version = "0.3.0"; + + src = fetchFromGitHub { + owner = "kpcyrd"; + repo = pname; + rev = "v${version}"; + sha256 = "0y01hi3jpfawqlqs8ka0vwfhjw5j5gkhk2nz5m13ns2h27bw20v7"; + }; + + cargoSha256 = "0l1kavacnjvi22l6pawgkqqxnjaizi3pddqkhwjshw4pzzixzvli"; + + meta = with lib; { + description = "TCP connection hijacker"; + homepage = "https://github.com/kpcyrd/rshijack"; + license = licenses.gpl3; + maintainers = with maintainers; [ xrelkd ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 26037d86c634..2cbfbd05d4e2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6343,6 +6343,8 @@ in rrdtool = callPackage ../tools/misc/rrdtool { }; + rshijack = callPackage ../tools/networking/rshijack { }; + rsibreak = libsForQt5.callPackage ../applications/misc/rsibreak { }; rss2email = callPackage ../applications/networking/feedreaders/rss2email { From 94d88d3b70916f02ec86bf08945c20bdf5526cc2 Mon Sep 17 00:00:00 2001 From: Gabor Greif Date: Sat, 18 Apr 2020 19:26:40 +0200 Subject: [PATCH 084/219] wasmtime-0.12.0: fix cargoSha256 --- pkgs/development/interpreters/wasmtime/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/wasmtime/default.nix b/pkgs/development/interpreters/wasmtime/default.nix index 6bb17e70958c..79222749dc4b 100644 --- a/pkgs/development/interpreters/wasmtime/default.nix +++ b/pkgs/development/interpreters/wasmtime/default.nix @@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec { fetchSubmodules = true; }; - cargoSha256 = "0wqd2yy6ih1rcz1fq7x3aiqq1ma2nmif1w8r8x0vpxjxk395zil9"; + cargoSha256 = "0vyxp74jlnrisk0kblsbj9d9a54wcgzbyjm7iqav1k4ns3syrnmh"; nativeBuildInputs = [ python cmake clang ]; buildInputs = [ llvmPackages.libclang ] ++ From 08d83c16416abecef6adcc051f3536076e133f64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Milan=20P=C3=A4ssler?= Date: Sat, 18 Apr 2020 21:27:14 +0200 Subject: [PATCH 085/219] docker: add git to extraPath When building a docker container from git, docker was missing the git binary in $PATH. --- pkgs/applications/virtualization/docker/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix index 131d6d7675ed..f1b3475d9bca 100644 --- a/pkgs/applications/virtualization/docker/default.nix +++ b/pkgs/applications/virtualization/docker/default.nix @@ -1,7 +1,7 @@ { stdenv, lib, fetchFromGitHub, makeWrapper, removeReferencesTo, pkgconfig , go-md2man, go, containerd, runc, docker-proxy, tini, libtool , sqlite, iproute, lvm2, systemd -, btrfs-progs, iptables, e2fsprogs, xz, utillinux, xfsprogs +, btrfs-progs, iptables, e2fsprogs, xz, utillinux, xfsprogs, git , procps, libseccomp }: @@ -123,7 +123,7 @@ rec { outputs = ["out" "man"]; - extraPath = optionals (stdenv.isLinux) (makeBinPath [ iproute iptables e2fsprogs xz xfsprogs procps utillinux ]); + extraPath = optionals (stdenv.isLinux) (makeBinPath [ iproute iptables e2fsprogs xz xfsprogs procps utillinux git ]); installPhase = optionalString (stdenv.isLinux) '' install -Dm755 ./components/engine/bundles/dynbinary-daemon/dockerd $out/libexec/docker/dockerd From 16c6b2de8d004ef429c4634342b2e34eb8a3c870 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sat, 18 Apr 2020 22:18:11 +0200 Subject: [PATCH 086/219] gitAndTools.delta: 0.0.17 -> 0.0.18 https://github.com/dandavison/delta/releases/tag/0.0.18 --- .../git-and-tools/delta/default.nix | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/version-management/git-and-tools/delta/default.nix b/pkgs/applications/version-management/git-and-tools/delta/default.nix index dff06d384dc7..7bdeae65899c 100644 --- a/pkgs/applications/version-management/git-and-tools/delta/default.nix +++ b/pkgs/applications/version-management/git-and-tools/delta/default.nix @@ -1,17 +1,20 @@ -{ lib, fetchFromGitHub, rustPlatform }: +{ lib, fetchFromGitHub, rustPlatform, llvmPackages }: rustPlatform.buildRustPackage rec { pname = "delta"; - version = "0.0.17"; + version = "0.0.18"; src = fetchFromGitHub { owner = "dandavison"; repo = pname; rev = version; - sha256 = "1j01h60snciqp4psyxf67j3gbmi02c1baprsg9frzjacawbx8cz7"; + sha256 = "0cpd60861k9nd2gbzyb2hg5npnkgvsnyrvv7mlm30vb1833gz94z"; }; - cargoSha256 = "176bfd57gc9casvk0p10ilvzw3q3rkkv7qflja778vrwr9zrmkzq"; + LLVM_CONFIG_PATH = "${llvmPackages.llvm}/bin/llvm-config"; + LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib"; + + cargoSha256 = "12gl50q5hf6nq571fqxfv61z4mwfjyw4jb2yqyqbsinwj2frwaxn"; meta = with lib; { homepage = "https://github.com/dandavison/delta"; From f63bc540cbd559736f1671e4ee10e4560b3d5d2a Mon Sep 17 00:00:00 2001 From: taku0 Date: Wed, 15 Apr 2020 03:12:54 +0900 Subject: [PATCH 087/219] flashplayer: 32.0.0.344 -> 32.0.0.363 --- .../networking/browsers/chromium/plugins.nix | 4 ++-- .../browsers/mozilla-plugins/flashplayer/default.nix | 10 +++++----- .../mozilla-plugins/flashplayer/standalone.nix | 6 +++--- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/applications/networking/browsers/chromium/plugins.nix b/pkgs/applications/networking/browsers/chromium/plugins.nix index 434bd77b6d18..1dd9baa628ab 100644 --- a/pkgs/applications/networking/browsers/chromium/plugins.nix +++ b/pkgs/applications/networking/browsers/chromium/plugins.nix @@ -45,11 +45,11 @@ let flash = stdenv.mkDerivation rec { pname = "flashplayer-ppapi"; - version = "32.0.0.344"; + version = "32.0.0.363"; src = fetchzip { url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/${version}/flash_player_ppapi_linux.x86_64.tar.gz"; - sha256 = "05ijlgsby9zxx0qs6f3vav1z0p6xr1cg6idl4akxvfmsl6hn6hkq"; + sha256 = "0znk8an892mykgbz56hyv3gz65vc9mhb3vn96c6bsvicwl1fn460"; stripRoot = false; }; diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix index 0cf73512fcb1..6672a75d574d 100644 --- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix +++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix @@ -74,7 +74,7 @@ let in stdenv.mkDerivation rec { pname = "flashplayer"; - version = "32.0.0.344"; + version = "32.0.0.363"; src = fetchurl { url = @@ -85,14 +85,14 @@ stdenv.mkDerivation rec { sha256 = if debug then if arch == "x86_64" then - "1kkwijxlcs1rlqxr1vj51h95fwwrp5m0c9lngqpncgmmhh8v9dyr" + "06711k4vbn6mqfd8gvx2snsxyalhw15hn5b64sja8726z5rxvzy7" else - "0r47s19fw7gsph73rd5jb2zfsjwz7mjawm6c49rir9rsa0zxrsks" + "0v584aqhy4xk08afi3ypkq4mqjq57y136z82i5ixyim88dqbaf4f" else if arch == "x86_64" then - "1ki3i7zw0q48xf01xjfm1mpizc5flk768p9hqxpg881r4h65dh6b" + "1g1ijxypm8a8mfc1x58gksmaakqpp7xmf277wiir8zqjn3vd6c64" else - "1v527i60sljwyvv4l1kg9ml05skjgm3naynlswd35hsz258jnxl4"; + "13nbxmqmbxqvdhdwdqimim2f9fz3y2vrsx6b3pck6352m4i4wzh8"; }; nativeBuildInputs = [ unzip ]; diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix index 64dd87c4ace2..3661f6edb530 100644 --- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix +++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix @@ -50,7 +50,7 @@ stdenv.mkDerivation { pname = "flashplayer-standalone"; - version = "32.0.0.344"; + version = "32.0.0.363"; src = fetchurl { url = @@ -60,9 +60,9 @@ stdenv.mkDerivation { "https://fpdownload.macromedia.com/pub/flashplayer/updaters/32/flash_player_sa_linux.x86_64.tar.gz"; sha256 = if debug then - "1ymsk07xmnanyv86r58ar1l4wgjarlq0fc111ajc76pp8dsxnfx8" + "03zhza8lvc1nvz3racwfsajfd6rnbw3g56dp5wvr1qmaps8xaaqg" else - "0wiwpn4a0jxslw4ahalq74rksn82y0aqa3lrjr9qs7kdcak74vky"; + "0bhp7jv2l2agfzr8m564k749a5g75dw1390phlwvf49n1h8ldap2"; }; nativeBuildInputs = [ unzip ]; From 2c45fa52a42c50cf3cd2dcc6483d2ed19d733025 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Sat, 18 Apr 2020 23:13:20 +0200 Subject: [PATCH 088/219] lib/licenses: use https where possible --- lib/licenses.nix | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/lib/licenses.nix b/lib/licenses.nix index 1f78d67a1b20..94bcd777f0d1 100644 --- a/lib/licenses.nix +++ b/lib/licenses.nix @@ -2,7 +2,7 @@ let spdx = lic: lic // { - url = "http://spdx.org/licenses/${lic.spdxId}.html"; + url = "https://spdx.org/licenses/${lic.spdxId}.html"; }; in @@ -40,13 +40,13 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { amazonsl = { fullName = "Amazon Software License"; - url = "http://aws.amazon.com/asl/"; + url = "https://aws.amazon.com/asl/"; free = false; }; amd = { fullName = "AMD License Agreement"; - url = "http://developer.amd.com/amd-license-agreement/"; + url = "https://developer.amd.com/amd-license-agreement/"; free = false; }; @@ -230,7 +230,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { eapl = { fullName = "EPSON AVASYS PUBLIC LICENSE"; - url = "http://avasys.jp/hp/menu000000700/hpg000000603.htm"; + url = "https://avasys.jp/hp/menu000000700/hpg000000603.htm"; free = false; }; @@ -293,7 +293,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { ffsl = { fullName = "Floodgap Free Software License"; - url = "http://www.floodgap.com/software/ffsl/license.html"; + url = "https://www.floodgap.com/software/ffsl/license.html"; free = false; }; @@ -370,7 +370,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { # Intel's license, seems free iasl = { fullName = "iASL"; - url = "http://www.calculate-linux.org/packages/licenses/iASL"; + url = "https://old.calculate-linux.org/packages/licenses/iASL"; }; ijg = spdx { @@ -385,13 +385,13 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { inria-compcert = { fullName = "INRIA Non-Commercial License Agreement for the CompCert verified compiler"; - url = "http://compcert.inria.fr/doc/LICENSE"; + url = "http://compcert.inria.fr/doc/LICENSE"; # https is broken free = false; }; inria-icesl = { fullName = "INRIA Non-Commercial License Agreement for IceSL"; - url = "http://shapeforge.loria.fr/icesl/EULA_IceSL_binary.pdf"; + url = "http://shapeforge.loria.fr/icesl/EULA_IceSL_binary.pdf"; # https is broken free = false; }; @@ -469,7 +469,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { llgpl21 = { fullName = "Lisp LGPL; GNU Lesser General Public License version 2.1 with Franz Inc. preamble for clarification of LGPL terms in context of Lisp"; - url = "http://opensource.franz.com/preamble.html"; + url = "https://opensource.franz.com/preamble.html"; }; lppl12 = spdx { @@ -493,7 +493,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { }; # spdx.org does not (yet) differentiate between the X11 and Expat versions - # for details see http://en.wikipedia.org/wiki/MIT_License#Various_versions + # for details see https://en.wikipedia.org/wiki/MIT_License#Various_versions mit = spdx { spdxId = "MIT"; fullName = "MIT License"; @@ -596,7 +596,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { psfl = spdx { spdxId = "Python-2.0"; fullName = "Python Software Foundation License version 2"; - #url = "http://docs.python.org/license.html"; + url = "https://docs.python.org/license.html"; }; publicDomain = { @@ -620,7 +620,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { qwt = { fullName = "Qwt License, Version 1.0"; - url = "http://qwt.sourceforge.net/qwtlicense.html"; + url = "https://qwt.sourceforge.io/qwtlicense.html"; }; ruby = spdx { @@ -646,7 +646,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { smail = { shortName = "smail"; fullName = "SMAIL General Public License"; - url = "http://metadata.ftp-master.debian.org/changelogs/main/d/debianutils/debianutils_4.8.1_copyright"; + url = "https://sources.debian.org/copyright/license/debianutils/4.9.1/"; }; sspl = { @@ -663,7 +663,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { ufl = { fullName = "Ubuntu Font License 1.0"; - url = "http://font.ubuntu.com/ufl/ubuntu-font-licence-1.0.txt"; + url = "https://ubuntu.com/legal/font-licence"; }; unfree = { @@ -740,7 +740,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { xfig = { fullName = "xfig"; - url = "http://mcj.sourceforge.net/authors.html#xfig"; + url = "http://mcj.sourceforge.net/authors.html#xfig"; # https is broken }; zlib = spdx { From 592e433496b02acf119b1f8b2341c9ba5644d6de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20M=C3=B6ller?= Date: Sat, 31 Aug 2019 01:21:13 +0200 Subject: [PATCH 089/219] licenses: add EUPL-1.2 --- lib/licenses.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/licenses.nix b/lib/licenses.nix index 1f78d67a1b20..3d5238b64c12 100644 --- a/lib/licenses.nix +++ b/lib/licenses.nix @@ -271,6 +271,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { fullName = "European Union Public License 1.1"; }; + eupl12 = spdx { + spdxId = "EUPL-1.2"; + fullName = "European Union Public License 1.2"; + }; + fdl12 = spdx { spdxId = "GFDL-1.2-only"; fullName = "GNU Free Documentation License v1.2 only"; From 9c83defd29bbadc44beda0ae0e148bc915659396 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20M=C3=B6ller?= Date: Thu, 27 Feb 2020 21:43:54 +0100 Subject: [PATCH 090/219] AusweisApp2: init at 1.20.0 --- .../applications/misc/ausweisapp2/default.nix | 27 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 29 insertions(+) create mode 100644 pkgs/applications/misc/ausweisapp2/default.nix diff --git a/pkgs/applications/misc/ausweisapp2/default.nix b/pkgs/applications/misc/ausweisapp2/default.nix new file mode 100644 index 000000000000..953e12a033d0 --- /dev/null +++ b/pkgs/applications/misc/ausweisapp2/default.nix @@ -0,0 +1,27 @@ +{ stdenv, mkDerivation, fetchFromGitHub, cmake, pkgconfig, pcsclite, qtsvg, qttools, qtwebsockets +, qtquickcontrols2, qtgraphicaleffects }: + +mkDerivation rec { + pname = "AusweisApp2"; + version = "1.20.0"; + + src = fetchFromGitHub { + owner = "Governikus"; + repo = "AusweisApp2"; + rev = "${version}"; + sha256 = "0qkwdaxhig4qjim7h20j6ln6w76ycppfc786nd8l69bd1qv46m40"; + }; + + nativeBuildInputs = [ cmake pkgconfig ]; + + buildInputs = [ qtsvg qttools qtwebsockets qtquickcontrols2 qtgraphicaleffects pcsclite ]; + + meta = with stdenv.lib; { + description = "Authentication software for the German ID card"; + downloadPage = "https://github.com/Governikus/AusweisApp2/releases"; + homepage = "https://www.ausweisapp.bund.de/ausweisapp2/"; + license = licenses.eupl12; + maintainers = with maintainers; [ b4dm4n ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ad4bb9f8a97e..9f3f8a61966a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18538,6 +18538,8 @@ in aesop = callPackage ../applications/office/aesop { }; + AusweisApp2 = libsForQt5.callPackage ../applications/misc/ausweisapp2 { }; + avidemux = libsForQt5.callPackage ../applications/video/avidemux { }; avrdudess = callPackage ../applications/misc/avrdudess { }; From dc7ed066152f88ca5f9928db6165f62bf4f957b5 Mon Sep 17 00:00:00 2001 From: dadada Date: Sun, 29 Mar 2020 22:39:14 +0200 Subject: [PATCH 091/219] nixos/dokuwiki: add option Enables multi-site configurations. This break compatibility with prior configurations that expect options for a single dokuwiki instance in `services.dokuwiki`. --- nixos/modules/services/web-apps/dokuwiki.nix | 152 ++++++++++++------- nixos/tests/dokuwiki.nix | 49 +++--- 2 files changed, 125 insertions(+), 76 deletions(-) diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix index 07af7aa0dfec..df0a5787f154 100644 --- a/nixos/modules/services/web-apps/dokuwiki.nix +++ b/nixos/modules/services/web-apps/dokuwiki.nix @@ -3,13 +3,15 @@ let inherit (lib) mkEnableOption mkForce mkIf mkMerge mkOption optionalAttrs recursiveUpdate types; + inherit (lib) flatten mapAttrs mapAttrs' mapAttrsToList nameValuePair; - cfg = config.services.dokuwiki; + eachSite = config.services.dokuwiki; + stateDir = cfg: "/var/lib/dokuwiki/${cfg.hostName}"; user = config.services.nginx.user; group = config.services.nginx.group; - dokuwikiAclAuthConfig = pkgs.writeText "acl.auth.php" '' + dokuwikiAclAuthConfig = cfg: pkgs.writeText "acl.auth.php" '' # acl.auth.php # # @@ -18,24 +20,50 @@ let ${toString cfg.acl} ''; - dokuwikiLocalConfig = pkgs.writeText "local.php" '' + dokuwikiLocalConfig = cfg: pkgs.writeText "local.php" '' (cfg.acl != null || cfg.aclFile != null); - message = "Either services.dokuwiki.acl or services.dokuwiki.aclFile is mandatory when aclUse is true"; - } - { - assertion = cfg.usersFile != null -> cfg.aclUse != false; - message = "services.dokuwiki.aclUse must be true when usersFile is not null"; - } - ]; + assertions = flatten (mapAttrsToList (hostName: cfg: + [{ + assertion = cfg.aclUse -> (cfg.acl != null || cfg.aclFile != null); + message = "Either services.dokuwiki.${hostName}.acl or services.dokuwiki.${hostName}.aclFile is mandatory when aclUse is true"; + } + { + assertion = cfg.usersFile != null -> cfg.aclUse != false; + message = "services.dokuwiki.${hostName}.aclUse must be true when usersFile is not null"; + }]) eachSite); - services.phpfpm.pools.dokuwiki = { - inherit user; - inherit group; - phpEnv = { - DOKUWIKI_LOCAL_CONFIG = "${dokuwikiLocalConfig}"; - DOKUWIKI_PLUGINS_LOCAL_CONFIG = "${dokuwikiPluginsLocalConfig}"; - } //optionalAttrs (cfg.usersFile != null) { - DOKUWIKI_USERS_AUTH_CONFIG = "${cfg.usersFile}"; - } //optionalAttrs (cfg.aclUse) { - DOKUWIKI_ACL_AUTH_CONFIG = if (cfg.acl != null) then "${dokuwikiAclAuthConfig}" else "${toString cfg.aclFile}"; - }; - - settings = { - "listen.mode" = "0660"; - "listen.owner" = user; - "listen.group" = group; - } // cfg.poolConfig; - }; + services.phpfpm.pools = mapAttrs' (hostName: cfg: ( + nameValuePair "dokuwiki-${hostName}" { + inherit user; + inherit group; + phpEnv = { + DOKUWIKI_LOCAL_CONFIG = "${dokuwikiLocalConfig cfg}"; + DOKUWIKI_PLUGINS_LOCAL_CONFIG = "${dokuwikiPluginsLocalConfig cfg}"; + } //optionalAttrs (cfg.usersFile != null) { + DOKUWIKI_USERS_AUTH_CONFIG = "${cfg.usersFile}"; + } //optionalAttrs (cfg.aclUse) { + DOKUWIKI_ACL_AUTH_CONFIG = if (cfg.acl != null) then "${dokuwikiAclAuthConfig cfg}" else "${toString cfg.aclFile}"; + }; + + settings = { + "listen.mode" = "0660"; + "listen.owner" = user; + "listen.group" = group; + } // cfg.poolConfig; + })) eachSite; services.nginx = { enable = true; - virtualHosts = { - ${cfg.hostName} = mkMerge [ cfg.nginx { - root = mkForce "${pkgs.dokuwiki}/share/dokuwiki/"; + virtualHosts = mapAttrs (hostName: cfg: mkMerge [ cfg.nginx { + root = mkForce "${pkg hostName cfg}/share/dokuwiki/"; extraConfig = "fastcgi_param HTTPS on;"; locations."~ /(conf/|bin/|inc/|install.php)" = { @@ -246,27 +284,25 @@ in include ${pkgs.nginx}/conf/fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param REDIRECT_STATUS 200; - fastcgi_pass unix:${config.services.phpfpm.pools.dokuwiki.socket}; + fastcgi_pass unix:${config.services.phpfpm.pools."dokuwiki-${hostName}".socket}; fastcgi_param HTTPS on; ''; }; - }]; + }]) eachSite; }; - }; - - systemd.tmpfiles.rules = [ - "d ${cfg.stateDir}/attic 0750 ${user} ${group} - -" - "d ${cfg.stateDir}/cache 0750 ${user} ${group} - -" - "d ${cfg.stateDir}/index 0750 ${user} ${group} - -" - "d ${cfg.stateDir}/locks 0750 ${user} ${group} - -" - "d ${cfg.stateDir}/media 0750 ${user} ${group} - -" - "d ${cfg.stateDir}/media_attic 0750 ${user} ${group} - -" - "d ${cfg.stateDir}/media_meta 0750 ${user} ${group} - -" - "d ${cfg.stateDir}/meta 0750 ${user} ${group} - -" - "d ${cfg.stateDir}/pages 0750 ${user} ${group} - -" - "d ${cfg.stateDir}/tmp 0750 ${user} ${group} - -" - ]; + systemd.tmpfiles.rules = flatten (mapAttrsToList (hostName: cfg: [ + "d ${stateDir cfg}/attic 0750 ${user} ${group} - -" + "d ${stateDir cfg}/cache 0750 ${user} ${group} - -" + "d ${stateDir cfg}/index 0750 ${user} ${group} - -" + "d ${stateDir cfg}/locks 0750 ${user} ${group} - -" + "d ${stateDir cfg}/media 0750 ${user} ${group} - -" + "d ${stateDir cfg}/media_attic 0750 ${user} ${group} - -" + "d ${stateDir cfg}/media_meta 0750 ${user} ${group} - -" + "d ${stateDir cfg}/meta 0750 ${user} ${group} - -" + "d ${stateDir cfg}/pages 0750 ${user} ${group} - -" + "d ${stateDir cfg}/tmp 0750 ${user} ${group} - -" + ]) eachSite); }; } diff --git a/nixos/tests/dokuwiki.nix b/nixos/tests/dokuwiki.nix index 38bde10f47ed..65d2677dd3ab 100644 --- a/nixos/tests/dokuwiki.nix +++ b/nixos/tests/dokuwiki.nix @@ -1,29 +1,42 @@ -import ./make-test-python.nix ({ lib, ... }: - -with lib; +import ./make-test-python.nix ({ pkgs, ... }: { name = "dokuwiki"; - meta.maintainers = with maintainers; [ maintainers."1000101" ]; + meta.maintainers = with pkgs.lib.maintainers; [ "1000101" ]; - nodes.machine = - { pkgs, ... }: - { services.dokuwiki = { - enable = true; - acl = " "; - superUser = null; - nginx = { - forceSSL = false; - enableACME = false; - }; - }; + machine = { ... }: { + services.dokuwiki."site1.local" = { + acl = " "; + superUser = null; + nginx = { + forceSSL = false; + enableACME = false; + }; }; + services.dokuwiki."site2.local" = { + acl = " "; + superUser = null; + nginx = { + forceSSL = false; + enableACME = false; + }; + }; + networking.hosts."127.0.0.1" = [ "site1.local" "site2.local" ]; + }; testScript = '' - machine.start() - machine.wait_for_unit("phpfpm-dokuwiki.service") + site_names = ["site1.local", "site2.local"] + + start_all() + + machine.wait_for_unit("phpfpm-dokuwiki-site1.local.service") + machine.wait_for_unit("phpfpm-dokuwiki-site2.local.service") + machine.wait_for_unit("nginx.service") + machine.wait_for_open_port(80) - machine.succeed("curl -sSfL http://localhost/ | grep 'DokuWiki'") + + machine.succeed("curl -sSfL http://site1.local/ | grep 'DokuWiki'") + machine.succeed("curl -sSfL http://site2.local/ | grep 'DokuWiki'") ''; }) From 71baf4801c6918bcbac976bd68e502d89d90ddfc Mon Sep 17 00:00:00 2001 From: dadada Date: Mon, 30 Mar 2020 13:00:35 +0200 Subject: [PATCH 092/219] nixos/dokuwiki: refactor --- nixos/modules/services/web-apps/dokuwiki.nix | 321 +++++++++---------- 1 file changed, 159 insertions(+), 162 deletions(-) diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix index df0a5787f154..6378cf6507c4 100644 --- a/nixos/modules/services/web-apps/dokuwiki.nix +++ b/nixos/modules/services/web-apps/dokuwiki.nix @@ -53,148 +53,147 @@ let ''; }; - siteOpts = {lib, name, ...}: - { - options = { - enable = mkEnableOption "DokuWiki web application."; + siteOpts = {lib, name, ...}: { + options = { + enable = mkEnableOption "DokuWiki web application."; - package = mkOption { - type = types.package; - default = pkgs.dokuwiki; - description = "Which dokuwiki package to use."; - }; + package = mkOption { + type = types.package; + default = pkgs.dokuwiki; + description = "Which dokuwiki package to use."; + }; - hostName = mkOption { - type = types.str; - default = "localhost"; - description = "FQDN for the instance."; - }; + hostName = mkOption { + type = types.str; + default = "localhost"; + description = "FQDN for the instance."; + }; - stateDir = mkOption { - type = types.path; - default = "/var/lib/dokuwiki/${name}/data"; - description = "Location of the dokuwiki state directory."; - }; + stateDir = mkOption { + type = types.path; + default = "/var/lib/dokuwiki/${name}/data"; + description = "Location of the dokuwiki state directory."; + }; - acl = mkOption { - type = types.nullOr types.lines; - default = null; - example = "* @ALL 8"; - description = '' - Access Control Lists: see - Mutually exclusive with services.dokuwiki.aclFile - Set this to a value other than null to take precedence over aclFile option. - ''; - }; - - aclFile = mkOption { - type = types.nullOr types.path; - default = null; - description = '' - Location of the dokuwiki acl rules. Mutually exclusive with services.dokuwiki.acl - Mutually exclusive with services.dokuwiki.acl which is preferred. - Consult documentation for further instructions. - Example: - ''; - }; - - aclUse = mkOption { - type = types.bool; - default = true; - description = '' - Necessary for users to log in into the system. - Also limits anonymous users. When disabled, - everyone is able to create and edit content. - ''; - }; - - pluginsConfig = mkOption { - type = types.lines; - default = '' - $plugins['authad'] = 0; - $plugins['authldap'] = 0; - $plugins['authmysql'] = 0; - $plugins['authpgsql'] = 0; - ''; - description = '' - List of the dokuwiki (un)loaded plugins. - ''; - }; - - superUser = mkOption { - type = types.nullOr types.str; - default = "@admin"; - description = '' - You can set either a username, a list of usernames (“admin1,admin2”), - or the name of a group by prepending an @ char to the groupname - Consult documentation for further instructions. - ''; - }; - - usersFile = mkOption { - type = types.nullOr types.path; - default = null; - description = '' - Location of the dokuwiki users file. List of users. Format: - login:passwordhash:Real Name:email:groups,comma,separated - Create passwordHash easily by using:$ mkpasswd -5 password `pwgen 8 1` - Example: + acl = mkOption { + type = types.nullOr types.lines; + default = null; + example = "* @ALL 8"; + description = '' + Access Control Lists: see + Mutually exclusive with services.dokuwiki.aclFile + Set this to a value other than null to take precedence over aclFile option. ''; - }; - - extraConfig = mkOption { - type = types.nullOr types.lines; - default = null; - example = '' - $conf['title'] = 'My Wiki'; - $conf['userewrite'] = 1; - ''; - description = '' - DokuWiki configuration. Refer to - - for details on supported values. - ''; - }; - - poolConfig = mkOption { - type = with types; attrsOf (oneOf [ str int bool ]); - default = { - "pm" = "dynamic"; - "pm.max_children" = 32; - "pm.start_servers" = 2; - "pm.min_spare_servers" = 2; - "pm.max_spare_servers" = 4; - "pm.max_requests" = 500; }; - description = '' - Options for the dokuwiki PHP pool. See the documentation on php-fpm.conf - for details on configuration directives. - ''; - }; - nginx = mkOption { - type = types.submodule ( - recursiveUpdate - (import ../web-servers/nginx/vhost-options.nix { inherit config lib; }) - { - # Enable encryption by default, - options.forceSSL.default = true; - options.enableACME.default = true; - } - ); - default = {forceSSL = true; enableACME = true;}; - example = { - serverAliases = [ - "wiki.\${config.networking.domain}" - ]; - enableACME = false; + aclFile = mkOption { + type = types.nullOr types.path; + default = null; + description = '' + Location of the dokuwiki acl rules. Mutually exclusive with services.dokuwiki.acl + Mutually exclusive with services.dokuwiki.acl which is preferred. + Consult documentation for further instructions. + Example: + ''; + }; + + aclUse = mkOption { + type = types.bool; + default = true; + description = '' + Necessary for users to log in into the system. + Also limits anonymous users. When disabled, + everyone is able to create and edit content. + ''; + }; + + pluginsConfig = mkOption { + type = types.lines; + default = '' + $plugins['authad'] = 0; + $plugins['authldap'] = 0; + $plugins['authmysql'] = 0; + $plugins['authpgsql'] = 0; + ''; + description = '' + List of the dokuwiki (un)loaded plugins. + ''; + }; + + superUser = mkOption { + type = types.nullOr types.str; + default = "@admin"; + description = '' + You can set either a username, a list of usernames (“admin1,admin2”), + or the name of a group by prepending an @ char to the groupname + Consult documentation for further instructions. + ''; + }; + + usersFile = mkOption { + type = types.nullOr types.path; + default = null; + description = '' + Location of the dokuwiki users file. List of users. Format: + login:passwordhash:Real Name:email:groups,comma,separated + Create passwordHash easily by using:$ mkpasswd -5 password `pwgen 8 1` + Example: + ''; + }; + + extraConfig = mkOption { + type = types.nullOr types.lines; + default = null; + example = '' + $conf['title'] = 'My Wiki'; + $conf['userewrite'] = 1; + ''; + description = '' + DokuWiki configuration. Refer to + + for details on supported values. + ''; + }; + + poolConfig = mkOption { + type = with types; attrsOf (oneOf [ str int bool ]); + default = { + "pm" = "dynamic"; + "pm.max_children" = 32; + "pm.start_servers" = 2; + "pm.min_spare_servers" = 2; + "pm.max_spare_servers" = 4; + "pm.max_requests" = 500; + }; + description = '' + Options for the dokuwiki PHP pool. See the documentation on php-fpm.conf + for details on configuration directives. + ''; + }; + + nginx = mkOption { + type = types.submodule ( + recursiveUpdate + (import ../web-servers/nginx/vhost-options.nix { inherit config lib; }) + { + # Enable encryption by default, + options.forceSSL.default = true; + options.enableACME.default = true; + } + ); + default = {forceSSL = true; enableACME = true;}; + example = { + serverAliases = [ + "wiki.\${config.networking.domain}" + ]; + enableACME = false; + }; + description = '' + With this option, you can customize the nginx virtualHost which already has sensible defaults for DokuWiki. + ''; }; - description = '' - With this option, you can customize the nginx virtualHost which already has sensible defaults for DokuWiki. - ''; }; }; - }; in { # interface @@ -244,52 +243,51 @@ in services.nginx = { enable = true; - - virtualHosts = mapAttrs (hostName: cfg: mkMerge [ cfg.nginx { - root = mkForce "${pkg hostName cfg}/share/dokuwiki/"; - extraConfig = "fastcgi_param HTTPS on;"; + virtualHosts = mapAttrs (hostName: cfg: mkMerge [ cfg.nginx { + root = mkForce "${pkg hostName cfg}/share/dokuwiki/"; + extraConfig = "fastcgi_param HTTPS on;"; - locations."~ /(conf/|bin/|inc/|install.php)" = { - extraConfig = "deny all;"; - }; + locations."~ /(conf/|bin/|inc/|install.php)" = { + extraConfig = "deny all;"; + }; - locations."~ ^/data/" = { - root = "${cfg.stateDir}"; - extraConfig = "internal;"; - }; + locations."~ ^/data/" = { + root = "${cfg.stateDir}"; + extraConfig = "internal;"; + }; - locations."~ ^/lib.*\.(js|css|gif|png|ico|jpg|jpeg)$" = { - extraConfig = "expires 365d;"; - }; + locations."~ ^/lib.*\.(js|css|gif|png|ico|jpg|jpeg)$" = { + extraConfig = "expires 365d;"; + }; - locations."/" = { - priority = 1; - index = "doku.php"; - extraConfig = ''try_files $uri $uri/ @dokuwiki;''; - }; + locations."/" = { + priority = 1; + index = "doku.php"; + extraConfig = ''try_files $uri $uri/ @dokuwiki;''; + }; - locations."@dokuwiki" = { - extraConfig = '' + locations."@dokuwiki" = { + extraConfig = '' # rewrites "doku.php/" out of the URLs if you set the userwrite setting to .htaccess in dokuwiki config page rewrite ^/_media/(.*) /lib/exe/fetch.php?media=$1 last; rewrite ^/_detail/(.*) /lib/exe/detail.php?media=$1 last; rewrite ^/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2 last; rewrite ^/(.*) /doku.php?id=$1&$args last; - ''; - }; + ''; + }; - locations."~ \.php$" = { - extraConfig = '' + locations."~ \.php$" = { + extraConfig = '' try_files $uri $uri/ /doku.php; include ${pkgs.nginx}/conf/fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param REDIRECT_STATUS 200; fastcgi_pass unix:${config.services.phpfpm.pools."dokuwiki-${hostName}".socket}; fastcgi_param HTTPS on; - ''; - }; - }]) eachSite; - }; + ''; + }; + }]) eachSite; + }; systemd.tmpfiles.rules = flatten (mapAttrsToList (hostName: cfg: [ "d ${stateDir cfg}/attic 0750 ${user} ${group} - -" @@ -303,6 +301,5 @@ in "d ${stateDir cfg}/pages 0750 ${user} ${group} - -" "d ${stateDir cfg}/tmp 0750 ${user} ${group} - -" ]) eachSite); - }; } From af6a7a04869889b470c4dad6e0adc57482818d3a Mon Sep 17 00:00:00 2001 From: dadada Date: Mon, 30 Mar 2020 13:08:16 +0200 Subject: [PATCH 093/219] nixos/dokuwiki: add plugins and templates options Adds support for additional plugins and templates similarly to how wordpress.nix does it. Plugins and templates need to be packaged as in the example. --- nixos/modules/services/web-apps/dokuwiki.nix | 61 +++++++++++++++++++- nixos/tests/dokuwiki.nix | 38 +++++++++++- 2 files changed, 95 insertions(+), 4 deletions(-) diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix index 6378cf6507c4..7587c744ad51 100644 --- a/nixos/modules/services/web-apps/dokuwiki.nix +++ b/nixos/modules/services/web-apps/dokuwiki.nix @@ -3,7 +3,7 @@ let inherit (lib) mkEnableOption mkForce mkIf mkMerge mkOption optionalAttrs recursiveUpdate types; - inherit (lib) flatten mapAttrs mapAttrs' mapAttrsToList nameValuePair; + inherit (lib) concatMapStringsSep flatten mapAttrs mapAttrs' mapAttrsToList nameValuePair concatMapStringSep; eachSite = config.services.dokuwiki; stateDir = cfg: "/var/lib/dokuwiki/${cfg.hostName}"; @@ -50,6 +50,10 @@ let # symlink acl ln -s ${dokuwikiAclAuthConfig cfg} $out/share/dokuwiki/acl.auth.php + + # symlink additional plugin(s) and templates(s) + ${concatMapStringsSep "\n" (template: "ln -s ${template} $out/share/dokuwiki/lib/tpl/${template.name}") cfg.templates} + ${concatMapStringsSep "\n" (plugin: "ln -s ${plugin} $out/share/dokuwiki/lib/plugins/${plugin.name}") cfg.plugins} ''; }; @@ -155,6 +159,61 @@ let ''; }; + plugins = mkOption { + type = types.listOf types.path; + default = []; + description = '' + List of path(s) to respective plugin(s) which are copied from the 'plugin' directory. + These plugins need to be packaged before use, see example. + ''; + example = '' + # Let's package the icalevents plugin + plugin-icalevents = pkgs.stdenv.mkDerivation { + name = "icalevents"; + # Download the plugin from the dokuwiki site + src = pkgs.fetchurl { + url = https://github.com/real-or-random/dokuwiki-plugin-icalevents/releases/download/2017-06-16/dokuwiki-plugin-icalevents-2017-06-16.zip; + sha256 = "e40ed7dd6bbe7fe3363bbbecb4de481d5e42385b5a0f62f6a6ce6bf3a1f9dfa8"; + }; + sourceRoot = "."; + # We need unzip to build this package + buildInputs = [ pkgs.unzip ]; + # Installing simply means copying all files to the output directory + installPhase = "mkdir -p $out; cp -R * $out/"; + }; + + # And then pass this theme to the plugin list like this: + plugins = [ plugin-icalevents ]; + ''; + }; + + templates = mkOption { + type = types.listOf types.path; + default = []; + description = '' + List of path(s) to respective template(s) which are copied from the 'tpl' directory. + These templates need to be packaged before use, see example. + ''; + example = '' + # Let's package the bootstrap3 theme + template-bootstrap3 = pkgs.stdenv.mkDerivation { + name = "bootstrap3"; + # Download the theme from the dokuwiki site + src = pkgs.fetchurl { + url = https://github.com/giterlizzi/dokuwiki-template-bootstrap3/archive/v2019-05-22.zip; + sha256 = "4de5ff31d54dd61bbccaf092c9e74c1af3a4c53e07aa59f60457a8f00cfb23a6"; + }; + # We need unzip to build this package + buildInputs = [ pkgs.unzip ]; + # Installing simply means copying all files to the output directory + installPhase = "mkdir -p $out; cp -R * $out/"; + }; + + # And then pass this theme to the template list like this: + templates = [ template-bootstrap3 ]; + ''; + }; + poolConfig = mkOption { type = with types; attrsOf (oneOf [ str int bool ]); default = { diff --git a/nixos/tests/dokuwiki.nix b/nixos/tests/dokuwiki.nix index 65d2677dd3ab..62d8ec9f0b1c 100644 --- a/nixos/tests/dokuwiki.nix +++ b/nixos/tests/dokuwiki.nix @@ -1,13 +1,43 @@ import ./make-test-python.nix ({ pkgs, ... }: -{ +let + template-bootstrap3 = pkgs.stdenv.mkDerivation { + name = "bootstrap3"; + # Download the theme from the dokuwiki site + src = pkgs.fetchurl { + url = https://github.com/giterlizzi/dokuwiki-template-bootstrap3/archive/v2019-05-22.zip; + sha256 = "4de5ff31d54dd61bbccaf092c9e74c1af3a4c53e07aa59f60457a8f00cfb23a6"; + }; + # We need unzip to build this package + buildInputs = [ pkgs.unzip ]; + # Installing simply means copying all files to the output directory + installPhase = "mkdir -p $out; cp -R * $out/"; + }; + + + # Let's package the icalevents plugin + plugin-icalevents = pkgs.stdenv.mkDerivation { + name = "icalevents"; + # Download the plugin from the dokuwiki site + src = pkgs.fetchurl { + url = https://github.com/real-or-random/dokuwiki-plugin-icalevents/releases/download/2017-06-16/dokuwiki-plugin-icalevents-2017-06-16.zip; + sha256 = "e40ed7dd6bbe7fe3363bbbecb4de481d5e42385b5a0f62f6a6ce6bf3a1f9dfa8"; + }; + # We need unzip to build this package + buildInputs = [ pkgs.unzip ]; + sourceRoot = "."; + # Installing simply means copying all files to the output directory + installPhase = "mkdir -p $out; cp -R * $out/"; + }; + +in { name = "dokuwiki"; meta.maintainers = with pkgs.lib.maintainers; [ "1000101" ]; machine = { ... }: { services.dokuwiki."site1.local" = { acl = " "; - superUser = null; + superUser = "admin"; nginx = { forceSSL = false; enableACME = false; @@ -15,11 +45,13 @@ import ./make-test-python.nix ({ pkgs, ... }: }; services.dokuwiki."site2.local" = { acl = " "; - superUser = null; + superUser = "admin"; nginx = { forceSSL = false; enableACME = false; }; + templates = [ template-bootstrap3 ]; + plugins = [ plugin-icalevents ]; }; networking.hosts."127.0.0.1" = [ "site1.local" "site2.local" ]; }; From 0228046eec7ce930d6532e205ad92435a2983f98 Mon Sep 17 00:00:00 2001 From: dadada Date: Mon, 30 Mar 2020 20:50:32 +0200 Subject: [PATCH 094/219] nixos/dokuwiki: add assertion for usersFile --- nixos/modules/services/web-apps/dokuwiki.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix index 7587c744ad51..fa7462a97bdb 100644 --- a/nixos/modules/services/web-apps/dokuwiki.nix +++ b/nixos/modules/services/web-apps/dokuwiki.nix @@ -278,6 +278,10 @@ in { assertion = cfg.usersFile != null -> cfg.aclUse != false; message = "services.dokuwiki.${hostName}.aclUse must be true when usersFile is not null"; + } + { + assertion = cfg.aclUse -> cfg.usersFile != null; + message = "services.dokuwiki.${hostName}.usersFile must be set if aclUse is true"; }]) eachSite); services.phpfpm.pools = mapAttrs' (hostName: cfg: ( From a58dc30d34ebcb2a85e45a0d827497e85339970b Mon Sep 17 00:00:00 2001 From: dadada Date: Mon, 30 Mar 2020 22:04:52 +0200 Subject: [PATCH 095/219] nixos/dokuwiki: set default value for usersFile If usersFile is not set, a file is created along the stateDir that can hold the users and supports dynamically adding users using the web GUI. --- nixos/modules/services/web-apps/dokuwiki.nix | 32 +++++++++----------- 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix index fa7462a97bdb..6670f32c16ac 100644 --- a/nixos/modules/services/web-apps/dokuwiki.nix +++ b/nixos/modules/services/web-apps/dokuwiki.nix @@ -6,7 +6,6 @@ let inherit (lib) concatMapStringsSep flatten mapAttrs mapAttrs' mapAttrsToList nameValuePair concatMapStringSep; eachSite = config.services.dokuwiki; - stateDir = cfg: "/var/lib/dokuwiki/${cfg.hostName}"; user = config.services.nginx.user; group = config.services.nginx.group; @@ -22,7 +21,7 @@ let dokuwikiLocalConfig = cfg: pkgs.writeText "local.php" '' cfg.aclUse != false; message = "services.dokuwiki.${hostName}.aclUse must be true when usersFile is not null"; } - { - assertion = cfg.aclUse -> cfg.usersFile != null; - message = "services.dokuwiki.${hostName}.usersFile must be set if aclUse is true"; - }]) eachSite); + ]) eachSite); services.phpfpm.pools = mapAttrs' (hostName: cfg: ( nameValuePair "dokuwiki-${hostName}" { @@ -291,7 +287,6 @@ in phpEnv = { DOKUWIKI_LOCAL_CONFIG = "${dokuwikiLocalConfig cfg}"; DOKUWIKI_PLUGINS_LOCAL_CONFIG = "${dokuwikiPluginsLocalConfig cfg}"; - } //optionalAttrs (cfg.usersFile != null) { DOKUWIKI_USERS_AUTH_CONFIG = "${cfg.usersFile}"; } //optionalAttrs (cfg.aclUse) { DOKUWIKI_ACL_AUTH_CONFIG = if (cfg.acl != null) then "${dokuwikiAclAuthConfig cfg}" else "${toString cfg.aclFile}"; @@ -353,16 +348,17 @@ in }; systemd.tmpfiles.rules = flatten (mapAttrsToList (hostName: cfg: [ - "d ${stateDir cfg}/attic 0750 ${user} ${group} - -" - "d ${stateDir cfg}/cache 0750 ${user} ${group} - -" - "d ${stateDir cfg}/index 0750 ${user} ${group} - -" - "d ${stateDir cfg}/locks 0750 ${user} ${group} - -" - "d ${stateDir cfg}/media 0750 ${user} ${group} - -" - "d ${stateDir cfg}/media_attic 0750 ${user} ${group} - -" - "d ${stateDir cfg}/media_meta 0750 ${user} ${group} - -" - "d ${stateDir cfg}/meta 0750 ${user} ${group} - -" - "d ${stateDir cfg}/pages 0750 ${user} ${group} - -" - "d ${stateDir cfg}/tmp 0750 ${user} ${group} - -" + "d ${cfg.stateDir}/attic 0750 ${user} ${group} - -" + "d ${cfg.stateDir}/cache 0750 ${user} ${group} - -" + "d ${cfg.stateDir}/index 0750 ${user} ${group} - -" + "d ${cfg.stateDir}/locks 0750 ${user} ${group} - -" + "d ${cfg.stateDir}/media 0750 ${user} ${group} - -" + "d ${cfg.stateDir}/media_attic 0750 ${user} ${group} - -" + "d ${cfg.stateDir}/media_meta 0750 ${user} ${group} - -" + "d ${cfg.stateDir}/meta 0750 ${user} ${group} - -" + "d ${cfg.stateDir}/pages 0750 ${user} ${group} - -" + "d ${cfg.stateDir}/tmp 0750 ${user} ${group} - -" + "f ${cfg.usersFile} 0640 ${user} ${group} - ${pkg hostName cfg}/conf/users.auth.php.dist" ]) eachSite); }; } From 2e699f1db11ff53ece663d0f7c28e37cfb894fff Mon Sep 17 00:00:00 2001 From: dadada Date: Mon, 30 Mar 2020 22:21:28 +0200 Subject: [PATCH 096/219] nixos/dokuwiki: add option disableActions --- nixos/modules/services/web-apps/dokuwiki.nix | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix index 6670f32c16ac..d6bd2526509b 100644 --- a/nixos/modules/services/web-apps/dokuwiki.nix +++ b/nixos/modules/services/web-apps/dokuwiki.nix @@ -24,6 +24,7 @@ let $conf['savedir'] = '${cfg.stateDir}'; $conf['superuser'] = '${toString cfg.superUser}'; $conf['useacl'] = '${toString cfg.aclUse}'; + $conf['disableactions'] = '${cfg.disableActions}'; ${toString cfg.extraConfig} ''; @@ -144,6 +145,17 @@ let ''; }; + disableActions = mkOption { + type = types.nullOr types.str; + default = ""; + example = "search,register"; + description = '' + Disable individual action modes. Refer to + + for details on supported values. + ''; + }; + extraConfig = mkOption { type = types.nullOr types.lines; default = null; @@ -358,7 +370,7 @@ in "d ${cfg.stateDir}/meta 0750 ${user} ${group} - -" "d ${cfg.stateDir}/pages 0750 ${user} ${group} - -" "d ${cfg.stateDir}/tmp 0750 ${user} ${group} - -" - "f ${cfg.usersFile} 0640 ${user} ${group} - ${pkg hostName cfg}/conf/users.auth.php.dist" + "C ${cfg.usersFile} 0640 ${user} ${group} - ${pkg hostName cfg}/share/dokuwiki/conf/users.auth.php.dist" ]) eachSite); }; } From 2b67a89f2900d5089e2992bce8be2e94c130b107 Mon Sep 17 00:00:00 2001 From: dadada Date: Sat, 4 Apr 2020 12:46:50 +0200 Subject: [PATCH 097/219] nixos/dokuwiki: dokuwiki user --- nixos/modules/services/web-apps/dokuwiki.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix index d6bd2526509b..c3402ee77fa4 100644 --- a/nixos/modules/services/web-apps/dokuwiki.nix +++ b/nixos/modules/services/web-apps/dokuwiki.nix @@ -7,7 +7,7 @@ let eachSite = config.services.dokuwiki; - user = config.services.nginx.user; + user = "dokuwiki"; group = config.services.nginx.group; dokuwikiAclAuthConfig = cfg: pkgs.writeText "acl.auth.php" '' @@ -372,5 +372,10 @@ in "d ${cfg.stateDir}/tmp 0750 ${user} ${group} - -" "C ${cfg.usersFile} 0640 ${user} ${group} - ${pkg hostName cfg}/share/dokuwiki/conf/users.auth.php.dist" ]) eachSite); + + users.users.${user} = { + group = group; + isSystemUser = true; + }; }; } From 9460fb578880de9a10815001c7587bf211e95562 Mon Sep 17 00:00:00 2001 From: dadada Date: Sat, 4 Apr 2020 14:01:23 +0200 Subject: [PATCH 098/219] nixos/dokuwiki: modify usersFile and aclFile Use types.str instead of types.path to exclude private information from the derivation. Add a warinig about the contents of acl beeing included in the nix store. --- nixos/modules/services/web-apps/dokuwiki.nix | 23 +++++++++++++------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix index c3402ee77fa4..e3597ef3c39c 100644 --- a/nixos/modules/services/web-apps/dokuwiki.nix +++ b/nixos/modules/services/web-apps/dokuwiki.nix @@ -87,11 +87,14 @@ let Access Control Lists: see Mutually exclusive with services.dokuwiki.aclFile Set this to a value other than null to take precedence over aclFile option. + + Warning: Consider using aclFile instead if you do not + want to store the ACL in the world-readable Nix store. ''; }; aclFile = mkOption { - type = types.nullOr types.path; + type = with types; nullOr str; default = null; description = '' Location of the dokuwiki acl rules. Mutually exclusive with services.dokuwiki.acl @@ -99,6 +102,7 @@ let Consult documentation for further instructions. Example: ''; + example = "/var/lib/dokuwiki/${name}/acl.auth.php"; }; aclUse = mkOption { @@ -135,14 +139,15 @@ let }; usersFile = mkOption { - type = types.nullOr types.path; - default = "/var/lib/dokuwiki/${name}/users.php"; + type = with types; nullOr str; + default = null; description = '' Location of the dokuwiki users file. List of users. Format: login:passwordhash:Real Name:email:groups,comma,separated Create passwordHash easily by using:$ mkpasswd -5 password `pwgen 8 1` Example: ''; + example = "/var/lib/dokuwiki/${name}/users.auth.php"; }; disableActions = mkOption { @@ -284,11 +289,11 @@ in assertions = flatten (mapAttrsToList (hostName: cfg: [{ assertion = cfg.aclUse -> (cfg.acl != null || cfg.aclFile != null); - message = "Either services.dokuwiki.${hostName}.acl or services.dokuwiki.${hostName}.aclFile is mandatory when aclUse is true"; + message = "Either services.dokuwiki.${hostName}.acl or services.dokuwiki.${hostName}.aclFile is mandatory if aclUse true"; } { assertion = cfg.usersFile != null -> cfg.aclUse != false; - message = "services.dokuwiki.${hostName}.aclUse must be true when usersFile is not null"; + message = "services.dokuwiki.${hostName}.aclUse must must be true if usersFile is not null"; } ]) eachSite); @@ -299,6 +304,7 @@ in phpEnv = { DOKUWIKI_LOCAL_CONFIG = "${dokuwikiLocalConfig cfg}"; DOKUWIKI_PLUGINS_LOCAL_CONFIG = "${dokuwikiPluginsLocalConfig cfg}"; + } // optionalAttrs (cfg.usersFile != null) { DOKUWIKI_USERS_AUTH_CONFIG = "${cfg.usersFile}"; } //optionalAttrs (cfg.aclUse) { DOKUWIKI_ACL_AUTH_CONFIG = if (cfg.acl != null) then "${dokuwikiAclAuthConfig cfg}" else "${toString cfg.aclFile}"; @@ -314,7 +320,7 @@ in services.nginx = { enable = true; virtualHosts = mapAttrs (hostName: cfg: mkMerge [ cfg.nginx { - root = mkForce "${pkg hostName cfg}/share/dokuwiki/"; + root = mkForce "${pkg hostName cfg}/share/dokuwiki"; extraConfig = "fastcgi_param HTTPS on;"; locations."~ /(conf/|bin/|inc/|install.php)" = { @@ -370,8 +376,9 @@ in "d ${cfg.stateDir}/meta 0750 ${user} ${group} - -" "d ${cfg.stateDir}/pages 0750 ${user} ${group} - -" "d ${cfg.stateDir}/tmp 0750 ${user} ${group} - -" - "C ${cfg.usersFile} 0640 ${user} ${group} - ${pkg hostName cfg}/share/dokuwiki/conf/users.auth.php.dist" - ]) eachSite); + ] ++ lib.optional (cfg.aclFile != null) "C ${cfg.aclFile} 0640 ${user} ${group} - ${pkg hostName cfg}/share/dokuwiki/conf/acl.auth.php.dist" + ++ lib.optional (cfg.usersFile != null) "C ${cfg.usersFile} 0640 ${user} ${group} - ${pkg hostName cfg}/share/dokuwiki/conf/users.auth.php.dist" + ) eachSite); users.users.${user} = { group = group; From 2d86cca35edbac2cba329a59c27630a2131cda91 Mon Sep 17 00:00:00 2001 From: dadada Date: Sat, 18 Apr 2020 11:30:19 +0200 Subject: [PATCH 099/219] nixos/dokuwiki: change default of aclFile and usersFile `aclFile` and `usersFile` will be set to a default value if `aclUse` is specified and aclFile is not overriden by `acl`. --- nixos/modules/services/web-apps/dokuwiki.nix | 6 +++--- nixos/tests/dokuwiki.nix | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix index e3597ef3c39c..76e18266a273 100644 --- a/nixos/modules/services/web-apps/dokuwiki.nix +++ b/nixos/modules/services/web-apps/dokuwiki.nix @@ -57,7 +57,7 @@ let ''; }; - siteOpts = {lib, name, ...}: { + siteOpts = { config, lib, name, ...}: { options = { enable = mkEnableOption "DokuWiki web application."; @@ -95,7 +95,7 @@ let aclFile = mkOption { type = with types; nullOr str; - default = null; + default = if (config.aclUse && config.acl == null) then "/var/lib/dokuwiki/${name}/users.auth.php" else null; description = '' Location of the dokuwiki acl rules. Mutually exclusive with services.dokuwiki.acl Mutually exclusive with services.dokuwiki.acl which is preferred. @@ -140,7 +140,7 @@ let usersFile = mkOption { type = with types; nullOr str; - default = null; + default = if config.aclUse then "/var/lib/dokuwiki/${name}/users.auth.php" else null; description = '' Location of the dokuwiki users file. List of users. Format: login:passwordhash:Real Name:email:groups,comma,separated diff --git a/nixos/tests/dokuwiki.nix b/nixos/tests/dokuwiki.nix index 62d8ec9f0b1c..2b907133ed5a 100644 --- a/nixos/tests/dokuwiki.nix +++ b/nixos/tests/dokuwiki.nix @@ -36,7 +36,7 @@ in { machine = { ... }: { services.dokuwiki."site1.local" = { - acl = " "; + aclUse = false; superUser = "admin"; nginx = { forceSSL = false; @@ -44,7 +44,7 @@ in { }; }; services.dokuwiki."site2.local" = { - acl = " "; + aclUse = true; superUser = "admin"; nginx = { forceSSL = false; From 6a634cf026a5023a92a8b357441019467b91a6a5 Mon Sep 17 00:00:00 2001 From: Roman Volosatovs Date: Sun, 19 Apr 2020 01:44:39 +0200 Subject: [PATCH 100/219] fira: 4.106 -> 4.202 --- pkgs/data/fonts/fira/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/data/fonts/fira/default.nix b/pkgs/data/fonts/fira/default.nix index 23baee7cb9d9..039c5099b56e 100644 --- a/pkgs/data/fonts/fira/default.nix +++ b/pkgs/data/fonts/fira/default.nix @@ -1,7 +1,7 @@ { lib, fetchFromGitHub }: let - version = "4.106"; + version = "4.202"; in fetchFromGitHub { name = "fira-${version}"; @@ -15,7 +15,7 @@ in fetchFromGitHub { cp otf/*.otf $out/share/fonts/opentype ''; - sha256 = "0c97nmihcq0ki7ywj8zn048a2bgrszc61lb9p0djfi65ar52jab4"; + sha256 = "1iwxbp7kw5kghh5nbycb05zby7p2ib61mywva3h6giv2wd4lpxnz"; meta = with lib; { homepage = "https://mozilla.github.io/Fira/"; From 7adb98309a77665987e2b964da1c3d9eb7a5a87d Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Sun, 19 Apr 2020 10:13:49 +1000 Subject: [PATCH 101/219] buildah: installShellCompletion --- pkgs/development/tools/buildah/default.nix | 23 +++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/pkgs/development/tools/buildah/default.nix b/pkgs/development/tools/buildah/default.nix index 7fbb21ffb120..84b286313082 100644 --- a/pkgs/development/tools/buildah/default.nix +++ b/pkgs/development/tools/buildah/default.nix @@ -1,5 +1,14 @@ -{ stdenv, buildGoPackage, fetchFromGitHub -, gpgme, libgpgerror, lvm2, btrfs-progs, pkg-config, libselinux, libseccomp +{ stdenv +, buildGoPackage +, fetchFromGitHub +, installShellFiles +, pkg-config +, gpgme +, libgpgerror +, lvm2 +, btrfs-progs +, libselinux +, libseccomp }: buildGoPackage rec { @@ -7,9 +16,9 @@ buildGoPackage rec { version = "1.14.8"; src = fetchFromGitHub { - owner = "containers"; - repo = "buildah"; - rev = "v${version}"; + owner = "containers"; + repo = "buildah"; + rev = "v${version}"; sha256 = "187cvb3i5cwm7cwxmzpl2ca7900yb6v6b6cybyz5mnd5ccy5ff1q"; }; @@ -18,7 +27,7 @@ buildGoPackage rec { goPackagePath = "github.com/containers/buildah"; excludedPackages = [ "tests" ]; - nativeBuildInputs = [ pkg-config ]; + nativeBuildInputs = [ installShellFiles pkg-config ]; buildInputs = [ gpgme libgpgerror lvm2 btrfs-progs libselinux libseccomp ]; patches = [ ./disable-go-module-mode.patch ]; @@ -27,7 +36,7 @@ buildGoPackage rec { pushd go/src/${goPackagePath} make GIT_COMMIT="unknown" install -Dm755 buildah $bin/bin/buildah - install -Dm444 contrib/completions/bash/buildah $bin/share/bash-completion/completions/buildah + installShellCompletion --bash contrib/completions/bash/buildah ''; postBuild = '' From 9123c8c5de7fcfe0b245ed023e7f52883ae08762 Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Sun, 19 Apr 2020 10:14:41 +1000 Subject: [PATCH 102/219] conmon: installFlags --- pkgs/applications/virtualization/conmon/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/virtualization/conmon/default.nix b/pkgs/applications/virtualization/conmon/default.nix index b09911cf6e50..bfe9f1d34865 100644 --- a/pkgs/applications/virtualization/conmon/default.nix +++ b/pkgs/applications/virtualization/conmon/default.nix @@ -18,10 +18,10 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkg-config ]; - buildInputs = [ glib systemd ] ++ - stdenv.lib.optionals (!stdenv.hostPlatform.isMusl) [ glibc glibc.static ]; + buildInputs = [ glib systemd ] + ++ stdenv.lib.optionals (!stdenv.hostPlatform.isMusl) [ glibc glibc.static ]; - installPhase = "install -Dm755 bin/${pname} $out/bin/${pname}"; + installFlags = [ "PREFIX=$(out)" ]; meta = with stdenv.lib; { homepage = "https://github.com/containers/conmon"; From 443e544721cda7ff20aec064192147eeed376e22 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 18 Apr 2020 20:36:55 -0400 Subject: [PATCH 103/219] firefox-wrapper: don't throw on enableGnomeExtensions We use the config for the native messaging host below this statement. --- pkgs/applications/networking/browsers/firefox/wrapper.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/applications/networking/browsers/firefox/wrapper.nix b/pkgs/applications/networking/browsers/firefox/wrapper.nix index 73d2303bfc18..0afa8ca7b834 100644 --- a/pkgs/applications/networking/browsers/firefox/wrapper.nix +++ b/pkgs/applications/networking/browsers/firefox/wrapper.nix @@ -46,7 +46,6 @@ let "icedtea" "enableGoogleTalkPlugin" "enableFriBIDPlugin" - "enableGnomeExtensions" "enableBluejeans" "enableAdobeReader" ]; From 0bab5253b179ebe324204d73c18db1e4c1a787f1 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 18 Apr 2020 20:43:37 -0400 Subject: [PATCH 104/219] Revert "[WIP] {help wanted} twolame: 2017-09-27 -> 0.4.0" --- pkgs/development/libraries/twolame/default.nix | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/pkgs/development/libraries/twolame/default.nix b/pkgs/development/libraries/twolame/default.nix index db1741196cce..7c44731ef130 100644 --- a/pkgs/development/libraries/twolame/default.nix +++ b/pkgs/development/libraries/twolame/default.nix @@ -1,27 +1,25 @@ { stdenv, fetchFromGitHub -, autoreconfHook -, pkgconfig -, libsndfile, xmlto, asciidoc }: +, autoreconfHook, pkgconfig +, libsndfile }: -with stdenv.lib; -stdenv.mkDerivation rec { +stdenv.mkDerivation { pname = "twolame"; - version = "0.4.0"; + version = "2017-09-27"; src = fetchFromGitHub { owner = "njh"; repo = "twolame"; - rev = version; - sha256 = "0ckwdx5kmgmh1jq2wl6c9d57pf6z6p2wjdy6fw01a8f3clg21a8g"; + rev = "977c8ac55d8ca6d5f35d1d413a119dac2b3b0333"; + sha256 = "1rq3yc8ygzdqid9zk6pixmm4w9sk2vrlx217lhn5bjaglv7iyf7x"; }; - nativeBuildInputs = [ autoreconfHook pkgconfig xmlto asciidoc ]; + nativeBuildInputs = [ autoreconfHook pkgconfig ]; buildInputs = [ libsndfile ]; doCheck = false; # fails with "../build-scripts/test-driver: line 107: -Mstrict: command not found" - meta = { + meta = with stdenv.lib;{ description = "A MP2 encoder"; longDescription = '' TwoLAME is an optimised MPEG Audio Layer 2 (MP2) encoder based on From ddbc83263785aabcbf15cb21257cc830e1e6f74a Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 18 Apr 2020 20:51:33 -0400 Subject: [PATCH 105/219] Revert "calibre: 4.12.0 -> 4.13.0" --- pkgs/applications/misc/calibre/default.nix | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix index 81fcc64de72e..afd602f60884 100644 --- a/pkgs/applications/misc/calibre/default.nix +++ b/pkgs/applications/misc/calibre/default.nix @@ -16,7 +16,7 @@ , hyphen , unrarSupport ? false , chmlib -, python3Packages +, python2Packages , libusb1 , libmtp , xdg_utils @@ -25,15 +25,16 @@ }: let - pypkgs = python3Packages; + pypkgs = python2Packages; + in mkDerivation rec { pname = "calibre"; - version = "4.13.0"; + version = "4.12.0"; src = fetchurl { url = "https://download.calibre-ebook.com/${version}/${pname}-${version}.tar.xz"; - sha256 = "1xp1fvpdizk6g74diam4nd59s6fhcvp086y1brm6r9wy9zm7sn7r"; + sha256 = "144vl5p0adcywcqaarrriq5zd8q5i934yfjg9himiq1vdp9vy4fi"; }; patches = [ @@ -170,7 +171,8 @@ mkDerivation rec { description = "Comprehensive e-book software"; homepage = "https://calibre-ebook.com"; license = with licenses; if unrarSupport then unfreeRedistributable else gpl3; - maintainers = with maintainers; [ domenkozar pSub ]; + maintainers = with maintainers; [ domenkozar pSub AndersonTorres ]; platforms = platforms.linux; + inherit version; }; } From 7cbd8fb9945ddd404fb22ca53263fa8d927a3b47 Mon Sep 17 00:00:00 2001 From: gnidorah Date: Sun, 19 Apr 2020 11:06:28 +0300 Subject: [PATCH 106/219] openjk: use gcc9 --- pkgs/top-level/all-packages.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ad4bb9f8a97e..ce0db3b2d9c4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -23609,10 +23609,7 @@ in openclonk = callPackage ../games/openclonk { }; - openjk = callPackage ../games/openjk { - # segfaults when built with gcc9 - stdenv = gcc8Stdenv; - }; + openjk = callPackage ../games/openjk { }; openmw = libsForQt5.callPackage ../games/openmw { }; From a3e64e81fcf4cc597138f4b89d81ffe84195c4f7 Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Fri, 17 Apr 2020 22:16:41 +0200 Subject: [PATCH 107/219] pythonPackages.publicsuffix2: init at 2.2019-12-21 --- .../python-modules/publicsuffix2/default.nix | 26 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 28 insertions(+) create mode 100644 pkgs/development/python-modules/publicsuffix2/default.nix diff --git a/pkgs/development/python-modules/publicsuffix2/default.nix b/pkgs/development/python-modules/publicsuffix2/default.nix new file mode 100644 index 000000000000..fe360168aa5a --- /dev/null +++ b/pkgs/development/python-modules/publicsuffix2/default.nix @@ -0,0 +1,26 @@ +{ stdenv, buildPythonPackage, fetchFromGitHub, requests }: + +buildPythonPackage rec { + pname = "publicsuffix2"; + version = "2.20191221"; + + # Tests are missing in the sdist + # See: https://github.com/nexB/python-publicsuffix2/issues/12 + src = fetchFromGitHub { + owner = "nexB"; + repo = "python-publicsuffix2"; + rev = "release-2.2019-12-21"; + sha256 = "1dkvfvl0izq9hqzilnw8ipkbgjs9xyad9p21i3864hzinbh0wp9r"; + }; + + nativeBuildInputs = [ requests ]; + + meta = with stdenv.lib; { + description = '' + Get a public suffix for a domain name using the Public Suffix + List. Forked from and using the same API as the publicsuffix package. + ''; + homepage = "https://pypi.python.org/pypi/publicsuffix2/"; + license = licenses.mpl20; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c6dfc9582c72..6a8c5a3d56a8 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5038,6 +5038,8 @@ in { publicsuffix = callPackage ../development/python-modules/publicsuffix {}; + publicsuffix2 = callPackage ../development/python-modules/publicsuffix2 {}; + py = callPackage ../development/python-modules/py { }; pyacoustid = callPackage ../development/python-modules/pyacoustid { }; From 55d52851a6c650b2ce45d0752ed93b1de57e253a Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Fri, 17 Apr 2020 22:18:59 +0200 Subject: [PATCH 108/219] mitmproxy: 4.0.4 -> 5.1.1 --- pkgs/tools/networking/mitmproxy/default.nix | 50 ++++--------------- pkgs/tools/networking/mitmproxy/pytest5.patch | 31 ------------ 2 files changed, 11 insertions(+), 70 deletions(-) delete mode 100644 pkgs/tools/networking/mitmproxy/pytest5.patch diff --git a/pkgs/tools/networking/mitmproxy/default.nix b/pkgs/tools/networking/mitmproxy/default.nix index 7a623ab69a68..b9d873fad6af 100644 --- a/pkgs/tools/networking/mitmproxy/default.nix +++ b/pkgs/tools/networking/mitmproxy/default.nix @@ -4,47 +4,15 @@ with python3Packages; buildPythonPackage rec { pname = "mitmproxy"; - version = "4.0.4"; + version = "5.1.1"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "14i9dkafvyl15rq2qa8xldscn5lmkk2g52kbi2hl63nzx9yibx6r"; + sha256 = "1lirlckpvd3c6s6q3p32w4k4yfna5mlgr1x9g39lhzzq0sdiz3lk"; }; - patches = [ - (fetchpatch { - # Tests failed due to expired test certificates, - # https://github.com/mitmproxy/mitmproxy/issues/3316 - # TODO: remove on next update - name = "test-certificates.patch"; - url = "https://github.com/mitmproxy/mitmproxy/commit/1b6a8d6acd3d70f9b9627ad4ae9def08103f8250.patch"; - sha256 = "03y79c25yir7d8xj79czdc81y3irqq1i3ks9ca0mv1az8b7xsvfv"; - }) - (fetchpatch { - # 0.13 <= wsproto < 0.14 patch - # https://github.com/mitmproxy/mitmproxy/issues/3459 - # TODO: remove on next update - name = "wsproto-0.13.patch"; - url = "https://github.com/mitmproxy/mitmproxy/commit/70777a1b6ed64af9cafcdef223a8a260ecc96864.patch"; - sha256 = "1ddxdr7js510kzyq3gyks4k5k1n8zb1i9amxw7wzmi1dcg8kqw9a"; - # We strip these bounds anyway - excludes = [ "setup.py" ]; - }) - (fetchpatch { - # Fix for newer pytest disallowing calling fixtures - # https://github.com/mitmproxy/mitmproxy/issues/3403 - # TODO: remove on next update - name = "dont-call-fixtures.patch"; - url = "https://github.com/mitmproxy/mitmproxy/commit/ce28721458c8cc71de86513a5110676e9763041b.patch"; - sha256 = "05pljr28lx7l1xgswqr9sz8dnhvc7npzh8xg2p9hignf159kd54d"; - # Irrelevant in nixpkgs - excludes = [ "setup.py" "setup.cfg" "release/docker/*" ]; - }) - ./pytest5.patch - ]; - postPatch = '' # remove dependency constraints sed 's/>=\([0-9]\.\?\)\+\( \?, \?<\([0-9]\.\?\)\+\)\?//' -i setup.py @@ -61,17 +29,21 @@ buildPythonPackage rec { ''; propagatedBuildInputs = [ - blinker click certifi cryptography - h2 hyperframe kaitaistruct passlib - pyasn1 pyopenssl pyparsing pyperclip - ruamel_yaml tornado urwid brotlipy - sortedcontainers ldap3 wsproto setuptools + blinker brotli certifi cffi + click cryptography flask h11 + h2 hpack hyperframe itsdangerous + jinja2 kaitaistruct ldap3 markupsafe + passlib protobuf publicsuffix2 pyasn1 + pycparser pyopenssl pyparsing pyperclip + ruamel_yaml setuptools six sortedcontainers + tornado urwid werkzeug wsproto zstandard ]; checkInputs = [ beautifulsoup4 flask pytest requests glibcLocales asynctest parver pytest-asyncio + hypothesis ]; meta = with stdenv.lib; { diff --git a/pkgs/tools/networking/mitmproxy/pytest5.patch b/pkgs/tools/networking/mitmproxy/pytest5.patch deleted file mode 100644 index bfbf7253b9c4..000000000000 --- a/pkgs/tools/networking/mitmproxy/pytest5.patch +++ /dev/null @@ -1,31 +0,0 @@ -diff --git a/test/mitmproxy/net/test_tls.py b/test/mitmproxy/net/test_tls.py -index 489bf89f..c78472e3 100644 ---- a/test/mitmproxy/net/test_tls.py -+++ b/test/mitmproxy/net/test_tls.py -@@ -87,14 +87,16 @@ def test_get_client_hello(): - rfile = io.BufferedReader(io.BytesIO( - FULL_CLIENT_HELLO_NO_EXTENSIONS[:30] - )) -- with pytest.raises(exceptions.TlsProtocolException, message="Unexpected EOF"): -+ with pytest.raises(exceptions.TlsProtocolException): - tls.get_client_hello(rfile) -+ pytest.fail("Unexpected EOF") - - rfile = io.BufferedReader(io.BytesIO( - b"GET /" - )) -- with pytest.raises(exceptions.TlsProtocolException, message="Expected TLS record"): -+ with pytest.raises(exceptions.TlsProtocolException): - tls.get_client_hello(rfile) -+ pytest.fail("Expected TLS record") - - - class TestClientHello: -@@ -153,5 +155,6 @@ class TestClientHello: - b"\x01\x00\x00\x03" + # handshake header - b"foo" - )) -- with pytest.raises(exceptions.TlsProtocolException, message='Cannot parse Client Hello'): -+ with pytest.raises(exceptions.TlsProtocolException): - tls.ClientHello.from_file(rfile) -+ pytest.fail('Cannot parse Client Hello') From f253da42f8fe2bf2d955849d9b4fff54e1a0f0d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Manuel=20B=C3=A4renz?= Date: Sun, 19 Apr 2020 12:56:52 +0200 Subject: [PATCH 109/219] Add myself (turion) to the maintainers list for several packages Following nh2's advice, I want to be more involved in nixpkgs, and I'll start to review changes to programs that are important to me, and that didn't have a long list of maintainers yet. --- maintainers/maintainer-list.nix | 6 ++++++ pkgs/applications/audio/musescore/default.nix | 2 +- pkgs/applications/editors/vscode/vscodium.nix | 2 +- pkgs/applications/kde/konsole.nix | 2 +- pkgs/applications/kde/okular.nix | 2 +- pkgs/applications/misc/keepassx/community.nix | 2 +- pkgs/applications/misc/krusader/default.nix | 2 +- 7 files changed, 12 insertions(+), 6 deletions(-) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 1307b293fe98..dcf96307c3b7 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -7816,6 +7816,12 @@ githubId = 563054; name = "Thomas Tuegel"; }; + turion = { + email = "programming@manuelbaerenz.de"; + github = "turion"; + githubId = 303489; + name = "Manuel Bärenz"; + }; tv = { email = "tv@krebsco.de"; github = "4z3"; diff --git a/pkgs/applications/audio/musescore/default.nix b/pkgs/applications/audio/musescore/default.nix index bd4b2db380a3..063a05a72f3a 100644 --- a/pkgs/applications/audio/musescore/default.nix +++ b/pkgs/applications/audio/musescore/default.nix @@ -33,7 +33,7 @@ mkDerivation rec { description = "Music notation and composition software"; homepage = "https://musescore.org/"; license = licenses.gpl2; - maintainers = with maintainers; [ vandenoever ]; + maintainers = with maintainers; [ vandenoever turion ]; platforms = platforms.linux; repositories.git = "https://github.com/musescore/MuseScore"; }; diff --git a/pkgs/applications/editors/vscode/vscodium.nix b/pkgs/applications/editors/vscode/vscodium.nix index edc63b1c2f85..63e6cc920bf3 100644 --- a/pkgs/applications/editors/vscode/vscodium.nix +++ b/pkgs/applications/editors/vscode/vscodium.nix @@ -54,7 +54,7 @@ in homepage = "https://github.com/VSCodium/vscodium"; downloadPage = "https://github.com/VSCodium/vscodium/releases"; license = licenses.mit; - maintainers = with maintainers; [ synthetica ]; + maintainers = with maintainers; [ synthetica turion ]; platforms = [ "x86_64-linux" "x86_64-darwin" ]; }; } diff --git a/pkgs/applications/kde/konsole.nix b/pkgs/applications/kde/konsole.nix index 1be5b0b4a894..ed26dc08bb6c 100644 --- a/pkgs/applications/kde/konsole.nix +++ b/pkgs/applications/kde/konsole.nix @@ -11,7 +11,7 @@ mkDerivation { name = "konsole"; meta = { license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; - maintainers = [ lib.maintainers.ttuegel ]; + maintainers = with lib.maintainers; [ ttuegel turion ]; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; buildInputs = [ diff --git a/pkgs/applications/kde/okular.nix b/pkgs/applications/kde/okular.nix index c399335c4a87..f07df73a2556 100644 --- a/pkgs/applications/kde/okular.nix +++ b/pkgs/applications/kde/okular.nix @@ -21,7 +21,7 @@ mkDerivation { meta = with lib; { homepage = "http://www.kde.org"; license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ]; - maintainers = with maintainers; [ ttuegel ]; + maintainers = with maintainers; [ ttuegel turion ]; platforms = lib.platforms.linux; }; } diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix index 0ed1cd27be05..7909d86c18a6 100644 --- a/pkgs/applications/misc/keepassx/community.nix +++ b/pkgs/applications/misc/keepassx/community.nix @@ -116,7 +116,7 @@ stdenv.mkDerivation rec { longDescription = "A community fork of KeePassX, which is itself a port of KeePass Password Safe. The goal is to extend and improve KeePassX with new features and bugfixes to provide a feature-rich, fully cross-platform and modern open-source password manager. Accessible via native cross-platform GUI, CLI, and browser integration with the KeePassXC Browser Extension (https://github.com/keepassxreboot/keepassxc-browser)."; homepage = "https://keepassxc.org/"; license = licenses.gpl2; - maintainers = with maintainers; [ jonafato ]; + maintainers = with maintainers; [ jonafato turion ]; platforms = platforms.linux ++ platforms.darwin; }; } diff --git a/pkgs/applications/misc/krusader/default.nix b/pkgs/applications/misc/krusader/default.nix index 4ae8a99b35a6..ab13c4989d9a 100644 --- a/pkgs/applications/misc/krusader/default.nix +++ b/pkgs/applications/misc/krusader/default.nix @@ -20,7 +20,7 @@ in mkDerivation rec { description = "Norton/Total Commander clone for KDE"; license = licenses.gpl2; homepage = "http://www.krusader.org"; - maintainers = with maintainers; [ sander ]; + maintainers = with maintainers; [ sander turion ]; }; nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ]; From c34bc1d8240d38f54b34569f09bffc4f0f5e8662 Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Sun, 19 Apr 2020 21:22:41 +1000 Subject: [PATCH 110/219] skopeo: install completion --- pkgs/development/tools/skopeo/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/development/tools/skopeo/default.nix b/pkgs/development/tools/skopeo/default.nix index c18a767928e7..7d4e4e0c69ed 100644 --- a/pkgs/development/tools/skopeo/default.nix +++ b/pkgs/development/tools/skopeo/default.nix @@ -9,6 +9,7 @@ , pkg-config , libselinux , go-md2man +, installShellFiles }: let @@ -37,7 +38,7 @@ buildGoPackage { excludedPackages = [ "integration" ]; - nativeBuildInputs = [ pkg-config go-md2man ]; + nativeBuildInputs = [ pkg-config go-md2man installShellFiles ]; buildInputs = [ gpgme ] ++ stdenv.lib.optionals stdenv.isLinux [ libgpgerror lvm2 btrfs-progs libselinux ]; @@ -51,6 +52,7 @@ buildGoPackage { # depends on buildGoPackage not changing … pushd ./go/src/${goPackagePath} make install-docs MANINSTALLDIR="$man/share/man" + installShellCompletion --bash completions/bash/skopeo popd ''; From 183e448a23f8adff7aef9d421715d0816cbe01c4 Mon Sep 17 00:00:00 2001 From: Bart Brouns Date: Sun, 19 Apr 2020 13:36:05 +0200 Subject: [PATCH 111/219] lsp-plugins: 1.1.15 -> 1.1.19 --- pkgs/applications/audio/lsp-plugins/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/lsp-plugins/default.nix b/pkgs/applications/audio/lsp-plugins/default.nix index a8aa101ab4de..d530aff9faa6 100644 --- a/pkgs/applications/audio/lsp-plugins/default.nix +++ b/pkgs/applications/audio/lsp-plugins/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { pname = "lsp-plugins"; - version = "1.1.15"; + version = "1.1.19"; src = fetchFromGitHub { owner = "sadko4u"; repo = pname; rev = "${pname}-${version}"; - sha256 = "0lynyjs5zp27gnzcv8a23pvb7c1ghzc2dspypca3ciq40bfpfzik"; + sha256 = "1wiph3vxhydc6mr9hn2c6crd4cx592l2zv0wrzgmpnlm1lflzpbg"; }; nativeBuildInputs = [ pkgconfig php makeWrapper ]; From e353fe89dbe0edbe30b9b3691e3d5734dfb42640 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Sun, 19 Apr 2020 14:49:07 +0200 Subject: [PATCH 112/219] keepassxc: 2.5.2 -> 2.5.4 + disabled testcli flaky test --- pkgs/applications/misc/keepassx/community.nix | 20 +++++++++++++++---- pkgs/applications/misc/keepassx/darwin.patch | 4 ++-- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix index 0ed1cd27be05..27ffa7d17a3b 100644 --- a/pkgs/applications/misc/keepassx/community.nix +++ b/pkgs/applications/misc/keepassx/community.nix @@ -1,4 +1,10 @@ -{ stdenv, fetchFromGitHub, cmake, makeWrapper, qttools, darwin +{ stdenv +, fetchFromGitHub +, fetchpatch +, cmake +, makeWrapper +, qttools +, darwin , curl , glibcLocales @@ -33,13 +39,13 @@ with stdenv.lib; stdenv.mkDerivation rec { pname = "keepassxc"; - version = "2.5.2"; + version = "2.5.4"; src = fetchFromGitHub { owner = "keepassxreboot"; repo = "keepassxc"; rev = version; - sha256 = "0z5bd17qaq7zpv96gw6qwv6rb4xx7xjq86ss6wm5zskcrraf7r7n"; + sha256 = "1xih9q1pxszalc0l29fmjxwn1vrrrrbnhc8gmi8brw5sclhbs6bh"; }; NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang [ @@ -57,6 +63,11 @@ stdenv.mkDerivation rec { patches = [ ./darwin.patch + # use wl-copy on Wayland - can be dropped with the next version update + (fetchpatch { + url = "https://github.com/keepassxreboot/keepassxc/commit/6128e5d58294f26411160f44da91087ebe7f4b07.patch"; + sha256 = "16q0h7kijqjdbskmk4ar6p3g8vcxr0bq1zrlq2bk16pk10nv4bh1"; + }) ]; cmakeFlags = [ @@ -79,7 +90,8 @@ stdenv.mkDerivation rec { export LC_ALL="en_US.UTF-8" export QT_QPA_PLATFORM=offscreen export QT_PLUGIN_PATH="${qtbase.bin}/${qtbase.qtPluginPrefix}" - make test ARGS+="-E testgui --output-on-failure" + # testcli and testgui are flaky - skip them both + make test ARGS+="-E 'testcli|testgui' --output-on-failure" ''; nativeBuildInputs = [ cmake wrapQtAppsHook qttools ]; diff --git a/pkgs/applications/misc/keepassx/darwin.patch b/pkgs/applications/misc/keepassx/darwin.patch index 6232d1118a7b..95ca5d4587fe 100644 --- a/pkgs/applications/misc/keepassx/darwin.patch +++ b/pkgs/applications/misc/keepassx/darwin.patch @@ -6,10 +6,10 @@ index 74b1a7ff..0a713a32 100644 set(PLUGIN_INSTALL_DIR ".") set(DATA_INSTALL_DIR "share") elseif(APPLE AND WITH_APP_BUNDLE) -+ set(CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/Applications") ++ set(CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/Applications") + set(BUNDLE_INSTALL_DIR "${PROGNAME}.app/Contents") set(CMAKE_INSTALL_MANDIR "${PROGNAME}.app/Contents/Resources/man") set(CLI_INSTALL_DIR "${PROGNAME}.app/Contents/MacOS") - set(PROXY_INSTALL_DIR "${PROGNAME}.app/Contents/MacOS") @@ -369,12 +370,6 @@ set(CMAKE_AUTORCC ON) if(APPLE) From 0b23e4e5b7a066e3a34775e2a22057c1d1ec461e Mon Sep 17 00:00:00 2001 From: Lionello Lunesu Date: Sun, 19 Apr 2020 20:52:41 +0800 Subject: [PATCH 113/219] Remove top-level ldcBootstrap --- pkgs/development/compilers/ldc/generic.nix | 73 ++++++++-------------- pkgs/top-level/all-packages.nix | 1 - 2 files changed, 26 insertions(+), 48 deletions(-) diff --git a/pkgs/development/compilers/ldc/generic.nix b/pkgs/development/compilers/ldc/generic.nix index 93ffe37785d7..c93d423945cb 100644 --- a/pkgs/development/compilers/ldc/generic.nix +++ b/pkgs/development/compilers/ldc/generic.nix @@ -1,10 +1,8 @@ -{ bootstrapVersion ? false -, version -, ldcSha256 -}: +{ version, ldcSha256 }: { stdenv, fetchurl, cmake, ninja, llvm_5, llvm_8, curl, tzdata -, libconfig, lit, gdb, unzip, darwin, bash, ldcBootstrap +, libconfig, lit, gdb, unzip, darwin, bash , callPackage, makeWrapper, runCommand, targetPackages +, ldcBootstrap ? callPackage ./bootstrap.nix { } }: let @@ -14,8 +12,6 @@ let echo ${curl.out}/lib/libcurl${stdenv.hostPlatform.extensions.sharedLibrary} > $out/LibcurlPathFile ''; - bootstrapLdc = if bootstrapVersion then null else ldcBootstrap; - in stdenv.mkDerivation rec { @@ -35,8 +31,7 @@ stdenv.mkDerivation rec { postUnpack = '' patchShebangs . '' - - + stdenv.lib.optionalString (!bootstrapVersion) '' + + '' rm ldc-${version}-src/tests/d2/dmd-testsuite/fail_compilation/mixin_gc.d rm ldc-${version}-src/tests/d2/dmd-testsuite/runnable/xtest46_gc.d rm ldc-${version}-src/tests/d2/dmd-testsuite/runnable/testptrref_gc.d @@ -44,54 +39,40 @@ stdenv.mkDerivation rec { # test depends on current year rm ldc-${version}-src/tests/d2/dmd-testsuite/compilable/ddocYear.d '' - - + stdenv.lib.optionalString (!bootstrapVersion && stdenv.hostPlatform.isDarwin) '' + + stdenv.lib.optionalString stdenv.hostPlatform.isDarwin '' # https://github.com/NixOS/nixpkgs/issues/34817 rm -r ldc-${version}-src/tests/plugins/addFuncEntryCall ''; postPatch = '' - # Setting SHELL=$SHELL when dmd testsuite is run doesn't work on Linux somehow - substituteInPlace tests/d2/dmd-testsuite/Makefile --replace "SHELL=/bin/bash" "SHELL=${bash}/bin/bash" - '' - - + stdenv.lib.optionalString (!bootstrapVersion && stdenv.hostPlatform.isLinux) '' + # Setting SHELL=$SHELL when dmd testsuite is run doesn't work on Linux somehow + substituteInPlace tests/d2/dmd-testsuite/Makefile --replace "SHELL=/bin/bash" "SHELL=${bash}/bin/bash" + '' + + stdenv.lib.optionalString stdenv.hostPlatform.isLinux '' substituteInPlace runtime/phobos/std/socket.d --replace "assert(ih.addrList[0] == 0x7F_00_00_01);" "" '' - - + stdenv.lib.optionalString (!bootstrapVersion && stdenv.hostPlatform.isDarwin) '' + + stdenv.lib.optionalString stdenv.hostPlatform.isDarwin '' substituteInPlace runtime/phobos/std/socket.d --replace "foreach (name; names)" "names = []; foreach (name; names)" - '' - - + stdenv.lib.optionalString (bootstrapVersion && stdenv.hostPlatform.isDarwin) '' - # Was not able to compile on darwin due to "__inline_isnanl" - # being undefined. - # TODO Remove with version > 0.17.6 - substituteInPlace dmd2/root/port.c --replace __inline_isnanl __inline_isnan ''; - nativeBuildInputs = [ cmake ninja makeWrapper unzip ] - ++ stdenv.lib.optionals (!bootstrapVersion) [ - bootstrapLdc lit lit.python - ] - ++ stdenv.lib.optional (!bootstrapVersion && stdenv.hostPlatform.isDarwin) - # https://github.com/NixOS/nixpkgs/issues/57120 - # https://github.com/NixOS/nixpkgs/pull/59197#issuecomment-481972515 - llvm_5 - ++ stdenv.lib.optional (!bootstrapVersion && !stdenv.hostPlatform.isDarwin) - llvm_8 - ++ stdenv.lib.optional (!bootstrapVersion && !stdenv.hostPlatform.isDarwin) - # https://github.com/NixOS/nixpkgs/pull/36378#issuecomment-385034818 - gdb - ++ stdenv.lib.optionals (bootstrapVersion) [ - libconfig llvm_5 - ] - ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin - darwin.apple_sdk.frameworks.Foundation; + nativeBuildInputs = [ + cmake ninja makeWrapper unzip ldcBootstrap lit lit.python + ] + ++ stdenv.lib.optionals stdenv.hostPlatform.isDarwin [ + darwin.apple_sdk.frameworks.Foundation + # https://github.com/NixOS/nixpkgs/issues/57120 + # https://github.com/NixOS/nixpkgs/pull/59197#issuecomment-481972515 + llvm_5 + ] + ++ stdenv.lib.optionals (!stdenv.hostPlatform.isDarwin) [ + llvm_8 + # https://github.com/NixOS/nixpkgs/pull/36378#issuecomment-385034818 + gdb + ]; buildInputs = [ curl tzdata ]; - cmakeFlags = stdenv.lib.optionals (!bootstrapVersion) [ + cmakeFlags = [ "-DD_FLAGS=-d-version=TZDatabaseDir;-d-version=LibcurlPath;-J${pathConfig}" "-DCMAKE_BUILD_TYPE=Release" ]; @@ -125,9 +106,7 @@ stdenv.mkDerivation rec { additionalExceptions = stdenv.lib.optionalString stdenv.hostPlatform.isDarwin "|druntime-test-shared"; - doCheck = !bootstrapVersion; - - checkPhase = stdenv.lib.optionalString doCheck '' + checkPhase = '' # Build default lib test runners ninja -j$NIX_BUILD_CORES all-test-runners diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3654c4c45a11..ef8ea2a268c7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4554,7 +4554,6 @@ in lalezar-fonts = callPackage ../data/fonts/lalezar-fonts { }; - ldcBootstrap = callPackage ../development/compilers/ldc/bootstrap.nix { }; ldc = callPackage ../development/compilers/ldc { }; lbreakout2 = callPackage ../games/lbreakout2 { }; From 0e4417f1185e2093eb4f084e144f49a66f701db9 Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Sun, 19 Apr 2020 15:03:37 +0200 Subject: [PATCH 114/219] Revert "nixos: Introduce nix.buildLocation option" This reverts commit 5291925fd2486175e781669412fa5a525da7602a. Reason: This started to cause severe regressions, see: - https://github.com/NixOS/nixpkgs/issues/85552 - https://github.com/NixOS/nixpkgs/pull/83166#pullrequestreview-395960588 Fixes #85552. --- nixos/modules/services/misc/nix-daemon.nix | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/nixos/modules/services/misc/nix-daemon.nix b/nixos/modules/services/misc/nix-daemon.nix index 022ddad8f367..0c2407e1dd2f 100644 --- a/nixos/modules/services/misc/nix-daemon.nix +++ b/nixos/modules/services/misc/nix-daemon.nix @@ -430,16 +430,6 @@ in ''; }; - buildLocation = mkOption { - type = types.str; - default = "/tmp"; - example = "/var/buildroot"; - description = '' - Temporary directory, which used to unpack and build source packages. - (by default /tmp is used, which commonly reside on tmpfs, - and big packages (like browsers) can just not fit there) - ''; - }; }; }; @@ -486,9 +476,7 @@ in ++ optionals cfg.distributedBuilds [ pkgs.gzip ]; environment = cfg.envVars - // { CURL_CA_BUNDLE = "/etc/ssl/certs/ca-certificates.crt"; - TMPDIR = cfg.buildLocation; - } + // { CURL_CA_BUNDLE = "/etc/ssl/certs/ca-certificates.crt"; } // config.networking.proxy.envVars; unitConfig.RequiresMountsFor = "/nix/store"; @@ -502,8 +490,6 @@ in restartTriggers = [ nixConf ]; }; - systemd.tmpfiles.rules = [ "d ${cfg.buildLocation} 0775 root root -" ]; - # Set up the environment variables for running Nix. environment.sessionVariables = cfg.envVars // { NIX_PATH = cfg.nixPath; From e727346ccc54c37b8d96fb1765d688e4e4d04189 Mon Sep 17 00:00:00 2001 From: Lionello Lunesu Date: Sun, 19 Apr 2020 21:44:06 +0800 Subject: [PATCH 115/219] Add missing deps for linux --- pkgs/development/compilers/ldc/binary.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/ldc/binary.nix b/pkgs/development/compilers/ldc/binary.nix index 41a70662948e..56d40be86194 100644 --- a/pkgs/development/compilers/ldc/binary.nix +++ b/pkgs/development/compilers/ldc/binary.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, curl, tzdata, autoPatchelfHook, fixDarwinDylibNames +{ stdenv, fetchurl, curl, tzdata, autoPatchelfHook, fixDarwinDylibNames, libxml2 , version, hashes }: with stdenv; let @@ -18,15 +18,15 @@ in mkDerivation { dontBuild = true; nativeBuildInputs = [ fixDarwinDylibNames autoPatchelfHook ]; + + buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ libxml2 stdenv.cc.cc ]; + propagatedBuildInputs = [ curl tzdata ]; installPhase = '' mkdir -p $out mv bin etc import lib LICENSE README $out/ - - # fix paths in ldc2.conf (one level less) - # substituteInPlace $out/bin/ldc2.conf --replace "/../../" "/../" ''; meta = with lib; { From 00222dbb0efd3234b471207aa329025cf38d7d8b Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 19 Apr 2020 16:25:48 +0200 Subject: [PATCH 116/219] bbswitch: fix build with Linux kernel version >= 5.6.0 Fixes https://github.com/NixOS/nixpkgs/issues/85564. --- pkgs/os-specific/linux/bbswitch/default.nix | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/pkgs/os-specific/linux/bbswitch/default.nix b/pkgs/os-specific/linux/bbswitch/default.nix index eea8d31f24db..67cbc6e5c5e6 100644 --- a/pkgs/os-specific/linux/bbswitch/default.nix +++ b/pkgs/os-specific/linux/bbswitch/default.nix @@ -15,10 +15,16 @@ stdenv.mkDerivation { sha256 = "0xql1nv8dafnrcg54f3jsi3ny3cd2ca9iv73pxpgxd2gfczvvjkn"; }; - patches = [ (fetchpatch { - url = "https://github.com/Bumblebee-Project/bbswitch/pull/102.patch"; - sha256 = "1lbr6pyyby4k9rn2ry5qc38kc738d0442jhhq57vmdjb6hxjya7m"; - }) ]; + patches = [ + (fetchpatch { + url = "https://github.com/Bumblebee-Project/bbswitch/pull/102.patch"; + sha256 = "1lbr6pyyby4k9rn2ry5qc38kc738d0442jhhq57vmdjb6hxjya7m"; + }) + (fetchpatch { + url = "https://github.com/Bumblebee-Project/bbswitch/pull/196.patch"; + sha256 = "02ihy3piws7783qbm9q0mb9s18ipn5ckdy1iar74xn31qjrsn99n"; + }) + ]; nativeBuildInputs = kernel.moduleBuildDependencies; From 6cbf2e186cd505457602c2ff0c6aa64053c40050 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 19 Apr 2020 16:54:16 +0200 Subject: [PATCH 117/219] =?UTF-8?q?webkitgtk:=202.28.0=20=E2=86=92=202.28.?= =?UTF-8?q?1=20(#85378)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes a CVE https://webkitgtk.org/security/WSA-2020-0004.html https://webkitgtk.org/2020/04/13/webkitgtk2.28.1-released.html --- pkgs/development/libraries/webkitgtk/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/webkitgtk/default.nix b/pkgs/development/libraries/webkitgtk/default.nix index b0e5fbc5618e..f1a5ddfd4a0a 100644 --- a/pkgs/development/libraries/webkitgtk/default.nix +++ b/pkgs/development/libraries/webkitgtk/default.nix @@ -61,13 +61,13 @@ with stdenv.lib; stdenv.mkDerivation rec { pname = "webkitgtk"; - version = "2.28.0"; + version = "2.28.1"; outputs = [ "out" "dev" ]; src = fetchurl { url = "https://webkitgtk.org/releases/${pname}-${version}.tar.xz"; - sha256 = "12qfs9w93c5kiyi14ynm4rf4ad3c213dvzmdrc9c3ab2iwbks7rn"; + sha256 = "rLwmo+1cE/OeRodc9EepwFQbbPsX+eeIQyNDHLMn89g="; }; patches = optionals stdenv.isLinux [ From 8084edb11c53e3ae36e980e3dfe7ea96d642f6c2 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Sun, 19 Apr 2020 11:07:39 -0500 Subject: [PATCH 118/219] terraform: fix /bin/stty reference (#85560) --- .../applications/networking/cluster/terraform/default.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/networking/cluster/terraform/default.nix b/pkgs/applications/networking/cluster/terraform/default.nix index b9c82f97c4fd..ee27422a1391 100644 --- a/pkgs/applications/networking/cluster/terraform/default.nix +++ b/pkgs/applications/networking/cluster/terraform/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, buildEnv, buildGoPackage, fetchFromGitHub, makeWrapper +{ stdenv, lib, buildEnv, buildGoPackage, fetchFromGitHub, makeWrapper, coreutils , runCommand, writeText, terraform-providers }: let @@ -18,6 +18,12 @@ let inherit sha256; }; + postPatch = '' + # speakeasy hardcodes /bin/stty https://github.com/bgentry/speakeasy/issues/22 + substituteInPlace vendor/github.com/bgentry/speakeasy/speakeasy_unix.go \ + --replace "/bin/stty" "${coreutils}/bin/stty" + ''; + postInstall = '' # remove all plugins, they are part of the main binary now for i in $bin/bin/*; do From 3eee9961cc953b3df108df8a4c6302197a0b98c7 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 18 Apr 2020 21:25:48 -0400 Subject: [PATCH 119/219] contrast: 0.0.2 -> 0.0.3 --- pkgs/applications/accessibility/contrast/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/accessibility/contrast/default.nix b/pkgs/applications/accessibility/contrast/default.nix index 673c8071d4b2..192bf041c64e 100644 --- a/pkgs/applications/accessibility/contrast/default.nix +++ b/pkgs/applications/accessibility/contrast/default.nix @@ -19,7 +19,7 @@ rustPlatform.buildRustPackage rec { pname = "contrast"; - version = "0.0.2"; + version = "0.0.3"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; @@ -27,10 +27,10 @@ rustPlatform.buildRustPackage rec { owner = "design"; repo = "contrast"; rev = version; - sha256 = "0rm705zrk9rfv31pwbqxrswi5v6vhnghxa8dgxjmcrh00l8dm6j9"; + sha256 = "0kk3mv7a6y258109xvgicmsi0lw0rcs00gfyivl5hdz7qh47iccy"; }; - cargoSha256 = "0qj0vmxa1d6war1vb3zgkf1drvk7awm970fw6692hd9msa9c1kkf"; + cargoSha256 = "0vi8nv4hkhsgqgz36xacwkk5cxirg6li44nbmk3x7vx7c64hzybq"; nativeBuildInputs = [ desktop-file-utils From 2457037d2e16d357c0245345d73493ed6ea04dcc Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 18 Apr 2020 21:26:12 -0400 Subject: [PATCH 120/219] lollypop: 1.2.32 -> 1.2.35 --- pkgs/applications/audio/lollypop/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/lollypop/default.nix b/pkgs/applications/audio/lollypop/default.nix index a3580ce3b522..e4b8b906fa64 100644 --- a/pkgs/applications/audio/lollypop/default.nix +++ b/pkgs/applications/audio/lollypop/default.nix @@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec { pname = "lollypop"; - version = "1.2.32"; + version = "1.2.35"; format = "other"; doCheck = false; @@ -32,7 +32,7 @@ python3.pkgs.buildPythonApplication rec { url = "https://gitlab.gnome.org/World/lollypop"; rev = "refs/tags/${version}"; fetchSubmodules = true; - sha256 = "03x6qihd349pq5lmgahb77sys60g16v5v6qkdlzf8k88451k8p7n"; + sha256 = "19nw9qh17yyi9ih1nwngbbwjx1vr26haqhmzsdqf0yjgsgf9vldx"; }; nativeBuildInputs = [ From a09e4c818080ba40c3b4a115da684221f3da256b Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sun, 19 Apr 2020 12:34:05 -0400 Subject: [PATCH 121/219] elementary-planner: 2.2.14 -> 2.3.2 --- pkgs/applications/office/elementary-planner/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/office/elementary-planner/default.nix b/pkgs/applications/office/elementary-planner/default.nix index def44b40e809..0ed5da382461 100644 --- a/pkgs/applications/office/elementary-planner/default.nix +++ b/pkgs/applications/office/elementary-planner/default.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { pname = "elementary-planner"; - version = "2.2.14"; + version = "2.3.2"; src = fetchFromGitHub { owner = "alainm23"; repo = "planner"; rev = version; - sha256 = "14k5kiknr0d3my17p4v20iiqzifpz3y80gdzj8vdxic8yk2yr1ap"; + sha256 = "1kjk1zafx71zmax3whzpx6mzl037wlxri30bl2k9y9rg3fd09arr"; }; nativeBuildInputs = [ From 2c74cdac47e17fff9c0b0e7554bbcbdf319cbcdd Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sun, 19 Apr 2020 13:08:38 -0400 Subject: [PATCH 122/219] elementary-planner: fix stylesheet issue Revert a patch the works around some stylesheet issues: https://github.com/alainm23/planner/issues/268 https://github.com/alainm23/planner/issues/303 The don't seem to be a problem with Pantheon on NixOS and for some reason produce the opposite effect with pantheon's stylesheet. --- .../0001-Revert-Add-patch.patch | 84 +++++++++++++++++++ .../office/elementary-planner/default.nix | 10 +++ 2 files changed, 94 insertions(+) create mode 100644 pkgs/applications/office/elementary-planner/0001-Revert-Add-patch.patch diff --git a/pkgs/applications/office/elementary-planner/0001-Revert-Add-patch.patch b/pkgs/applications/office/elementary-planner/0001-Revert-Add-patch.patch new file mode 100644 index 000000000000..ede3bc7a6ad3 --- /dev/null +++ b/pkgs/applications/office/elementary-planner/0001-Revert-Add-patch.patch @@ -0,0 +1,84 @@ +From a6d8bd67416c848f9bf52f4746bda34216ae9993 Mon Sep 17 00:00:00 2001 +From: worldofpeace +Date: Sun, 19 Apr 2020 12:48:59 -0400 +Subject: [PATCH] Revert "Add patch" + +This reverts commit c44127936b785afda0e914da4c1dc1e66a0ac97b. +--- + src/Application.vala | 49 -------------------------------------------- + 1 file changed, 49 deletions(-) + +diff --git a/src/Application.vala b/src/Application.vala +index 43d52fbc..82a9ebe5 100644 +--- a/src/Application.vala ++++ b/src/Application.vala +@@ -127,66 +127,17 @@ public class Planner : Gtk.Application { + + utils.apply_theme_changed (); + +- // Set Theme and Icon + Gtk.Settings.get_default ().set_property ("gtk-icon-theme-name", "elementary"); + Gtk.Settings.get_default ().set_property ("gtk-theme-name", "elementary"); + +- // Path Theme +- var command = new Granite.Services.SimpleCommand (".", "echo $DESKTOP_SESSION"); +- command.run (); +- command.output_changed.connect ((text) => { +- print ("DESKTOP_SESSION: %s\n".printf (text)); +- }); +- +- if (get_os_info ("PRETTY_NAME") == null || get_os_info ("PRETTY_NAME").index_of ("elementary") == -1) { +- string CSS = """ +- window decoration { +- box-shadow: none; +- margin: 1px; +- } +- """; +- +- var _provider = new Gtk.CssProvider (); +- _provider.load_from_data (CSS, CSS.length); +- +- Gtk.StyleContext.add_provider_for_screen ( +- Gdk.Screen.get_default (), _provider, +- Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION +- ); +- } +- + // Set shortcut + string quick_add_shortcut = settings.get_string ("quick-add-shortcut"); + if (quick_add_shortcut == "") { + quick_add_shortcut = "Tab"; + settings.set_string ("quick-add-shortcut", quick_add_shortcut); + } +- + utils.set_quick_add_shortcut (quick_add_shortcut); + } +- +- public string get_os_info (string field) { +- string return_value = ""; +- var file = File.new_for_path ("/etc/os-release"); +- try { +- var osrel = new Gee.HashMap (); +- var dis = new DataInputStream (file.read ()); +- string line; +- // Read lines until end of file (null) is reached +- while ((line = dis.read_line (null)) != null) { +- var osrel_component = line.split ("=", 2); +- if (osrel_component.length == 2) { +- osrel[osrel_component[0]] = osrel_component[1].replace ("\"", ""); +- } +- } +- +- return_value = osrel[field]; +- } catch (Error e) { +- warning ("Couldn't read os-release file, assuming elementary OS"); +- } +- +- return return_value; +- } + + public override int command_line (ApplicationCommandLine command_line) { + bool silence_mode = false; +-- +2.25.1 + diff --git a/pkgs/applications/office/elementary-planner/default.nix b/pkgs/applications/office/elementary-planner/default.nix index 0ed5da382461..b01c34d5a0ed 100644 --- a/pkgs/applications/office/elementary-planner/default.nix +++ b/pkgs/applications/office/elementary-planner/default.nix @@ -24,6 +24,16 @@ stdenv.mkDerivation rec { sha256 = "1kjk1zafx71zmax3whzpx6mzl037wlxri30bl2k9y9rg3fd09arr"; }; + patches = [ + # Revert a patch the works around some stylesheet issues: + # https://github.com/alainm23/planner/issues/268 + # https://github.com/alainm23/planner/issues/303 + # The don't seem to be a problem with Pantheon on NixOS + # and for some reason produce the opposite effect with + # pantheon's stylesheet. + ./0001-Revert-Add-patch.patch + ]; + nativeBuildInputs = [ desktop-file-utils meson From c9a77e4d6dd4f6b5d2603a009408be10e1b8ee65 Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Sun, 19 Apr 2020 18:43:11 +0200 Subject: [PATCH 123/219] pythonPackages.secretstorage: drop old dependency pygobject was an optional dependency at some point but it has been removed and is no longer needed. --- pkgs/development/python-modules/secretstorage/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/secretstorage/default.nix b/pkgs/development/python-modules/secretstorage/default.nix index 9e2b5df845e6..d10ea9c8be2b 100644 --- a/pkgs/development/python-modules/secretstorage/default.nix +++ b/pkgs/development/python-modules/secretstorage/default.nix @@ -1,4 +1,4 @@ -{ lib, fetchPypi, buildPythonPackage, pythonOlder, cryptography, jeepney, pygobject3 }: +{ lib, fetchPypi, buildPythonPackage, pythonOlder, cryptography, jeepney }: buildPythonPackage rec { pname = "secretstorage"; @@ -15,7 +15,6 @@ buildPythonPackage rec { propagatedBuildInputs = [ cryptography jeepney - pygobject3 ]; # Needs a D-Bus Sesison From f7c774326985dd5a734a7a6889c2ec60d2ad8bfd Mon Sep 17 00:00:00 2001 From: ajs124 Date: Sun, 19 Apr 2020 19:24:21 +0200 Subject: [PATCH 124/219] libreoffice: fix build with poppler 0.86 was broken with update in #81955 / 6187d5babc1e8c0b2df2bd16a1d8cf4cb9aed9c8 --- pkgs/applications/office/libreoffice/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix index 7625ba3bea82..976fc0fcd2d7 100644 --- a/pkgs/applications/office/libreoffice/default.nix +++ b/pkgs/applications/office/libreoffice/default.nix @@ -62,6 +62,11 @@ in (stdenv.mkDerivation rec { patches = [ ./xdg-open-brief.patch + (fetchpatch { + url = "https://git.pld-linux.org/gitweb.cgi?p=packages/libreoffice.git;a=blob_plain;f=poppler-0.86.patch;h=76b8356d5f22ef537a83b0f9b0debab591f152fe;hb=a2737a61353e305a9ee69640fb20d4582c218008"; + name = "poppler-0.86.patch"; + sha256 = "0q6k4l8imgp8ailcv0qx5l83afyw44hah24fi7gjrm9xgv5sbb8j"; + }) ]; tarballPath = "external/tarballs"; From cf2ff92ae9330e2dc894f9edfb0afc7d433236c0 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Sun, 19 Apr 2020 19:25:58 +0200 Subject: [PATCH 125/219] libreoffice-fresh: 6.4.1.1 -> 6.4.3.2 --- .../office/libreoffice/src-fresh/download.nix | 8 ++++---- .../office/libreoffice/src-fresh/primary.nix | 10 +++++----- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/office/libreoffice/src-fresh/download.nix b/pkgs/applications/office/libreoffice/src-fresh/download.nix index bc329e5a8f89..f4b14870eb79 100644 --- a/pkgs/applications/office/libreoffice/src-fresh/download.nix +++ b/pkgs/applications/office/libreoffice/src-fresh/download.nix @@ -728,11 +728,11 @@ md5name = "a754c02f7051c2f21e52f8669a421b50485afcde9a581674d6106326b189d126-postgresql-9.2.24.tar.bz2"; } { - name = "Python-3.7.6.tar.xz"; - url = "http://dev-www.libreoffice.org/src/Python-3.7.6.tar.xz"; - sha256 = "55a2cce72049f0794e9a11a84862e9039af9183603b78bc60d89539f82cf533f"; + name = "Python-3.7.7.tar.xz"; + url = "http://dev-www.libreoffice.org/src/Python-3.7.7.tar.xz"; + sha256 = "06a0a9f1bf0d8cd1e4121194d666c4e28ddae4dd54346de6c343206599f02136"; md5 = ""; - md5name = "55a2cce72049f0794e9a11a84862e9039af9183603b78bc60d89539f82cf533f-Python-3.7.6.tar.xz"; + md5name = "06a0a9f1bf0d8cd1e4121194d666c4e28ddae4dd54346de6c343206599f02136-Python-3.7.7.tar.xz"; } { name = "QR-Code-generator-1.4.0.tar.gz"; diff --git a/pkgs/applications/office/libreoffice/src-fresh/primary.nix b/pkgs/applications/office/libreoffice/src-fresh/primary.nix index fb21d1292d6d..5b62b0df9544 100644 --- a/pkgs/applications/office/libreoffice/src-fresh/primary.nix +++ b/pkgs/applications/office/libreoffice/src-fresh/primary.nix @@ -8,8 +8,8 @@ rec { major = "6"; minor = "4"; - patch = "1"; - tweak = "1"; + patch = "3"; + tweak = "2"; subdir = "${major}.${minor}.${patch}"; @@ -17,13 +17,13 @@ rec { src = fetchurl { url = "https://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz"; - sha256 = "03fqpkilz4yi35l447hb9r8gjwj23l61bpdkwg21jm8blm8kkvyj"; + sha256 = "1cmbrhha7mlflnlbpla8fix07cxcgkdb7krnrgs1bylf31y5855w"; }; # FIXME rename translations = fetchSrc { name = "translations"; - sha256 = "0a7arjlxxy7hjm1brxwd124bf1gkbl92bgygi3sbbhbsv07pjdcr"; + sha256 = "06z9hz4m3kdcljjc6y5s18001axjibj9xiyakdndkl9pmnnhn9h3"; }; # the "dictionaries" archive is not used for LO build because we already build hunspellDicts packages from @@ -31,6 +31,6 @@ rec { help = fetchSrc { name = "help"; - sha256 = "1hfllrdyxrg5mgqry3dcrhjbdrd0d27k5mvv4sfj7nwjlmjh8rqq"; + sha256 = "0mpgrwg8z1q38j03l6m1sdpcplyjd5nz1nqaa13vfkryj2lflw45"; }; } From bff2c1258eb2cce8d78dbce343cb36232d2272e3 Mon Sep 17 00:00:00 2001 From: Kirill Elagin Date: Sun, 19 Apr 2020 17:15:17 +0300 Subject: [PATCH 126/219] gmailieer: 1.0 -> 1.1, rename to lieer --- .../networking/{gmailieer => lieer}/default.nix | 12 ++++++------ pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 4 ++-- 3 files changed, 9 insertions(+), 8 deletions(-) rename pkgs/applications/networking/{gmailieer => lieer}/default.nix (75%) diff --git a/pkgs/applications/networking/gmailieer/default.nix b/pkgs/applications/networking/lieer/default.nix similarity index 75% rename from pkgs/applications/networking/gmailieer/default.nix rename to pkgs/applications/networking/lieer/default.nix index 2acc838e4a4f..fc5214f0d01f 100644 --- a/pkgs/applications/networking/gmailieer/default.nix +++ b/pkgs/applications/networking/lieer/default.nix @@ -1,14 +1,14 @@ { stdenv, fetchFromGitHub, python3Packages }: python3Packages.buildPythonApplication rec { - name = "gmailieer-${version}"; - version = "1.0"; + pname = "lieer"; + version = "1.1"; src = fetchFromGitHub { owner = "gauteh"; - repo = "gmailieer"; + repo = "lieer"; rev = "v${version}"; - sha256 = "1zzylv8xbcrh34bz0s29dawzcyx39lai8y8wk0bl4x75v1jfynvf"; + sha256 = "19jx3sm925nrzl26km1bxbp6y5gk1mzwadd79vip2jl70b3xk9f8"; }; propagatedBuildInputs = with python3Packages; [ @@ -27,8 +27,8 @@ python3Packages.buildPythonApplication rec { tags in the notmuch database may be pushed back remotely to your GMail account. ''; - homepage = "https://github.com/gauteh/gmailieer"; - repositories.git = "https://github.com/gauteh/gmailieer.git"; + homepage = "https://lieer.gaute.vetsj.com/"; + repositories.git = "https://github.com/gauteh/lieer.git"; license = licenses.gpl3Plus; maintainers = with maintainers; [ kaiha ]; }; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 5ba9b723edd6..523a1930436f 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -152,6 +152,7 @@ mapAliases ({ gettextWithExpat = gettext; # 2016-02-19 git-hub = gitAndTools.git-hub; # added 2016-04-29 glib_networking = glib-networking; # added 2018-02-25 + gmailieer = lieer; # added 2020-04-19 gnome-mpv = celluloid; # added 2019-08-22 gnome15 = throw "gnome15 has been removed from nixpkgs, as it's unmaintained and depends on deprecated libraries."; # added 2019-12-10 gmic_krita_qt = gmic-qt-krita; # added 2019-09-07 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d7346c8ae1c7..7d82c25925d3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16436,8 +16436,6 @@ in gfxtablet = callPackage ../os-specific/linux/gfxtablet {}; - gmailieer = callPackage ../applications/networking/gmailieer {}; - gmailctl = callPackage ../applications/networking/gmailctl {}; gpm = callPackage ../servers/gpm { @@ -16544,6 +16542,8 @@ in libnl = callPackage ../os-specific/linux/libnl { }; + lieer = callPackage ../applications/networking/lieer {}; + linuxConsoleTools = callPackage ../os-specific/linux/consoletools { }; openelec-dvb-firmware = callPackage ../os-specific/linux/firmware/openelec-dvb-firmware { }; From 4f7e4a6b59104e2621a3292d188b24215b2a21d7 Mon Sep 17 00:00:00 2001 From: Yegor Timoshenko Date: Sun, 19 Apr 2020 22:20:07 +0300 Subject: [PATCH 127/219] nixos/release-small: drop latestKernel.login This partially reverts e133e396df9f5a466f2de592dd0b429dee62c959. --- nixos/release-small.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/nixos/release-small.nix b/nixos/release-small.nix index ed7bbd81138f..6da2c59cedd4 100644 --- a/nixos/release-small.nix +++ b/nixos/release-small.nix @@ -101,7 +101,6 @@ in rec { "nixos.tests.installer.separateBoot.x86_64-linux" "nixos.tests.installer.simple.x86_64-linux" "nixos.tests.ipv6.x86_64-linux" - "nixos.tests.latestKernel.login.x86_64-linux" "nixos.tests.login.x86_64-linux" "nixos.tests.misc.x86_64-linux" "nixos.tests.nat.firewall-conntrack.x86_64-linux" From 0e48a68559dabdee75788323bd77ab8b579d6205 Mon Sep 17 00:00:00 2001 From: Sirio Balmelli Date: Sun, 19 Apr 2020 21:39:37 +0200 Subject: [PATCH 128/219] howdoi: fix Darwin build dependencies Signed-off-by: Sirio Balmelli --- pkgs/development/python-modules/howdoi/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/howdoi/default.nix b/pkgs/development/python-modules/howdoi/default.nix index 9b1fb75b4618..970c2025879f 100644 --- a/pkgs/development/python-modules/howdoi/default.nix +++ b/pkgs/development/python-modules/howdoi/default.nix @@ -1,10 +1,13 @@ { lib +, stdenv , buildPythonPackage , fetchPypi , six , requests-cache , pygments , pyquery +, cachelib +, appdirs }: buildPythonPackage rec { @@ -16,7 +19,8 @@ buildPythonPackage rec { sha256 = "3b322668606d29d8a841c3b28c0574851f512b55c33a7ceb982b6a98d82fa3e3"; }; - propagatedBuildInputs = [ six requests-cache pygments pyquery ]; + propagatedBuildInputs = [ six requests-cache pygments pyquery ] + ++ lib.optionals stdenv.isDarwin [ cachelib appdirs ]; preCheck = '' export HOME=$(mktemp -d) From 85501cae5e6a51b176d6af912fa8419bfa146b58 Mon Sep 17 00:00:00 2001 From: Sirio Balmelli Date: Sun, 19 Apr 2020 19:43:08 +0000 Subject: [PATCH 129/219] howdoi: cachelib and appdirs dependencies _also_ needed for Linux. Signed-off-by: Sirio Balmelli --- pkgs/development/python-modules/howdoi/default.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/howdoi/default.nix b/pkgs/development/python-modules/howdoi/default.nix index 970c2025879f..c98192e9b0ab 100644 --- a/pkgs/development/python-modules/howdoi/default.nix +++ b/pkgs/development/python-modules/howdoi/default.nix @@ -1,5 +1,4 @@ { lib -, stdenv , buildPythonPackage , fetchPypi , six @@ -19,8 +18,7 @@ buildPythonPackage rec { sha256 = "3b322668606d29d8a841c3b28c0574851f512b55c33a7ceb982b6a98d82fa3e3"; }; - propagatedBuildInputs = [ six requests-cache pygments pyquery ] - ++ lib.optionals stdenv.isDarwin [ cachelib appdirs ]; + propagatedBuildInputs = [ six requests-cache pygments pyquery cachelib appdirs ]; preCheck = '' export HOME=$(mktemp -d) From 0c454c46f4f04df4e05dc84e1e1384ed91ec37f1 Mon Sep 17 00:00:00 2001 From: Aaron Ash Date: Mon, 20 Apr 2020 06:27:20 +1000 Subject: [PATCH 130/219] j: 807 -> 901 Upgrade j to 901. Uses the newer build scripts in the make2 directory in the jsource repo. --- pkgs/development/interpreters/j/default.nix | 43 +++++---------------- 1 file changed, 10 insertions(+), 33 deletions(-) diff --git a/pkgs/development/interpreters/j/default.nix b/pkgs/development/interpreters/j/default.nix index f7500c169e6d..c3d5221d42a7 100644 --- a/pkgs/development/interpreters/j/default.nix +++ b/pkgs/development/interpreters/j/default.nix @@ -2,13 +2,14 @@ stdenv.mkDerivation rec { pname = "j"; - version = "807"; - jtype = "release"; + version = "901"; + jtype = "release-e"; src = fetchFromGitHub { owner = "jsoftware"; repo = "jsource"; rev = "j${version}-${jtype}"; - sha256 = "1qciw2yg9x996zglvj2461qby038x89xcmfb3qyrh3myn8m1nq2n"; + sha256 = "13ky37rrl6mc66fckrdnrw64gmvq1qlv6skzd513lab4d0wigshw"; + name = "jsource"; }; buildInputs = [ readline libedit bc ]; @@ -26,57 +27,33 @@ stdenv.mkDerivation rec { export HOME=$TMPDIR export JLIB=$SOURCE_DIR/jlibrary - export jbld=$HOME/bld - export jplatform=${platform} - export jmake=$SOURCE_DIR/make - export jgit=$SOURCE_DIR - export JBIN=$jbld/j${bits}/bin - mkdir -p $JBIN - echo $OUT_DIR - cd make + cd make2 patchShebangs . - sed -i jvars.sh -e " - s@~/git/jsource@$SOURCE_DIR@; - s@~/jbld@$HOME@; - " - sed -i $JLIB/bin/profile.ijs -e "s@'/usr/share/j/.*'@'$out/share/j'@;" - # For future versions, watch - # https://github.com/jsoftware/jsource/pull/4 - cp ./jvars.sh $HOME + ./build_all.sh - echo ' - #define jversion "${version}" - #define jplatform "${platform}" - #define jtype "${jtype}" // release,beta,... - #define jlicense "GPL3" - #define jbuilder "nixpkgs" // website or email - ' > ../jsrc/jversion.h - - ./build_jconsole.sh j${bits} - ./build_libj.sh j${bits} + cp $SOURCE_DIR/bin/${platform}/j${bits}*/* "$JLIB/bin" ''; checkPhase = '' - echo 'i. 5' | $JBIN/jconsole | fgrep "0 1 2 3 4" + + echo 'i. 5' | $JLIB/bin/jconsole | fgrep "0 1 2 3 4" # Now run the real tests cd $SOURCE_DIR/test for f in *.ijs do echo $f - $JBIN/jconsole < $f > /dev/null || echo FAIL && echo PASS + $JLIB/bin/jconsole < $f > /dev/null || echo FAIL && echo PASS done ''; installPhase = '' mkdir -p "$out" - cp -r $JBIN "$out/bin" - rm $out/bin/*.txt # Remove logs from the bin folder mkdir -p "$out/share/j" cp -r $JLIB/{addons,system} "$out/share/j" From 45948bd56bdbbeb57dbfa76b8a25e5081c564736 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sun, 19 Apr 2020 22:42:26 +0200 Subject: [PATCH 131/219] python3Packages.pytesseract: 0.3.3 -> 0.3.4 https://pypi.org/project/pytesseract/0.3.4/ --- pkgs/development/python-modules/pytesseract/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pytesseract/default.nix b/pkgs/development/python-modules/pytesseract/default.nix index 496a163cb5fe..0111695ca73f 100644 --- a/pkgs/development/python-modules/pytesseract/default.nix +++ b/pkgs/development/python-modules/pytesseract/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "pytesseract"; - version = "0.3.3"; + version = "0.3.4"; src = fetchPypi { inherit pname version; - sha256 = "0lml55jrvdzy9fm31zpw64fqc4d6p5djg1ax2kgnimzfscxghh8h"; + sha256 = "16l9b9f5v0a9j5jfgpd8irk9yhc9byzirrzv1rlkapdbz36sbn5g"; }; patches = [ From 712bf551d8a2180c5c4a42e317e562458a07e397 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Maret?= Date: Sun, 19 Apr 2020 23:07:10 +0200 Subject: [PATCH 132/219] blas: fix build on darwin --- pkgs/build-support/alternatives/blas/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/build-support/alternatives/blas/default.nix b/pkgs/build-support/alternatives/blas/default.nix index b1dadf23c078..36708ce8841a 100644 --- a/pkgs/build-support/alternatives/blas/default.nix +++ b/pkgs/build-support/alternatives/blas/default.nix @@ -81,7 +81,7 @@ stdenv.mkDerivation { patchelf --set-rpath "$(patchelf --print-rpath $out/lib/libblas${canonicalExtension}):${lib.getLib blasProvider}/lib" $out/lib/libblas${canonicalExtension} '' else if stdenv.hostPlatform.isDarwin then '' install_name_tool \ - -id libblas${canonicalExtension} + -id libblas${canonicalExtension} \ -add_rpath ${lib.getLib blasProvider}/lib \ $out/lib/libblas${canonicalExtension} '' else "") + '' From 410fc69c7c6954084f0d11c82fb2208d9fe33c78 Mon Sep 17 00:00:00 2001 From: Sirio Balmelli Date: Sun, 19 Apr 2020 22:21:08 +0200 Subject: [PATCH 133/219] mscgen: add pkg-config build-time dependency Signed-off-by: Sirio Balmelli --- pkgs/tools/graphics/mscgen/default.nix | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/graphics/mscgen/default.nix b/pkgs/tools/graphics/mscgen/default.nix index 29f0f2247355..a8aa9cffb983 100644 --- a/pkgs/tools/graphics/mscgen/default.nix +++ b/pkgs/tools/graphics/mscgen/default.nix @@ -1,4 +1,16 @@ -{ stdenv, fetchurl, flex, bison, gd, libpng, libjpeg, freetype, zlib, libwebp, runtimeShell }: +{ stdenv +, bison +, fetchurl +, flex +, freetype +, gd +, libjpeg +, libpng +, libwebp +, pkg-config +, runtimeShell +, zlib +}: let version = "0.20"; @@ -12,7 +24,7 @@ stdenv.mkDerivation { sha256 = "3c3481ae0599e1c2d30b7ed54ab45249127533ab2f20e768a0ae58d8551ddc23"; }; - buildInputs = [ flex bison gd libjpeg libpng freetype zlib libwebp ]; + buildInputs = [ bison flex freetype gd libjpeg libpng libwebp pkg-config zlib ]; doCheck = true; preCheck = '' From a72c5b53880f931a176292f205a1c1db86156347 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Sun, 19 Apr 2020 11:41:32 +0000 Subject: [PATCH 134/219] modemmanager: enableParallelBuilding Seems to work fine for me at -j48. --- pkgs/tools/networking/modem-manager/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/tools/networking/modem-manager/default.nix b/pkgs/tools/networking/modem-manager/default.nix index e9d925fb930c..badfddd6d50c 100644 --- a/pkgs/tools/networking/modem-manager/default.nix +++ b/pkgs/tools/networking/modem-manager/default.nix @@ -30,6 +30,8 @@ stdenv.mkDerivation rec { export G_TEST_DBUS_DAEMON="${dbus.daemon}/bin/dbus-daemon" ''; + enableParallelBuilding = true; + doCheck = true; meta = with stdenv.lib; { From ec2710b0d750069f594b89f47006c21c6e074dca Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Sun, 19 Apr 2020 11:46:05 +0000 Subject: [PATCH 135/219] libqmi: enableParallelBuilding Works fine for me with -j48. --- pkgs/development/libraries/libqmi/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/libqmi/default.nix b/pkgs/development/libraries/libqmi/default.nix index 396706b88e63..b1504fc95404 100644 --- a/pkgs/development/libraries/libqmi/default.nix +++ b/pkgs/development/libraries/libqmi/default.nix @@ -26,6 +26,8 @@ stdenv.mkDerivation rec { libmbim ]; + enableParallelBuilding = true; + doCheck = true; meta = with stdenv.lib; { From f578c517a3f6a2b8d1fda12f07a19fd349279874 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 13:35:35 -0300 Subject: [PATCH 136/219] xfce.xfce4-dict-plugin: remove - The xfce4-dict-plugin is now part of xfce4-dict - See https://goodies.xfce.org/projects/panel-plugins/xfce4-dict-plugin - Throws a message --- pkgs/desktops/xfce/default.nix | 4 +-- .../xfce/panel-plugins/xfce4-dict-plugin.nix | 32 ------------------- 2 files changed, 1 insertion(+), 35 deletions(-) delete mode 100644 pkgs/desktops/xfce/panel-plugins/xfce4-dict-plugin.nix diff --git a/pkgs/desktops/xfce/default.nix b/pkgs/desktops/xfce/default.nix index 0eb66b170aa1..579e863bf9c8 100644 --- a/pkgs/desktops/xfce/default.nix +++ b/pkgs/desktops/xfce/default.nix @@ -117,8 +117,6 @@ lib.makeScope pkgs.newScope (self: with self; { xfce4-datetime-plugin = callPackage ./panel-plugins/xfce4-datetime-plugin { }; - xfce4-dict-plugin = callPackage ./panel-plugins/xfce4-dict-plugin.nix { }; - xfce4-dockbarx-plugin = callPackage ./panel-plugins/xfce4-dockbarx-plugin.nix { }; xfce4-embed-plugin = callPackage ./panel-plugins/xfce4-embed-plugin.nix { }; @@ -187,7 +185,6 @@ lib.makeScope pkgs.newScope (self: with self; { xfce4_cpufreq_plugin = xfce4-cpufreq-plugin; xfce4_cpugraph_plugin = xfce4-cpugraph-plugin; xfce4_datetime_plugin = xfce4-datetime-plugin; - xfce4_dict_plugin = xfce4-dict-plugin; xfce4_dockbarx_plugin = xfce4-dockbarx-plugin; xfce4_embed_plugin = xfce4-embed-plugin; xfce4_eyes_plugin = xfce4-eyes-plugin; @@ -211,6 +208,7 @@ lib.makeScope pkgs.newScope (self: with self; { xfce4-mixer = throw "deprecated 2019-08-18: obsoleted by xfce4-pulseaudio-plugin"; # added 2019-08-18 gtk-xfce-engine = throw "deprecated 2019-09-17: Xfce 4.14 deprecated gtk-xfce-engine"; # added 2019-09-17 + xfce4-dict-plugin = throw "deprecated 2020-04-19: xfce4-dict-plugin is now part of xfce4-dict."; # added 2020-04-19 # added 2019-11-04 libxfce4ui_gtk3 = libxfce4ui; diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-dict-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-dict-plugin.nix deleted file mode 100644 index ae6141bd6627..000000000000 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-dict-plugin.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, xfconf, gtk2, xfce }: - -let - category = "panel-plugins"; -in - -stdenv.mkDerivation rec { - pname = "xfce4-dict-plugin"; - version = "0.3.0"; - - src = fetchurl { - url = "mirror://xfce/src/${category}/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "1x0imfnsdfq7fbhka8bc0yjjspkcljc1jafhrwzb08qi9bk2wbar"; - }; - - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 ]; - - passthru.updateScript = xfce.updateScript { - inherit pname version; - attrPath = "xfce.${pname}"; - versionLister = xfce.archiveLister category pname; - }; - - meta =with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; - description = "Dictionary plugin for Xfce panel"; - platforms = platforms.linux; - maintainers = [ maintainers.AndersonTorres ]; - broken = true; # see https://goodies.xfce.org/projects/panel-plugins/xfce4-dict-plugin - }; -} From e18514f8470ee6ccd3437bcd743328b71def8385 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:50 -0300 Subject: [PATCH 137/219] xfce.exo: 0.12.8 -> 0.12.11 --- pkgs/desktops/xfce/core/exo/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/core/exo/default.nix b/pkgs/desktops/xfce/core/exo/default.nix index 59ab5823314e..6566d77ebbec 100644 --- a/pkgs/desktops/xfce/core/exo/default.nix +++ b/pkgs/desktops/xfce/core/exo/default.nix @@ -4,9 +4,9 @@ mkXfceDerivation { category = "xfce"; pname = "exo"; - version = "0.12.8"; + version = "0.12.11"; - sha256 = "013am7q4pwfncf4hk2a3hv7yx2vxgzb5xm8qsi9mxkj29xdhrvs5"; + sha256 = "1db7w6jk3i501x4qw0hs0ydrm1fjdkxmahzbv5iag859wnnlg0pd"; nativeBuildInputs = [ libxslt perlPackages.URI docbook_xsl ]; buildInputs = [ gtk3 glib libxfce4ui libxfce4util ]; From 20b701df3830f3ae6086b6613489f4a3653a2e29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:50 -0300 Subject: [PATCH 138/219] xfce.gigolo: 0.5.0 -> 0.5.1 --- pkgs/desktops/xfce/applications/gigolo/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/applications/gigolo/default.nix b/pkgs/desktops/xfce/applications/gigolo/default.nix index 7b643bd0dc88..251866528e64 100644 --- a/pkgs/desktops/xfce/applications/gigolo/default.nix +++ b/pkgs/desktops/xfce/applications/gigolo/default.nix @@ -3,10 +3,10 @@ mkXfceDerivation { category = "apps"; pname = "gigolo"; - version = "0.5.0"; + version = "0.5.1"; odd-unstable = false; - sha256 = "1lqsxb0d5i8p9vbzx8s4p3rga7va5h1q146xgmsa41j5v40wrlw6"; + sha256 = "11a35z5apr26nl6fpmbsvvv3xf5w61sgzcb505plavrchpfbdxjn"; nativeBuildInputs = [ exo ]; buildInputs = [ gtk3 glib gvfs ]; From 279bb5a0960bf05c290bbc7c740eb1c993c40d5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:50 -0300 Subject: [PATCH 139/219] xfce.parole: 1.0.4 -> 1.0.5 --- pkgs/desktops/xfce/applications/parole/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/applications/parole/default.nix b/pkgs/desktops/xfce/applications/parole/default.nix index 20b899165f09..bfb865184487 100644 --- a/pkgs/desktops/xfce/applications/parole/default.nix +++ b/pkgs/desktops/xfce/applications/parole/default.nix @@ -7,9 +7,9 @@ mkXfceDerivation { category = "apps"; pname = "parole"; - version = "1.0.4"; + version = "1.0.5"; - sha256 = "18j4bmny37crryh4pvxcjjvj99mln6ljq2vy69awxhvrjx9ljv13"; + sha256 = "0qgis2gnkcvg7xwp76cbi0ihqdjprvvw2d66hk7klhrafp7c0v13"; postPatch = '' substituteInPlace src/plugins/mpris2/Makefile.am \ From c0c96e8b9497fb63ebdd8e7f7290ce4e80aa0125 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:50 -0300 Subject: [PATCH 140/219] xfce.xfce4-terminal: 0.8.8 -> 0.8.9.2 --- pkgs/desktops/xfce/applications/xfce4-terminal/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix b/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix index 3b9cd268d55a..56de8d3bfb83 100644 --- a/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix +++ b/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix @@ -3,9 +3,9 @@ mkXfceDerivation { category = "apps"; pname = "xfce4-terminal"; - version = "0.8.8"; + version = "0.8.9.2"; - sha256 = "0sg9vwyvhh7pjp83biv7gvf42423a7ly4dc7q2gn28kp6bds2qcp"; + sha256 = "1vlpfsrdalqmsd86aj0kvvam5skzn6xngigjziwli6q6il6lb9fj"; buildInputs = [ gtk3 libxfce4ui vte xfconf pcre2 ]; From 5d7b798861c9b70c8b1e21d615a4f0ad31f058b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:50 -0300 Subject: [PATCH 141/219] xfce.thunar: 1.8.9 -> 1.8.14 --- pkgs/desktops/xfce/core/thunar/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/core/thunar/default.nix b/pkgs/desktops/xfce/core/thunar/default.nix index 11220141d2a0..24df606e2466 100644 --- a/pkgs/desktops/xfce/core/thunar/default.nix +++ b/pkgs/desktops/xfce/core/thunar/default.nix @@ -21,9 +21,9 @@ let unwrapped = mkXfceDerivation { category = "xfce"; pname = "thunar"; - version = "1.8.9"; + version = "1.8.14"; - sha256 = "01w60csbs2nq1bhb8n1bnmjmx48fm0va3qbnq84z0h2dxpr80b1w"; + sha256 = "1ph9bcqfm2nccliagl8zdl1dizh62qnr8m5hacri3cs2jhc0jjpy"; nativeBuildInputs = [ docbook_xsl From c911a4cf0bff728f838c33d7c7a9f2a367254e48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:50 -0300 Subject: [PATCH 142/219] xfce.tumbler: 0.2.7 -> 0.2.8 --- pkgs/desktops/xfce/core/tumbler/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/core/tumbler/default.nix b/pkgs/desktops/xfce/core/tumbler/default.nix index b795007ca7c1..1a615b8f66a5 100644 --- a/pkgs/desktops/xfce/core/tumbler/default.nix +++ b/pkgs/desktops/xfce/core/tumbler/default.nix @@ -14,9 +14,9 @@ mkXfceDerivation { category = "xfce"; pname = "tumbler"; - version = "0.2.7"; + version = "0.2.8"; - sha256 = "14ql3fcxyz81qr9s0vcwh6j2ks5fl8jf9scwnkilv5jy0ii9l0ry"; + sha256 = "1y9sphaz3izal96v53lps692xxzp5pad1d09kxsmmpm7pic4n1r2"; buildInputs = [ ffmpegthumbnailer From 404d9c52fe9672748de3314a98c6323d6085d00e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:50 -0300 Subject: [PATCH 143/219] xfce.xfburn: 0.6.1 -> 0.6.2 --- pkgs/desktops/xfce/applications/xfburn/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/applications/xfburn/default.nix b/pkgs/desktops/xfce/applications/xfburn/default.nix index 08f2bd511a87..8aff25df4943 100644 --- a/pkgs/desktops/xfce/applications/xfburn/default.nix +++ b/pkgs/desktops/xfce/applications/xfburn/default.nix @@ -3,9 +3,9 @@ mkXfceDerivation { category = "apps"; pname = "xfburn"; - version = "0.6.1"; + version = "0.6.2"; - sha256 = "0a1ly79x7j5pgr3vbsabb4i0jd5rryaigj9z8iqzr8p9miypx20v"; + sha256 = "02axhsbbsvd31jb0xs1d2qxr614qb29pajv0sm2p1n1c2cv2fjh1"; nativeBuildInputs = [ libxslt docbook_xsl ]; buildInputs = [ exo gtk3 libburn libisofs libxfce4ui ]; From d2d14fa1c621384dcd4d993603622810b68dee39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:50 -0300 Subject: [PATCH 144/219] xfce.xfce4-battery-plugin: 1.1.2 -> 1.1.3 --- .../xfce/panel-plugins/xfce4-battery-plugin/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-battery-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-battery-plugin/default.nix index 0120cea0886f..0d047447e0c2 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-battery-plugin/default.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-battery-plugin/default.nix @@ -3,10 +3,10 @@ mkXfceDerivation { category = "panel-plugins"; pname = "xfce4-battery-plugin"; - version = "1.1.2"; + version = "1.1.3"; rev-prefix = ""; odd-unstable = false; - sha256 = "0329miiclc8da6j0sz495p99hyrf9fjhvpmdl0556fphybz5agc0"; + sha256 = "0ligdiasrfc3170kd7sif2ml6lvlpp11lbxz3xdvklqkv7p3323y"; buildInputs = [ gtk3 libxfce4ui libxfce4util xfce4-panel xfconf ]; From d233a80946323db33795e3b7b56004ee72f4aeec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:50 -0300 Subject: [PATCH 145/219] xfce.xfce4-clipman-plugin: 1.4.3 -> 1.6.1 --- .../xfce/panel-plugins/xfce4-clipman-plugin/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-clipman-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-clipman-plugin/default.nix index f814850561a6..2349b4bf3e8d 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-clipman-plugin/default.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-clipman-plugin/default.nix @@ -3,8 +3,8 @@ mkXfceDerivation { category = "panel-plugins"; pname = "xfce4-clipman-plugin"; - version = "1.4.3"; - sha256 = "1xk79xh1zk0x4r1z9m1dakp79pip0zh3naviybvl1dnpwwfc03gq"; + version = "1.6.1"; + sha256 = "03akijvry1n1fkziyvxwcksl4vy4lmnpgd5izjs8jai5sndhsszl"; buildInputs = [ exo gtk3 libXtst libxfce4ui libxfce4util xfce4-panel xfconf ]; From 97b4f63ec76cb595c90d512f6e45138b8ccc10c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:50 -0300 Subject: [PATCH 146/219] xfce.xfce4-dict: 0.8.2 -> 0.8.3 --- pkgs/desktops/xfce/applications/xfce4-dict/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/applications/xfce4-dict/default.nix b/pkgs/desktops/xfce/applications/xfce4-dict/default.nix index b2682080216c..7e582abc05f7 100644 --- a/pkgs/desktops/xfce/applications/xfce4-dict/default.nix +++ b/pkgs/desktops/xfce/applications/xfce4-dict/default.nix @@ -3,9 +3,9 @@ mkXfceDerivation { category = "apps"; pname = "xfce4-dict"; - version = "0.8.2"; + version = "0.8.3"; - sha256 = "1zbb0k0984ny7wy4gbk6ymkh87rbfakpim54yq4r3h5ymslx7iv7"; + sha256 = "0p7k2ffknr23hh3j17dhh5q8adn736p2piwx0sg8f5dvvhhc5whz"; patches = [ ./configure-gio.patch ]; From 8fdb4832d7c39e080455fd5fbd4bd59252292738 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:51 -0300 Subject: [PATCH 147/219] xfce.xfce4-cpugraph-plugin: 1.0.5 -> 1.1.0 --- .../panel-plugins/xfce4-cpugraph-plugin.nix | 30 ++++++++++++++----- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-cpugraph-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-cpugraph-plugin.nix index 22a019e56bc6..38ad759e700c 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-cpugraph-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-cpugraph-plugin.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, glib, exo, libXtst, xorgproto, libxfce4util, xfce4-panel, libxfce4ui, xfconf, gtk2, hicolor-icon-theme, xfce }: +{ stdenv, fetchurl, pkgconfig, intltool, glib, exo, libXtst, xorgproto, libxfce4util, xfce4-panel, libxfce4ui, xfconf, gtk3, hicolor-icon-theme, xfce }: let category = "panel-plugins"; @@ -6,16 +6,31 @@ in stdenv.mkDerivation rec { pname = "xfce4-cpugraph-plugin"; - version = "1.0.5"; + version = "1.1.0"; src = fetchurl { url = "mirror://xfce/src/${category}/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "1izl53q95m5xm2fiq7385vb1i9nwgjizxkmgpgh33zdckb40xnl5"; + sha256 = "193bj1p54l4zrvgdjj0pvjn161d6dn82jh9invcy09sqwlj0mkiy"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool glib exo libXtst xorgproto libxfce4util libxfce4ui xfce4-panel xfconf gtk2 hicolor-icon-theme ]; - + nativeBuildInputs = [ + pkgconfig + intltool + ]; + + buildInputs = [ + glib + exo + libXtst + xorgproto + libxfce4util + libxfce4ui + xfce4-panel + xfconf + gtk3 + hicolor-icon-theme + ]; + passthru.updateScript = xfce.updateScript { inherit pname version; attrPath = "xfce.${pname}"; @@ -23,8 +38,9 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-cpugraph-plugin"; description = "CPU graph show for Xfce panel"; + license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = [ maintainers.AndersonTorres ]; }; From 118415ac41e3f798b7519d228b8541267c726dca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:51 -0300 Subject: [PATCH 148/219] xfce.xfce4-eyes-plugin: 4.4.4 -> 4.5.0 --- .../xfce/panel-plugins/xfce4-eyes-plugin.nix | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-eyes-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-eyes-plugin.nix index 687bcf59859e..220e25068582 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-eyes-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-eyes-plugin.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, xfconf, gtk2, xfce }: +{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, xfconf, gtk3, xfce }: let category = "panel-plugins"; @@ -6,15 +6,25 @@ in stdenv.mkDerivation rec { pname = "xfce4-eyes-plugin"; - version = "4.4.4"; + version = "4.5.0"; src = fetchurl { url = "mirror://xfce/src/${category}/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "1jh02hylvsvfpxrx0bq6fzgy6vnxf9qakgpbfvr63lfkd1dyh314"; + sha256 = "17gj6fbvvrdzvz61czmia8hqynllsnmhk61fs4aml443cc1h1bpx"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 ]; + nativeBuildInputs = [ + pkgconfig + intltool + ]; + + buildInputs = [ + libxfce4util + libxfce4ui + xfce4-panel + xfconf + gtk3 + ]; passthru.updateScript = xfce.updateScript { inherit pname version; @@ -23,10 +33,10 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; - description = "Eyes following you!"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-eyes-plugin"; + description = "Rolling eyes (following mouse pointer) plugin for the Xfce panel"; + license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = [ maintainers.AndersonTorres ]; - broken = true; }; } From 81cef8fc21b720c7374e4e4731e24d01d0bc4e77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:51 -0300 Subject: [PATCH 149/219] xfce.xfce4-fsguard-plugin: 1.0.2 -> 1.1.1 --- .../panel-plugins/xfce4-fsguard-plugin.nix | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-fsguard-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-fsguard-plugin.nix index adab2f033ac2..b67e63f5c644 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-fsguard-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-fsguard-plugin.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, xfconf, gtk2, xfce }: +{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, xfconf, gtk3, xfce }: let category = "panel-plugins"; @@ -6,15 +6,25 @@ in stdenv.mkDerivation rec { pname = "xfce4-fsguard-plugin"; - version = "1.0.2"; + version = "1.1.1"; src = fetchurl { url = "mirror://xfce/src/${category}/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "1bj021h4q68bc03f32pkyqy4gfd1sz6s21nxdg7j6gdfhs9xbj52"; + sha256 = "05nmfkrmifm76bsywqmbjd1qdvzagv5cbvnwbkb57156j055vl6n"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 ]; + nativeBuildInputs = [ + pkgconfig + intltool + ]; + + buildInputs = [ + libxfce4util + libxfce4ui + xfce4-panel + xfconf + gtk3 + ]; passthru.updateScript = xfce.updateScript { inherit pname version; @@ -23,10 +33,10 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; - description = "Filesystem monitor"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-fsguard-plugin"; + description = "Filesystem usage monitor plugin for the Xfce panel"; + license = licenses.bsd2; platforms = platforms.linux; maintainers = [ maintainers.AndersonTorres ]; - broken = true; }; } From 79dc51f3fdeebd0ca392c174eb09e140cc27b5b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:51 -0300 Subject: [PATCH 150/219] xfce.xfce4-netload-plugin: 1.3.1 -> 1.3.2 --- .../xfce/panel-plugins/xfce4-netload-plugin/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix index 9a9f02143721..8d258220175b 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-netload-plugin/default.nix @@ -3,10 +3,10 @@ mkXfceDerivation { category = "panel-plugins"; pname = "xfce4-netload-plugin"; - version = "1.3.1"; + version = "1.3.2"; rev-prefix = "version-"; odd-unstable = false; - sha256 = "0nm8advafw4jpc9p1qszyfqa56194sz51z216rdh4c6ilcrrpy1h"; + sha256 = "1py1l4z5ah4nlq8l2912k47ffsa5z7p1gbvlk7nw6b9r1x4ykdfl"; buildInputs = [ gtk3 libxfce4ui libxfce4util xfce4-panel xfconf ]; From 0c6b8040147806f33ff3855e1b6977e886b4688c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:51 -0300 Subject: [PATCH 151/219] xfce.xfce4-genmon-plugin: 3.4.0 -> 4.0.2 --- .../panel-plugins/xfce4-genmon-plugin.nix | 25 +++++++++++++------ 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-genmon-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-genmon-plugin.nix index 65dc61a4b393..417001fed53b 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-genmon-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-genmon-plugin.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, xfconf, gtk2, xfce }: +{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, gtk3, xfce }: let category = "panel-plugins"; @@ -6,15 +6,24 @@ in stdenv.mkDerivation rec { pname = "xfce4-genmon-plugin"; - version = "3.4.0"; + version = "4.0.2"; src = fetchurl { url = "mirror://xfce/src/${category}/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "11q3g6lmgz3d5lyh6614mxkd9cblfdyf9jgki7f26mn895xk79dh"; + sha256 = "1ai3pwgv61nv7i2dyrvncnc63r8kdjbkp40vp51vzak1dx924v15"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 ]; + nativeBuildInputs = [ + pkgconfig + intltool + ]; + + buildInputs = [ + libxfce4util + libxfce4ui + xfce4-panel + gtk3 + ]; passthru.updateScript = xfce.updateScript { inherit pname version; @@ -23,10 +32,10 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; - description = "Cyclically spawns a command and captures its output"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-genmon-plugin"; + description = "Generic monitor plugin for the Xfce panel"; + license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = [ maintainers.AndersonTorres ]; - broken = true; }; } From 361b67effe539f26700cee221c5fc5156ff948a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:51 -0300 Subject: [PATCH 152/219] xfce.xfce4-notifyd: 0.4.4 -> 0.6.0 --- pkgs/desktops/xfce/applications/xfce4-notifyd/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/applications/xfce4-notifyd/default.nix b/pkgs/desktops/xfce/applications/xfce4-notifyd/default.nix index a991e8c81807..40d9c188fa3d 100644 --- a/pkgs/desktops/xfce/applications/xfce4-notifyd/default.nix +++ b/pkgs/desktops/xfce/applications/xfce4-notifyd/default.nix @@ -4,9 +4,9 @@ mkXfceDerivation { category = "apps"; pname = "xfce4-notifyd"; - version = "0.4.4"; + version = "0.6.0"; - sha256 = "1lmm9h3ych8dz9jpjkxg91f9ln14xs527nxjxsryks00kmqk4kai"; + sha256 = "03lw7zil6pwvx537ibqrynxjz7d6iq6in7vdskrnnn16kfg6hjg2"; buildInputs = [ exo gtk3 glib libnotify libxfce4ui libxfce4util xfce4-panel xfconf ]; From da4b533366c4328cebf443c55541588be472e5fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:51 -0300 Subject: [PATCH 153/219] xfce.xfce4-mpc-plugin: 0.4.5 -> 0.5.2 --- .../xfce/panel-plugins/xfce4-mpc-plugin.nix | 29 ++++++++++++------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix index 7d7b1981c52a..bb56e875c865 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix @@ -1,5 +1,5 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, - xfconf, gtk2, exo, xfce }: +{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, + libxfce4ui, gtk3, exo, xfce }: let category = "panel-plugins"; @@ -7,17 +7,26 @@ in stdenv.mkDerivation rec { pname = "xfce4-mpc-plugin"; - version = "0.4.5"; + version = "0.5.2"; src = fetchurl { url = "mirror://xfce/src/${category}/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "1kvgq1pq7cykqdc3227dq0izad093ppfw3nfsrcp9i8mi6i5f7z7"; + sha256 = "0q3pysdp85b3c7g3b59y3c69g4nw6bvbf518lnri4lxrnsvpizpf"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel - xfconf gtk2 exo ]; - + nativeBuildInputs = [ + pkgconfig + intltool + ]; + + buildInputs = [ + libxfce4util + libxfce4ui + xfce4-panel + gtk3 + exo + ]; + passthru.updateScript = xfce.updateScript { inherit pname version; attrPath = "xfce.${pname}"; @@ -25,10 +34,10 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-mpc-plugin"; description = "MPD plugin for Xfce panel"; platforms = platforms.linux; + license = licenses.bsd2; maintainers = [ ]; - broken = true; }; } From 7d840844189fdadaad2afc0eec99b49e0e04df17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:52 -0300 Subject: [PATCH 154/219] xfce.xfce4-notes-plugin: 1.7.7 -> 1.8.1 --- .../xfce/panel-plugins/xfce4-notes-plugin.nix | 29 ++++++++++++++----- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-notes-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-notes-plugin.nix index 1b7e66936fab..d6910d367a63 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-notes-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-notes-plugin.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, xfconf, gtk2, libunique, xfce }: +{ stdenv, fetchurl, fetchpatch, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, xfconf, gtk2, libunique, xfce }: let category = "panel-plugins"; @@ -6,16 +6,29 @@ in stdenv.mkDerivation rec { pname = "xfce4-notes-plugin"; - version = "1.7.7"; + version = "1.8.1"; src = fetchurl { url = "mirror://xfce/src/${category}/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "05sjbwgch1j93m3r23ksbjnpfk11sf7xjmbb9pm5vl3snc2s3fm7"; + sha256 = "1cjlvvcsigyh40xa26b2vc5zylgss0nlaw72sablzhii2kkw7907"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 libunique ]; - + nativeBuildInputs = [ + pkgconfig + intltool + ]; + + buildInputs = [ + libxfce4util + libxfce4ui + xfce4-panel + xfconf + gtk2 + libunique + ]; + + hardeningDisable = [ "format" ]; + passthru.updateScript = xfce.updateScript { inherit pname version; attrPath = "xfce.${pname}"; @@ -23,10 +36,10 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-notes-plugin"; description = "Sticky notes plugin for Xfce panel"; + license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = [ maintainers.AndersonTorres ]; - broken = true; }; } From bed7bb913bb8458d7346e7f10bc5284622383ba7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:52 -0300 Subject: [PATCH 155/219] xfce.xfce4-panel: 4.14.0 -> 4.14.3 --- pkgs/desktops/xfce/core/xfce4-panel/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/core/xfce4-panel/default.nix b/pkgs/desktops/xfce/core/xfce4-panel/default.nix index f4d86247c6cd..ffd42e4a2c5b 100644 --- a/pkgs/desktops/xfce/core/xfce4-panel/default.nix +++ b/pkgs/desktops/xfce/core/xfce4-panel/default.nix @@ -3,9 +3,9 @@ mkXfceDerivation { category = "xfce"; pname = "xfce4-panel"; - version = "4.14.0"; + version = "4.14.3"; - sha256 = "1v3f2xjz9gwa8maqqvv9w2dh1cgy03v89a9ny7nrv0cjsxwwrr15"; + sha256 = "0h8cqs2bghmyp0jihjm2wc7j14k271j178vllin271xrl7kzmvzv"; nativeBuildInputs = [ gobject-introspection ]; buildInputs = [ exo garcon gtk2 gtk3 glib glib-networking libxfce4ui libxfce4util libwnck3 xfconf ]; From f0a62cee130c29196d2f8356b658335245a98cbe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:52 -0300 Subject: [PATCH 156/219] xfce.xfce4-power-manager: 1.6.5 -> 1.6.6 --- pkgs/desktops/xfce/core/xfce4-power-manager/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/core/xfce4-power-manager/default.nix b/pkgs/desktops/xfce/core/xfce4-power-manager/default.nix index fb3f05b36646..9f9a552b8cc6 100644 --- a/pkgs/desktops/xfce/core/xfce4-power-manager/default.nix +++ b/pkgs/desktops/xfce/core/xfce4-power-manager/default.nix @@ -4,9 +4,9 @@ mkXfceDerivation { category = "xfce"; pname = "xfce4-power-manager"; - version = "1.6.5"; + version = "1.6.6"; - sha256 = "0zazm2cgkz5xj7rvy9gbh4kaay2anfcmawg4gj38pnq3a8zcwwd5"; + sha256 = "0lyp3dp4ijbpf21vanrvgm6rmfp8v0zyqxibdj5gxnadmvcq38iy"; nativeBuildInputs = [ automakeAddFlags exo ]; buildInputs = [ gtk3 libnotify libxfce4ui libxfce4util upower xfconf ]; From 869ad7c10027a7f3d9b49dfa5c563e31f75db88d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:52 -0300 Subject: [PATCH 157/219] xfce.xfce4-pulseaudio-plugin: 0.4.2 -> 0.4.3 --- .../xfce/panel-plugins/xfce4-pulseaudio-plugin/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-pulseaudio-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-pulseaudio-plugin/default.nix index 64916f92a6ff..10850974bb7d 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-pulseaudio-plugin/default.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-pulseaudio-plugin/default.nix @@ -2,6 +2,7 @@ , automakeAddFlags , dbus-glib , dbus +, exo , gtk3 , libpulseaudio , libnotify @@ -16,8 +17,8 @@ mkXfceDerivation { category = "panel-plugins"; pname = "xfce4-pulseaudio-plugin"; - version = "0.4.2"; - sha256 = "1s996mcniskq42vv7cb9i165pmrfp9c95p5f9rx14hqq8in9mvc5"; + version = "0.4.3"; + sha256 = "1rfw2w8gl95iawiy57qlvz958dqjc8bmxnc3dma4rqzm6g46jkgq"; nativeBuildInputs = [ automakeAddFlags @@ -30,6 +31,7 @@ mkXfceDerivation { ''; buildInputs = [ + exo glib gtk3 keybinder3 From 39343ed9bc9c8ee231975eb7417638ee832acdf7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:52 -0300 Subject: [PATCH 158/219] xfce.xfce4-screenshooter: 1.9.5 -> 1.9.7 --- .../xfce/applications/xfce4-screenshooter/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix b/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix index 1db6fb016a15..8c0fa3e3edb6 100644 --- a/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix +++ b/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix @@ -3,10 +3,10 @@ mkXfceDerivation { category = "apps"; pname = "xfce4-screenshooter"; - version = "1.9.5"; + version = "1.9.7"; odd-unstable = false; - sha256 = "1h14sywvk9l06p3z1cpb79911j8w2wqbk03ldknjkia2rfymjk06"; + sha256 = "14vbd7iigaw57hl47rnixk873c20q5clqynzkm9zzpqc568dxixd"; buildInputs = [ exo gtk3 libsoup libxfce4ui libxfce4util xfce4-panel glib-networking ]; From cb847111a92136e3cca69eb06c0724ec5b810da6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:52 -0300 Subject: [PATCH 159/219] xfce.xfce4-session: 4.14.0 -> 4.14.2 --- pkgs/desktops/xfce/core/xfce4-session/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/core/xfce4-session/default.nix b/pkgs/desktops/xfce/core/xfce4-session/default.nix index 0ab362aa21d0..c7442a01957a 100644 --- a/pkgs/desktops/xfce/core/xfce4-session/default.nix +++ b/pkgs/desktops/xfce/core/xfce4-session/default.nix @@ -3,9 +3,9 @@ mkXfceDerivation { category = "xfce"; pname = "xfce4-session"; - version = "4.14.0"; + version = "4.14.2"; - sha256 = "0v0xzkdr5rgv6219c1dy96cghgw8bqnb313jccxihfgddf363104"; + sha256 = "1gr6j96l792v33lbh7rqpbdjmy8m68hy14bsndx6bykv10zvmgx2"; buildInputs = [ exo gtk3 glib libxfce4ui libxfce4util libwnck3 xfconf polkit iceauth ]; From 80227a5ed204a4034bd9c0b92e834f38ecbbdadc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:52 -0300 Subject: [PATCH 160/219] xfce.xfce4-settings: 4.14.0 -> 4.14.3 --- pkgs/desktops/xfce/core/xfce4-settings/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/core/xfce4-settings/default.nix b/pkgs/desktops/xfce/core/xfce4-settings/default.nix index 74ab96ed1bcd..9b263e5ee733 100644 --- a/pkgs/desktops/xfce/core/xfce4-settings/default.nix +++ b/pkgs/desktops/xfce/core/xfce4-settings/default.nix @@ -5,9 +5,9 @@ mkXfceDerivation { category = "xfce"; pname = "xfce4-settings"; - version = "4.14.0"; + version = "4.14.3"; - sha256 = "13gmxd4sfgd6wky7s03bar58w9vl4i6jv2wncd6iajww791y5akn"; + sha256 = "1zzngdj7mp2r6rcs8gvda1218zlz5gpnc6gsp20z32l69psp3yld"; postPatch = '' for f in $(find . -name \*.c); do From fec32ec28760456189ac8ebf461d038d1f414a26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:53 -0300 Subject: [PATCH 161/219] xfce.xfce4-taskmanager: 1.2.2 -> 1.2.3 --- pkgs/desktops/xfce/applications/xfce4-taskmanager/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/applications/xfce4-taskmanager/default.nix b/pkgs/desktops/xfce/applications/xfce4-taskmanager/default.nix index e3d8b4b87d94..9a923025c94d 100644 --- a/pkgs/desktops/xfce/applications/xfce4-taskmanager/default.nix +++ b/pkgs/desktops/xfce/applications/xfce4-taskmanager/default.nix @@ -3,9 +3,9 @@ mkXfceDerivation { category = "apps"; pname = "xfce4-taskmanager"; - version = "1.2.2"; + version = "1.2.3"; - sha256 = "03js0pmhrybxa7hrp3gx4rm7j061ansv0bp2dwhnbrdpmzjysysc"; + sha256 = "0818chns7vkvjqakgz8z790adkygcq4jlw59dv6kyzk17hxq6cxv"; nativeBuildInputs = [ exo ]; buildInputs = [ gtk3 libwnck3 libXmu ]; From 4bf4f84742143b32f6ced236ee4aefa22359e554 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:53 -0300 Subject: [PATCH 162/219] xfce.xfce4-sensors-plugin: 1.2.6 -> 1.3.92 --- .../xfce/panel-plugins/xfce4-sensors-plugin.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix index 14cab3d932e8..8b8dbf3e022c 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk2, libxfce4ui, +{ stdenv, fetchurl, pkgconfig, intltool, gtk3, libxfce4ui, libxfce4util, xfce4-panel, libnotify, lm_sensors, hddtemp, netcat-gnu, xfce }: @@ -8,11 +8,11 @@ in stdenv.mkDerivation rec { pname = "xfce4-sensors-plugin"; - version = "1.2.6"; + version = "1.3.92"; src = fetchurl { url = "mirror://xfce/src/${category}/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "1h0vpqxcziml3gwrbvd8xvy1mwh9mf2a68dvxsy03rs5pm1ghpi3"; + sha256 = "04jibw23ibi61f19gc9xy400yhcdiya4px6zp8c7fjq65hyn9iix"; }; nativeBuildInputs = [ @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - gtk2 + gtk3 libxfce4ui libxfce4util xfce4-panel @@ -45,7 +45,7 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-sensors-plugin"; description = "A panel plug-in for different sensors using acpi, lm_sensors and hddtemp"; license = licenses.gpl2; platforms = platforms.unix; From 39621eb16f5d0de5be52bd32b5a7270ddd6e3272 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:53 -0300 Subject: [PATCH 163/219] xfce.xfce4-systemload-plugin: 1.1.2 -> 1.2.3 --- .../panel-plugins/xfce4-systemload-plugin.nix | 24 +++++++++++++------ 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix index 1ff0bc2efbae..52da6a29ea42 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, gtk2, xfce }: +{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, gtk3, xfce }: let category = "panel-plugins"; @@ -6,16 +6,25 @@ in stdenv.mkDerivation rec { pname = "xfce4-systemload-plugin"; - version = "1.1.2"; + version = "1.2.3"; src = fetchurl { url = "mirror://xfce/src/${category}/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "0z4as6sxdz93d4jpgv0665dg4sykfvc5068mc689phlfl2rvcsdl"; + sha256 = "0x87a8h5l3ashz1ksfaxcpn9a392jzlsbx5n5pga8g90fp2hf905"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel gtk2 ]; - + nativeBuildInputs = [ + pkgconfig + intltool + ]; + + buildInputs = [ + libxfce4util + libxfce4ui + xfce4-panel + gtk3 + ]; + passthru.updateScript = xfce.updateScript { inherit pname version; attrPath = "xfce.${pname}"; @@ -23,8 +32,9 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-systemload-plugin"; description = "System load plugin for Xfce panel"; + license = licenses.bsd2; platforms = platforms.linux; maintainers = [ maintainers.AndersonTorres ]; }; From 6ce6bdf9b200727d7803930f15eaa824bd253425 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:53 -0300 Subject: [PATCH 164/219] xfce.xfce4-vala-panel-appmenu-plugin: 0.6.94 -> 0.7.3 --- .../panel-plugins/xfce4-vala-panel-appmenu-plugin/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/default.nix index bd0db543cf66..525bd6e5fd7d 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/default.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-vala-panel-appmenu-plugin/default.nix @@ -4,7 +4,7 @@ stdenv.mkDerivation rec { pname = "xfce4-vala-panel-appmenu-plugin"; - version = "0.6.94"; + version = "0.7.3"; src = fetchFromGitHub { owner = "rilian-la-te"; @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { rev = version; fetchSubmodules = true; - sha256 = "0xxn3zs60a9nfix8wrdp056wviq281cm1031hznzf1l38lp3wr5p"; + sha256 = "06rykdr2c9rnzxwinwdynd73v9wf0gjkx6qfva7sx2n94ajsdnaw"; }; nativeBuildInputs = [ pkgconfig cmake vala libxml2.bin ]; From 37be87b61ffe462d21d1b6f32e29bf5f079376b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:53 -0300 Subject: [PATCH 165/219] xfce.xfce4-windowck-plugin: 0.4.4 -> 0.4.6 --- .../panel-plugins/xfce4-windowck-plugin.nix | 28 ++++++++++++++----- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-windowck-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-windowck-plugin.nix index ceeac724cf38..e629a08c5537 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-windowck-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-windowck-plugin.nix @@ -3,18 +3,32 @@ stdenv.mkDerivation rec { pname = "xfce4-windowck-plugin"; - version = "0.4.4"; + version = "0.4.6"; src = fetchFromGitHub { owner = "cedl38"; repo = pname; rev = "v${version}"; - sha256 = "0c6a1ibh39dpq9x0dha5lsg0vzmgaf051fgwz0nlky0s94nwzvgv"; + sha256 = "1gwrbjfv4cnlsqh05h42w41z3xs15yjj6j8y9gxvvvvlgzzp4p3g"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool python3 imagemagick libwnck gtk2 - exo libxfce4ui libxfce4util xfce4-panel xfconf xfce4-dev-tools ]; + nativeBuildInputs = [ + pkgconfig + intltool + ]; + + buildInputs = [ + python3 + imagemagick + libwnck + gtk2 + exo + libxfce4ui + libxfce4util + xfce4-panel + xfconf + xfce4-dev-tools + ]; preConfigure = '' ./autogen.sh @@ -31,8 +45,8 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; - description = "Set of two plugins which allows you to put the maximized window title and windows buttons on the panel"; + homepage = "https://goodies.xfce.org/projects/panel-plugins/xfce4-windowck-plugin"; + description = "Xfce plugins which allows to put the maximized window title and buttons on the panel"; license = licenses.gpl2Plus; platforms = platforms.unix; maintainers = [ maintainers.volth ]; From 360be696ad17762c03457458c5ce86fec00efbf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:53 -0300 Subject: [PATCH 166/219] xfce.xfce4-timer-plugin: 1.6.0 -> 1.7.0 --- .../xfce/panel-plugins/xfce4-timer-plugin.nix | 26 ++++++++++++------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix index ae08fd3aeaee..00b497c918d8 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix @@ -1,5 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel -, libxfce4ui, xfconf, gtk2, hicolor-icon-theme, xfce }: +{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, gtk3, hicolor-icon-theme, xfce }: let category = "panel-plugins"; @@ -7,17 +6,25 @@ in stdenv.mkDerivation rec { pname = "xfce4-timer-plugin"; - version = "1.6.0"; + version = "1.7.0"; src = fetchurl { url = "mirror://xfce/src/${category}/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "0z46gyw3ihcd1jf0m5z1dsc790xv1cpi8mk1dagj3i4v14gx5mrr"; + sha256 = "16vypwwjwfk7nn4n16rfgn0z78jqrmbgxmc1r46269lrwd1m6kif"; }; - buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf - gtk2 hicolor-icon-theme ]; + nativeBuildInputs = [ + pkgconfig + intltool + ]; - nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ + libxfce4util + libxfce4ui + xfce4-panel + gtk3 + hicolor-icon-theme + ]; hardeningDisable = [ "format" ]; @@ -28,11 +35,10 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; - description = "A simple XFCE panel plugin that lets the user run an alarm at a specified time or at the end of a specified countdown period"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-timer-plugin"; + description = "Simple countdown and alarm plugin for the Xfce panel"; platforms = platforms.linux; license = licenses.gpl2; maintainers = [ ]; - broken = true; }; } From 68569ee02e9a849f3d1ae4c1212988a5de80ee74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:54 -0300 Subject: [PATCH 167/219] xfce.xfdashboard: 0.7.5 -> 0.7.7 --- pkgs/desktops/xfce/applications/xfdashboard/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/applications/xfdashboard/default.nix b/pkgs/desktops/xfce/applications/xfdashboard/default.nix index f3db9c2446b8..a9610125b5b5 100644 --- a/pkgs/desktops/xfce/applications/xfdashboard/default.nix +++ b/pkgs/desktops/xfce/applications/xfdashboard/default.nix @@ -17,11 +17,11 @@ mkXfceDerivation { category = "apps"; pname = "xfdashboard"; - version = "0.7.5"; + version = "0.7.7"; rev-prefix = ""; odd-unstable = false; - sha256 = "0d0kg90h3li41bs75z3xldljsglkz220pba39c54qznnzb8v8a2i"; + sha256 = "0b9pl3k8wl7svwhb9knhvr86gjg2904n788l8cbczwy046ql7pyc"; buildInputs = [ clutter From ed93bfb64c5048b4d15692e0d6005d75daafd5b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:54 -0300 Subject: [PATCH 168/219] xfce.xfce4-weather-plugin: 0.8.10 -> 0.10.1 --- .../panel-plugins/xfce4-weather-plugin.nix | 25 +++++++++++++------ 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin.nix index f32efb01edd1..cff2ef251ad4 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk2, libxml2, libsoup, upower, +{ stdenv, fetchurl, pkgconfig, intltool, gtk3, libxml2, libsoup, upower, libxfce4ui, libxfce4util, xfce4-panel, hicolor-icon-theme, xfce }: let @@ -7,17 +7,28 @@ in stdenv.mkDerivation rec { pname = "xfce4-weather-plugin"; - version = "0.8.10"; + version = "0.10.1"; src = fetchurl { url = "mirror://xfce/src/${category}/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2"; - sha256 = "1f7ac2zr5s5w6krdpgsq252wxhhmcblia3j783132ilh8k246vgf"; + sha256 = "12bs2rfmmy021087i10vxibdbbvd5vld0vk3h5hymhpz7rgszcmg"; }; - nativeBuildInputs = [ pkgconfig intltool ]; + nativeBuildInputs = [ + pkgconfig + intltool + ]; - buildInputs = [ gtk2 libxml2 libsoup upower libxfce4ui libxfce4util - xfce4-panel hicolor-icon-theme ]; + buildInputs = [ + gtk3 + libxml2 + libsoup + upower + libxfce4ui + libxfce4util + xfce4-panel + hicolor-icon-theme + ]; enableParallelBuilding = true; @@ -28,7 +39,7 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-weather-plugin"; description = "Weather plugin for the Xfce desktop environment"; license = licenses.gpl2Plus; platforms = platforms.unix; From a2c97366cdbdb6b2843be16a2b02141a5040eac1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 15 Apr 2020 14:50:54 -0300 Subject: [PATCH 169/219] xfce.xfdesktop: 4.14.1 -> 4.14.2 --- pkgs/desktops/xfce/core/xfdesktop/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/core/xfdesktop/default.nix b/pkgs/desktops/xfce/core/xfdesktop/default.nix index afcd0d19dc33..75e9fc8cb653 100644 --- a/pkgs/desktops/xfce/core/xfdesktop/default.nix +++ b/pkgs/desktops/xfce/core/xfdesktop/default.nix @@ -3,9 +3,9 @@ mkXfceDerivation { category = "xfce"; pname = "xfdesktop"; - version = "4.14.1"; + version = "4.14.2"; - sha256 = "006w4xwmpwp34q2qkkixr3xz0vb0kny79pw64yj4304wsb5jr14g"; + sha256 = "04fhm1pf9290sy3ymrmnfnm2x6fq5ldzvj5bjd9kz6zkx0nsq1za"; buildInputs = [ exo From 11188c1746f41efe06fee5bc53f656020345f6e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Thu, 16 Apr 2020 00:56:21 -0300 Subject: [PATCH 170/219] xfce.exo: add support for gtk2, besides gtk3 --- pkgs/desktops/xfce/core/exo/default.nix | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/pkgs/desktops/xfce/core/exo/default.nix b/pkgs/desktops/xfce/core/exo/default.nix index 6566d77ebbec..ee58c76ea02b 100644 --- a/pkgs/desktops/xfce/core/exo/default.nix +++ b/pkgs/desktops/xfce/core/exo/default.nix @@ -1,4 +1,4 @@ -{ mkXfceDerivation, docbook_xsl, glib, libxslt, perlPackages, gtk3 +{ mkXfceDerivation, docbook_xsl, glib, libxslt, perlPackages, gtk2, gtk3 , libxfce4ui, libxfce4util }: mkXfceDerivation { @@ -8,8 +8,19 @@ mkXfceDerivation { sha256 = "1db7w6jk3i501x4qw0hs0ydrm1fjdkxmahzbv5iag859wnnlg0pd"; - nativeBuildInputs = [ libxslt perlPackages.URI docbook_xsl ]; - buildInputs = [ gtk3 glib libxfce4ui libxfce4util ]; + nativeBuildInputs = [ + libxslt + perlPackages.URI + docbook_xsl + ]; + + buildInputs = [ + gtk2 # some xfce plugins still uses gtk2 + gtk3 + glib + libxfce4ui + libxfce4util + ]; # Workaround https://bugzilla.xfce.org/show_bug.cgi?id=15825 NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0"; From 21fb9c538e1344f221fa2275280f456f83646811 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Thu, 16 Apr 2020 01:01:34 -0300 Subject: [PATCH 171/219] xfce.xfce4-mailwatch-plugin: remove broken status --- .../panel-plugins/xfce4-mailwatch-plugin.nix | 27 +++++++++++++------ 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix index b63224f87086..3d60d8b18f9a 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, - xfconf, gtk2, exo, gnutls, libgcrypt, xfce }: + gtk2, exo, gnutls, libgcrypt, xfce }: let category = "panel-plugins"; @@ -14,10 +14,21 @@ stdenv.mkDerivation rec { sha256 = "1bfw3smwivr9mzdyq768biqrl4aq94zqi3xjzq6kqnd8561cqjk2"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel - xfconf gtk2 exo gnutls libgcrypt ]; - + nativeBuildInputs = [ + intltool + pkgconfig + ]; + + buildInputs = [ + libxfce4util + libxfce4ui + xfce4-panel + gtk2 + exo # needs exo with gtk2 support + gnutls + libgcrypt + ]; + passthru.updateScript = xfce.updateScript { inherit pname version; attrPath = "xfce.${pname}"; @@ -25,10 +36,10 @@ stdenv.mkDerivation rec { }; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; - description = "Mailwatch plugin for Xfce panel"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-mailwatch-plugin"; + description = "Mail watcher plugin for Xfce panel"; + license = licenses.gpl2; platforms = platforms.linux; maintainers = [ ]; - broken = true; }; } From c7c0940bcbd6d4b06531b3642138be647c5e2bb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Thu, 16 Apr 2020 01:08:05 -0300 Subject: [PATCH 172/219] xfce.xfce4-embed-plugin: update meta and buildInputs --- .../xfce/panel-plugins/xfce4-embed-plugin.nix | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-embed-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-embed-plugin.nix index 3cd847146635..2b2027bcf4bc 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-embed-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-embed-plugin.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, xfconf, gtk2, xfce }: +{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, xfce4-panel, libxfce4ui, gtk2, xfce }: let category = "panel-plugins"; @@ -14,9 +14,18 @@ stdenv.mkDerivation rec { sha256 = "0a72kqsjjh45swimqlpyrahdnplp0383v0i4phr4n6g8c1ixyry7"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 ]; - + nativeBuildInputs = [ + pkgconfig + intltool + ]; + + buildInputs = [ + libxfce4util + libxfce4ui + xfce4-panel + gtk2 + ]; + passthru.updateScript = xfce.updateScript { inherit pname version; attrPath = "xfce.${pname}"; @@ -24,8 +33,9 @@ stdenv.mkDerivation rec { }; meta = { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; + homepage = "https://docs.xfce.org/panel-plugins/xfce4-embed-plugin"; description = "Embed arbitrary app windows on Xfce panel"; + license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = [ maintainers.AndersonTorres ]; }; From fc4a10e11d4fa93c7ba5652377a7f32a41dd2b34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Thu, 16 Apr 2020 01:28:14 -0300 Subject: [PATCH 173/219] xfce.xfce4-hardware-monitor-plugin: update meta --- .../xfce/panel-plugins/xfce4-hardware-monitor-plugin.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin.nix index 83084b626612..d8775c4b7045 100644 --- a/pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin.nix +++ b/pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin.nix @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; meta = with stdenv.lib; { - homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}"; + homepage = "https://goodies.xfce.org/projects/panel-plugins/xfce4-hardware-monitor-plugin"; description = "Hardware monitor plugin for the XFCE4 panel"; license = licenses.gpl3; platforms = platforms.unix; From c5d8f23febe2578df9f43e29af3bb9a17b3fd414 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Thu, 16 Apr 2020 01:44:35 -0300 Subject: [PATCH 174/219] xfce.xfce4-icon-theme: update gtk dependency and add license --- pkgs/desktops/xfce/art/xfce4-icon-theme.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkgs/desktops/xfce/art/xfce4-icon-theme.nix b/pkgs/desktops/xfce/art/xfce4-icon-theme.nix index 089b7cc27f87..e614bb1db921 100644 --- a/pkgs/desktops/xfce/art/xfce4-icon-theme.nix +++ b/pkgs/desktops/xfce/art/xfce4-icon-theme.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, gtk2, xfce }: +{ stdenv, fetchurl, pkgconfig, intltool, gtk3, xfce }: let category = "art"; @@ -13,9 +13,12 @@ stdenv.mkDerivation rec { sha256 = "1yk6rx3zr9grm4jwpjvqdkl13pisy7qn1wm5cqzmd2kbsn96cy6l"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool gtk2 ]; - + nativeBuildInputs = [ + pkgconfig + intltool + gtk3 + ]; + passthru.updateScript = xfce.updateScript { inherit pname version; attrPath = "xfce.${pname}"; @@ -25,6 +28,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { homepage = "https://www.xfce.org/"; description = "Icons for Xfce"; + license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = [ maintainers.eelco ]; }; From 1b89bffcf47dc1e271bea128635e33efd9481b93 Mon Sep 17 00:00:00 2001 From: Pierre Bourdon Date: Mon, 16 Mar 2020 09:21:15 +0100 Subject: [PATCH 175/219] libtxc_dxtn{,_s2tc}: remove from nixpkgs + hardware.opengl options Context: discussion in https://github.com/NixOS/nixpkgs/pull/82630 Mesa has been supporting S3TC natively without requiring these libraries since the S3TC patent expired in December 2017. --- nixos/modules/hardware/opengl.nix | 26 ++++--------------- pkgs/applications/misc/lutris/chrootenv.nix | 2 +- .../libraries/libtxc_dxtn/default.nix | 23 ---------------- .../libraries/libtxc_dxtn_s2tc/default.nix | 25 ------------------ pkgs/misc/emulators/wine/default.nix | 2 -- pkgs/misc/emulators/wine/staging.nix | 4 +-- pkgs/top-level/aliases.nix | 2 ++ pkgs/top-level/all-packages.nix | 4 --- 8 files changed, 10 insertions(+), 78 deletions(-) delete mode 100644 pkgs/development/libraries/libtxc_dxtn/default.nix delete mode 100644 pkgs/development/libraries/libtxc_dxtn_s2tc/default.nix diff --git a/nixos/modules/hardware/opengl.nix b/nixos/modules/hardware/opengl.nix index 28cddea8b79c..061528f4b1b5 100644 --- a/nixos/modules/hardware/opengl.nix +++ b/nixos/modules/hardware/opengl.nix @@ -10,14 +10,6 @@ let videoDrivers = config.services.xserver.videoDrivers; - makePackage = p: pkgs.buildEnv { - name = "mesa-drivers+txc-${p.mesa.version}"; - paths = - [ p.mesa.drivers - (if cfg.s3tcSupport then p.libtxc_dxtn else p.libtxc_dxtn_s2tc) - ]; - }; - package = pkgs.buildEnv { name = "opengl-drivers"; paths = [ cfg.package ] ++ cfg.extraPackages; @@ -34,6 +26,9 @@ in imports = [ (mkRenamedOptionModule [ "services" "xserver" "vaapiDrivers" ] [ "hardware" "opengl" "extraPackages" ]) + (mkRemovedOptionModule [ "hardware" "opengl" "s3tcSupport" ] '' + S3TC support is now always enabled in Mesa. + '') ]; options = { @@ -74,17 +69,6 @@ in ''; }; - s3tcSupport = mkOption { - type = types.bool; - default = false; - description = '' - Make S3TC(S3 Texture Compression) via libtxc_dxtn available - to OpenGL drivers instead of the patent-free S2TC replacement. - - Using this library may require a patent license depending on your location. - ''; - }; - package = mkOption { type = types.package; internal = true; @@ -166,8 +150,8 @@ in environment.sessionVariables.LD_LIBRARY_PATH = mkIf cfg.setLdLibraryPath ([ "/run/opengl-driver/lib" ] ++ optional cfg.driSupport32Bit "/run/opengl-driver-32/lib"); - hardware.opengl.package = mkDefault (makePackage pkgs); - hardware.opengl.package32 = mkDefault (makePackage pkgs.pkgsi686Linux); + hardware.opengl.package = mkDefault pkgs.mesa.drivers; + hardware.opengl.package32 = mkDefault pkgs.pkgsi686Linux.mesa.drivers; boot.extraModulePackages = optional (elem "virtualbox" videoDrivers) kernelPackages.virtualboxGuestAdditions; }; diff --git a/pkgs/applications/misc/lutris/chrootenv.nix b/pkgs/applications/misc/lutris/chrootenv.nix index 6f8d690779be..2861991cc41c 100644 --- a/pkgs/applications/misc/lutris/chrootenv.nix +++ b/pkgs/applications/misc/lutris/chrootenv.nix @@ -94,7 +94,7 @@ in buildFHSUserEnv { libsndfile libtheora libogg libvorbis libopus libGLU libpcap libpulseaudio libao libusb libevdev udev libgcrypt libxml2 libusb libpng libmpeg2 libv4l libjpeg libxkbcommon libass libcdio libjack2 libsamplerate libzip libmad libaio - libcap libtiff libva libgphoto2 libxslt libtxc_dxtn libsndfile giflib zlib glib + libcap libtiff libva libgphoto2 libxslt libsndfile giflib zlib glib alsaLib zziplib bash dbus keyutils zip cabextract freetype unzip coreutils readline gcc SDL SDL2 curl graphite2 gtk2 gtk3 udev ncurses wayland libglvnd vulkan-loader xdg_utils sqlite gnutls libbsd diff --git a/pkgs/development/libraries/libtxc_dxtn/default.nix b/pkgs/development/libraries/libtxc_dxtn/default.nix deleted file mode 100644 index 4e65e457110f..000000000000 --- a/pkgs/development/libraries/libtxc_dxtn/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ stdenv, fetchurl, autoreconfHook, libGL, libGLU }: - -let version = "1.0.1"; in - -stdenv.mkDerivation rec { - pname = "libtxc_dxtn"; - inherit version; - - src = fetchurl { - url = "https://people.freedesktop.org/~cbrill/libtxc_dxtn/${pname}-${version}.tar.bz2"; - sha256 = "0q5fjaknl7s0z206dd8nzk9bdh8g4p23bz7784zrllnarl90saa5"; - }; - - nativeBuildInputs = [ autoreconfHook ]; - buildInputs = [ libGL libGLU ]; - - meta = with stdenv.lib; { - homepage = "http://dri.freedesktop.org/wiki/S3TC"; - repositories.git = "git://people.freedesktop.org/~mareko/libtxc_dxtn"; - license = licenses.mit; - platforms = platforms.unix; - }; -} diff --git a/pkgs/development/libraries/libtxc_dxtn_s2tc/default.nix b/pkgs/development/libraries/libtxc_dxtn_s2tc/default.nix deleted file mode 100644 index bb69c0dec0a0..000000000000 --- a/pkgs/development/libraries/libtxc_dxtn_s2tc/default.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ stdenv, fetchurl, autoreconfHook, libGL, libGLU }: - -let version = "1.0"; in - -stdenv.mkDerivation { - pname = "libtxc_dxtn_s2tc"; - inherit version; - - src = fetchurl { - url = "https://github.com/divVerent/s2tc/archive/v${version}.tar.gz"; - sha256 = "0ibfdib277fhbqvxzan0bmglwnsl1y1rw2g8skvz82l1sfmmn752"; - }; - - nativeBuildInputs = [ autoreconfHook ]; - buildInputs = [ libGL libGLU ]; - - meta = { - description = "A patent-free S3TC compatible implementation"; - homepage = "https://github.com/divVerent/s2tc"; - repositories.git = "https://github.com/divVerent/s2tc.git"; - license = stdenv.lib.licenses.mit; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.cpages ]; - }; -} diff --git a/pkgs/misc/emulators/wine/default.nix b/pkgs/misc/emulators/wine/default.nix index 727eb2700671..368e2845ca40 100644 --- a/pkgs/misc/emulators/wine/default.nix +++ b/pkgs/misc/emulators/wine/default.nix @@ -9,7 +9,6 @@ { lib, stdenv, callPackage, wineRelease ? "stable", wineBuild ? if stdenv.hostPlatform.system == "x86_64-linux" then "wineWow" else "wine32", - libtxc_dxtn_Name ? "libtxc_dxtn_s2tc", pngSupport ? false, jpegSupport ? false, tiffSupport ? false, @@ -63,7 +62,6 @@ let wine-build = build: release: in if wineRelease == "staging" then callPackage ./staging.nix { - inherit libtxc_dxtn_Name; wineUnstable = wine-build wineBuild "unstable"; } else diff --git a/pkgs/misc/emulators/wine/staging.nix b/pkgs/misc/emulators/wine/staging.nix index df979c68a47f..5c2469f8f44e 100644 --- a/pkgs/misc/emulators/wine/staging.nix +++ b/pkgs/misc/emulators/wine/staging.nix @@ -1,4 +1,4 @@ -{ stdenv, callPackage, wineUnstable, libtxc_dxtn_Name }: +{ stdenv, callPackage, wineUnstable }: with callPackage ./util.nix {}; @@ -8,7 +8,7 @@ let patch = (callPackage ./sources.nix {}).staging; in assert stdenv.lib.getVersion wineUnstable == patch.version; stdenv.lib.overrideDerivation wineUnstable (self: { - buildInputs = build-inputs [ "perl" "utillinux" "autoconf" libtxc_dxtn_Name ] self.buildInputs; + buildInputs = build-inputs [ "perl" "utillinux" "autoconf" ] self.buildInputs; name = "${self.name}-staging"; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 6ebf2bcf8df7..d645edaff7c1 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -244,6 +244,8 @@ mapAliases ({ librecad2 = librecad; # backwards compatibility alias, added 2015-10 libsysfs = sysfsutils; # added 2018-04-25 libtidy = html-tidy; # added 2014-12-21 + libtxc_dxtn = throw "removed 2020-03-16, now integrated in Mesa"; + libtxc_dxtn_s2tc = throw "removed 2020-03-16, now integrated in Mesa"; libudev = udev; # added 2018-04-25 libsexy = throw "libsexy has been removed from nixpkgs, as it's abandoned and no package needed it."; # 2019-12-10 links = links2; # added 2016-01-31 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ad4bb9f8a97e..c705c7ae3af1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13272,10 +13272,6 @@ in libtsm = callPackage ../development/libraries/libtsm { }; - libtxc_dxtn = callPackage ../development/libraries/libtxc_dxtn { }; - - libtxc_dxtn_s2tc = callPackage ../development/libraries/libtxc_dxtn_s2tc { }; - libgeotiff = callPackage ../development/libraries/libgeotiff { }; libu2f-host = callPackage ../development/libraries/libu2f-host { }; From 261d7c2f665a079a53146cdc941d308ce90d961f Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Mon, 6 Apr 2020 10:43:10 -0400 Subject: [PATCH 176/219] ocamlPackages.dune-build-info: init at 2.4.0 --- .../ocaml-modules/dune-build-info/default.nix | 17 +++++++++++++++++ pkgs/top-level/ocaml-packages.nix | 2 ++ 2 files changed, 19 insertions(+) create mode 100644 pkgs/development/ocaml-modules/dune-build-info/default.nix diff --git a/pkgs/development/ocaml-modules/dune-build-info/default.nix b/pkgs/development/ocaml-modules/dune-build-info/default.nix new file mode 100644 index 000000000000..3c828ebdcdb9 --- /dev/null +++ b/pkgs/development/ocaml-modules/dune-build-info/default.nix @@ -0,0 +1,17 @@ +{ lib, buildDunePackage, dune_2 }: + +buildDunePackage rec { + pname = "dune-build-info"; + inherit (dune_2) src version; + + useDune2 = true; + + dontAddPrefix = true; + + meta = with lib; { + inherit (dune_2.meta) homepage; + description = "Embed build information inside executables"; + maintainers = [ maintainers.bcdarwin ]; + license = licenses.mit; + }; +} diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index fd863e428aff..5983110ceae2 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -230,6 +230,8 @@ let dune_2 = callPackage ../development/tools/ocaml/dune/2.nix { }; + dune-build-info = callPackage ../development/ocaml-modules/dune-build-info { }; + dune-configurator = callPackage ../development/ocaml-modules/dune-configurator { }; dune-private-libs = callPackage ../development/ocaml-modules/dune-private-libs { }; From 3a9f743605f8dc164eb7650d39a72cafebe28cbf Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Mon, 6 Apr 2020 19:23:35 -0400 Subject: [PATCH 177/219] ocamlPackages.linenoise: 1.1.0 -> 1.3.0 --- pkgs/development/ocaml-modules/linenoise/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/ocaml-modules/linenoise/default.nix b/pkgs/development/ocaml-modules/linenoise/default.nix index b6b9b4163ff9..0ad277f4a07f 100644 --- a/pkgs/development/ocaml-modules/linenoise/default.nix +++ b/pkgs/development/ocaml-modules/linenoise/default.nix @@ -2,7 +2,7 @@ buildDunePackage rec { pname = "linenoise"; - version = "1.1.0"; + version = "1.3.0"; minimumOCamlVersion = "4.02"; @@ -10,7 +10,7 @@ buildDunePackage rec { owner = "fxfactorial"; repo = "ocaml-${pname}"; rev = "v${version}"; - sha256 = "1h6rqfgmhmd7p5z8yhk6zkbrk4yzw1v2fgwas2b7g3hqs6y0xj0q"; + sha256 = "0m9mm1arsawi5w5aqm57z41sy1wfxvhfgbdiw7hzy631i391144g"; }; propagatedBuildInputs = [ result ]; From c62428963ada53aa861de73634db96b7ff735400 Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Tue, 7 Apr 2020 12:56:32 -0400 Subject: [PATCH 178/219] ocamlPackages.sedlex_2: fix dependencies (as per 77901a9) --- pkgs/development/ocaml-modules/sedlex/2.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/ocaml-modules/sedlex/2.nix b/pkgs/development/ocaml-modules/sedlex/2.nix index 7b751ba03037..b1a892d5b804 100644 --- a/pkgs/development/ocaml-modules/sedlex/2.nix +++ b/pkgs/development/ocaml-modules/sedlex/2.nix @@ -38,9 +38,9 @@ buildDunePackage rec { sha256 = "05f6qa8x3vhpdz1fcnpqk37fpnyyq13icqsk2gww5idjnh6kng26"; }; - buildInputs = [ ppx_tools_versioned ocaml-migrate-parsetree ]; - - propagatedBuildInputs = [ gen uchar ]; + propagatedBuildInputs = [ + gen uchar ocaml-migrate-parsetree ppx_tools_versioned + ]; preBuild = '' ln -s ${DerivedCoreProperties} src/generator/data/DerivedCoreProperties.txt From ad7b7367b6191ccaca00928e0cc9633b98b27490 Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Mon, 6 Apr 2020 20:44:48 -0400 Subject: [PATCH 179/219] beluga: 20180403 -> unstable-2020-03-11 --- .../science/logic/beluga/default.nix | 38 +++++++++++-------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/pkgs/applications/science/logic/beluga/default.nix b/pkgs/applications/science/logic/beluga/default.nix index 55cee9b7e17c..44478a032b38 100644 --- a/pkgs/applications/science/logic/beluga/default.nix +++ b/pkgs/applications/science/logic/beluga/default.nix @@ -1,34 +1,40 @@ -{ stdenv, fetchFromGitHub, ocamlPackages, omake }: +{ lib, fetchFromGitHub, ocamlPackages, rsync }: -stdenv.mkDerivation { - name = "beluga-20180403"; +ocamlPackages.buildDunePackage { + pname = "beluga"; + version = "unstable-2020-03-11"; src = fetchFromGitHub { owner = "Beluga-lang"; repo = "Beluga"; - rev = "046aa59f008be70a7c4700b723bed0214ea8b687"; - sha256 = "0m68y0r0wdw3mg2jks68bihaww7sg305zdfnic1rkndq2cxv0mld"; + rev = "6133b2f572219333f304bb4f77c177592324c55b"; + sha256 = "0sy6mi50z3mvs5z7dx38piydapk89all81rh038x3559b5fsk68q"; }; - nativeBuildInputs = with ocamlPackages; [ findlib ocamlbuild omake ]; - buildInputs = with ocamlPackages; [ ocaml ulex ocaml_extlib ]; + useDune2 = true; - installPhase = '' - mkdir -p $out - cp -r bin $out/ + buildInputs = with ocamlPackages; [ + gen sedlex_2 ocaml_extlib dune-build-info linenoise + ]; - mkdir -p $out/share/beluga - cp -r tools/ examples/ $out/share/beluga + postPatch = '' + patchShebangs ./TEST ./run_harpoon_test.sh + ''; + checkPhase = "./TEST"; + checkInputs = [ rsync ]; + doCheck = true; + + postInstall = '' mkdir -p $out/share/emacs/site-lisp/beluga/ cp -r tools/beluga-mode.el $out/share/emacs/site-lisp/beluga ''; - meta = { + meta = with lib; { description = "A functional language for reasoning about formal systems"; homepage = "http://complogic.cs.mcgill.ca/beluga/"; - license = stdenv.lib.licenses.gpl3Plus; - maintainers = [ stdenv.lib.maintainers.bcdarwin ]; - platforms = stdenv.lib.platforms.unix; + license = licenses.gpl3Plus; + maintainers = [ maintainers.bcdarwin ]; + platforms = platforms.unix; }; } From e857e72b7adc067294b6215df87ad319c15861c7 Mon Sep 17 00:00:00 2001 From: Pierre Bourdon Date: Mon, 20 Apr 2020 05:48:04 +0200 Subject: [PATCH 180/219] alacritty: manually strip before running patchelf patchelf seems to generate an ELF that "strip" cannot process: strip: /tmp/stNGAZvd: not enough room for program headers, try linking with -N strip:/tmp/stNGAZvd[.interp]: bad value (This unfortunately does not cause any errors or even error output in the build log, since the default strip hook redirects them to /dev/null and ignores failures.) The lack of stripping ends up leaking paths to the compiler in the debug symbols. This more than doubles the transitive closure size of alacritty. Impact on closure size: 314.5M -> 131.8M. --- pkgs/applications/misc/alacritty/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/applications/misc/alacritty/default.nix b/pkgs/applications/misc/alacritty/default.nix index b6248b8f6f13..c5d7b19618fd 100644 --- a/pkgs/applications/misc/alacritty/default.nix +++ b/pkgs/applications/misc/alacritty/default.nix @@ -104,6 +104,12 @@ rustPlatform.buildRustPackage rec { '' else '' install -D extra/linux/Alacritty.desktop -t $out/share/applications/ install -D extra/logo/alacritty-term.svg $out/share/icons/hicolor/scalable/apps/Alacritty.svg + + # patchelf generates an ELF that binutils' "strip" doesn't like: + # strip: not enough room for program headers, try linking with -N + # As a workaround, strip manually before running patchelf. + strip -S $out/bin/alacritty + patchelf --set-rpath "${lib.makeLibraryPath rpathLibs}" $out/bin/alacritty '' ) + '' From 93df15d79ae293b19a3945af7302052205480804 Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Thu, 27 Feb 2020 17:19:40 +0800 Subject: [PATCH 181/219] https-dns-proxy: init at unstable-20200419 --- pkgs/servers/dns/https-dns-proxy/default.nix | 34 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 36 insertions(+) create mode 100644 pkgs/servers/dns/https-dns-proxy/default.nix diff --git a/pkgs/servers/dns/https-dns-proxy/default.nix b/pkgs/servers/dns/https-dns-proxy/default.nix new file mode 100644 index 000000000000..6f2cb5048034 --- /dev/null +++ b/pkgs/servers/dns/https-dns-proxy/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchFromGitHub, cmake, gtest, c-ares, curl, libev }: + +stdenv.mkDerivation rec { + pname = "https-dns-proxy"; + # there are no stable releases (yet?) + version = "unstable-20200419"; + + src = fetchFromGitHub { + owner = "aarond10"; + repo = "https_dns_proxy"; + rev = "79fc7b085e3b1ad64c8332f7115dfe2bf5f1f3e4"; + sha256 = "1cdfswfjby4alp6gy7yyjm76kfyclh5ax0zadnqs2pyigg9plh0b"; + }; + + nativeBuildInputs = [ cmake gtest ]; + + buildInputs = [ c-ares curl libev ]; + + installPhase = '' + install -Dm555 -t $out/bin https_dns_proxy + install -Dm444 -t $out/share/doc/${pname} ../{LICENSE,README}.* + ''; + + # upstream wants to add tests and the gtest framework is in place, so be ready + # for when that happens despite there being none as of right now + doCheck = true; + + meta = with stdenv.lib; { + description = "DNS to DNS over HTTPS (DoH) proxy"; + license = licenses.mit; + maintainers = with maintainers; [ peterhoeg ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 865b8543f469..7167eb8c5aa8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15356,6 +15356,8 @@ in home-assistant-cli = callPackage ../servers/home-assistant/cli.nix { }; + https-dns-proxy = callPackage ../servers/dns/https-dns-proxy { }; + hydron = callPackage ../servers/hydron { }; icingaweb2 = callPackage ../servers/icingaweb2 { }; From ab37d7e7ea6fa44bba109c30dd006037c93cbc52 Mon Sep 17 00:00:00 2001 From: adisbladis Date: Sun, 19 Apr 2020 14:41:18 +0100 Subject: [PATCH 182/219] nixos-containers: Add support for custom nixpkgs argument --- nixos/modules/virtualisation/containers.nix | 18 ++++++++- nixos/tests/all-tests.nix | 1 + nixos/tests/containers-custom-pkgs.nix | 42 +++++++++++++++++++++ 3 files changed, 59 insertions(+), 2 deletions(-) create mode 100644 nixos/tests/containers-custom-pkgs.nix diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix index dad211ef55ba..2db5c117aa7f 100644 --- a/nixos/modules/virtualisation/containers.nix +++ b/nixos/modules/virtualisation/containers.nix @@ -463,10 +463,15 @@ in A specification of the desired configuration of this container, as a NixOS module. ''; - type = lib.mkOptionType { + type = let + confPkgs = if config.pkgs == null then pkgs else config.pkgs; + in lib.mkOptionType { name = "Toplevel NixOS config"; - merge = loc: defs: (import ../../lib/eval-config.nix { + merge = loc: defs: (import (confPkgs.path + "/nixos/lib/eval-config.nix") { inherit system; + pkgs = confPkgs; + baseModules = import (confPkgs.path + "/nixos/modules/module-list.nix"); + inherit (confPkgs) lib; modules = let extraConfig = { @@ -515,6 +520,15 @@ in ''; }; + pkgs = mkOption { + type = types.nullOr types.attrs; + default = null; + example = literalExample "pkgs"; + description = '' + Customise which nixpkgs to use for this container. + ''; + }; + ephemeral = mkOption { type = types.bool; default = false; diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index b0c9c7bc2258..30229a3a5b2f 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -53,6 +53,7 @@ in consul = handleTest ./consul.nix {}; cockroachdb = handleTestOn ["x86_64-linux"] ./cockroachdb.nix {}; containers-bridge = handleTest ./containers-bridge.nix {}; + containers-custom-pkgs.nix = handleTest ./containers-custom-pkgs.nix {}; containers-ephemeral = handleTest ./containers-ephemeral.nix {}; containers-extra_veth = handleTest ./containers-extra_veth.nix {}; containers-hosts = handleTest ./containers-hosts.nix {}; diff --git a/nixos/tests/containers-custom-pkgs.nix b/nixos/tests/containers-custom-pkgs.nix new file mode 100644 index 000000000000..397a4a905e6d --- /dev/null +++ b/nixos/tests/containers-custom-pkgs.nix @@ -0,0 +1,42 @@ +# Test for NixOS' container support. + +import ./make-test-python.nix ({ pkgs, lib, ...} : let + + customPkgs = pkgs // { + hello = pkgs.hello.overrideAttrs(old: { + name = "custom-hello"; + }); + }; + +in { + name = "containers-hosts"; + meta = with lib.maintainers; { + maintainers = [ adisbladis ]; + }; + + machine = + { ... }: + { + virtualisation.memorySize = 256; + virtualisation.vlans = []; + + containers.simple = { + autoStart = true; + pkgs = customPkgs; + config = {pkgs, config, ... }: { + environment.systemPackages = [ + pkgs.hello + ]; + }; + }; + + }; + + testScript = '' + start_all() + machine.wait_for_unit("default.target") + machine.succeed( + "test $(nixos-container run simple -- readlink -f /run/current-system/sw/bin/hello) = ${customPkgs.hello}/bin/hello" + ) + ''; +}) From f39712960adf105ec17371031f669b65c217b1a6 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Mon, 13 Apr 2020 10:41:40 +0200 Subject: [PATCH 183/219] =?UTF-8?q?ocamlPackages.rpclib:=206.0.0=20?= =?UTF-8?q?=E2=86=92=207.0.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkgs/development/ocaml-modules/rpclib/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/ocaml-modules/rpclib/default.nix b/pkgs/development/ocaml-modules/rpclib/default.nix index a4134f592b36..9216a489248b 100644 --- a/pkgs/development/ocaml-modules/rpclib/default.nix +++ b/pkgs/development/ocaml-modules/rpclib/default.nix @@ -2,7 +2,7 @@ buildDunePackage rec { pname = "rpclib"; - version = "6.0.0"; + version = "7.0.0"; minimumOCamlVersion = "4.04"; @@ -10,7 +10,7 @@ buildDunePackage rec { owner = "mirage"; repo = "ocaml-rpc"; rev = "v${version}"; - sha256 = "0bmr20sj7kybjjlwd42irj0f5zlnxcw7mxa1mdgxkki9bmhsqr51"; + sha256 = "0d8nb272mjxkq5ddn65cy9gjpa8yvd0v3jv3wp5xfh9gj29wd2jj"; }; buildInputs = [ alcotest cmdliner yojson ]; From 75971d096a629e3d60faa5f4f15f0044c76bfdbb Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Mon, 13 Apr 2020 10:41:44 +0200 Subject: [PATCH 184/219] ocamlPackages.async_ssl: remove at 113.33.07 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is the legacy version for OCaml ≤ 4.02 --- .../ocaml-modules/janestreet/async_ssl.nix | 17 ----------------- pkgs/top-level/ocaml-packages.nix | 5 ----- 2 files changed, 22 deletions(-) delete mode 100644 pkgs/development/ocaml-modules/janestreet/async_ssl.nix diff --git a/pkgs/development/ocaml-modules/janestreet/async_ssl.nix b/pkgs/development/ocaml-modules/janestreet/async_ssl.nix deleted file mode 100644 index c13f9a34fb76..000000000000 --- a/pkgs/development/ocaml-modules/janestreet/async_ssl.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ stdenv, buildOcamlJane, async, comparelib, core, ctypes -, openssl, fieldslib, herelib, pipebang, sexplib, ocaml_oasis -}: - -buildOcamlJane { - name = "async_ssl"; - version = "113.33.07"; - hash = "0bhzpnmlx6dy4fli3i7ipjwqbsdi7fq171jrila5dr3ciy3841xs"; - propagatedBuildInputs = [ ctypes async comparelib core fieldslib - herelib pipebang sexplib openssl ocaml_oasis ]; - meta = with stdenv.lib; { - homepage = "https://github.com/janestreet/async_ssl"; - description = "Async wrappers for ssl"; - license = licenses.asl20; - maintainers = [ maintainers.ericbmerritt ]; - }; -} diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index e6ffa73f0350..160adc015f87 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -1234,11 +1234,6 @@ let then callPackage ../development/ocaml-modules/janestreet/async.nix {} else async_p4; - async_ssl = - if lib.versionOlder "4.03" ocaml.version - then janeStreet.async_ssl - else callPackage ../development/ocaml-modules/janestreet/async_ssl.nix { }; - # Apps / from all-packages ocamlnat = callPackage ../development/ocaml-modules/ocamlnat { }; From 71c405ea2e086aabbac131962ef82bb68c440a94 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Mon, 13 Apr 2020 10:41:48 +0200 Subject: [PATCH 185/219] satysfi: use OCaml 4.07 --- pkgs/top-level/all-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index daf7366cf1e6..ffff1363a50e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -25845,7 +25845,9 @@ in sanoid = callPackage ../tools/backup/sanoid { }; - satysfi = callPackage ../tools/typesetting/satysfi { }; + satysfi = callPackage ../tools/typesetting/satysfi { + ocamlPackages = ocaml-ng.ocamlPackages_4_07; + }; sc-controller = pythonPackages.callPackage ../misc/drivers/sc-controller { inherit libusb1; # Shadow python.pkgs.libusb1. From 3e7a2b9147fe78a229d5bd20849ce078e6b9ef71 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Mon, 13 Apr 2020 10:41:51 +0200 Subject: [PATCH 186/219] =?UTF-8?q?ocamlPackages.janeStreet:=200.12=20?= =?UTF-8?q?=E2=86=92=200.13?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ocamlPackages.bistro: fix for core-0.13 ocamlPackages.phylogenetics: 2020-01-05 → 2020-01-25 --- .../ocaml-modules/bistro/default.nix | 8 +- .../ocaml-modules/janestreet/0.13.nix | 503 ++++++++++++++++++ .../janestreet/janePackage_0_13.nix | 19 + .../ocaml-modules/phylogenetics/default.nix | 6 +- pkgs/tools/misc/patdiff/default.nix | 2 +- pkgs/top-level/ocaml-packages.nix | 12 +- 6 files changed, 543 insertions(+), 7 deletions(-) create mode 100644 pkgs/development/ocaml-modules/janestreet/0.13.nix create mode 100644 pkgs/development/ocaml-modules/janestreet/janePackage_0_13.nix diff --git a/pkgs/development/ocaml-modules/bistro/default.nix b/pkgs/development/ocaml-modules/bistro/default.nix index b141244f8c5b..9603f283ee4f 100644 --- a/pkgs/development/ocaml-modules/bistro/default.nix +++ b/pkgs/development/ocaml-modules/bistro/default.nix @@ -1,4 +1,4 @@ -{ lib, fetchFromGitHub, buildDunePackage +{ lib, fetchFromGitHub, fetchpatch, buildDunePackage , base64, bos, core, lwt_react, ocamlgraph, rresult, tyxml }: @@ -12,6 +12,12 @@ buildDunePackage rec { sha256 = "114gq48cpj2mvycypa9lfyqqb26wa2gkdfwkcqhnx7m6sdwv9a38"; }; + # The following patch adds support for core.v0.13 + patches = [(fetchpatch { + url = "https://github.com/pveber/bistro/commit/0931db43a146ad7829dff5120161a775f732a878.patch"; + sha256 = "06y0sxbbab1mssc1xfjjv12lpv4rny5iqv9qkdqyzrvzpl1bdvnd"; + })]; + propagatedBuildInputs = [ base64 bos core lwt_react ocamlgraph rresult tyxml ]; minimumOCamlVersion = "4.07"; diff --git a/pkgs/development/ocaml-modules/janestreet/0.13.nix b/pkgs/development/ocaml-modules/janestreet/0.13.nix new file mode 100644 index 000000000000..4682a744d6f5 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/0.13.nix @@ -0,0 +1,503 @@ +{ janePackage +, ctypes +, num +, octavius +, ppxlib +, re +, openssl +}: + +rec { + + ocaml-compiler-libs = janePackage { + pname = "ocaml-compiler-libs"; + version = "0.12.1"; + hash = "0hpk54fcsfcjp536fgwr80mjjf88hjk58q7jwnyrhk2ljd8xzgiv"; + meta.description = "OCaml compiler libraries repackaged"; + }; + + sexplib0 = janePackage { + pname = "sexplib0"; + hash = "1b1bk0xs1hqa12qs5y4h1yl3mq6xml4ya2570dyhdn1j0fbw4g3y"; + meta.description = "Library containing the definition of S-expressions and some base converters"; + }; + + base = janePackage { + pname = "base"; + version = "0.13.1"; + hash = "08a5aymcgr5svvm8v0v20msd5cad64m6maakfbhz4172g7kd9jzw"; + meta.description = "Full standard library replacement for OCaml"; + propagatedBuildInputs = [ sexplib0 ]; + }; + + stdio = janePackage { + pname = "stdio"; + hash = "1hkj9vh8n8p3n5pvx7053xis1pfmqd8p7shjyp1n555xzimfxzgh"; + meta.description = "Standard IO library for OCaml"; + propagatedBuildInputs = [ base ]; + }; + + ppx_sexp_conv = janePackage { + pname = "ppx_sexp_conv"; + hash = "0jkhwmkrfq3ss6bv6i3m871alcr4xpngs6ci6bmzv3yfl7s8bwdf"; + meta.description = "[@@deriving] plugin to generate S-expression conversion functions"; + propagatedBuildInputs = [ ppxlib ]; + }; + + ppx_here = janePackage { + pname = "ppx_here"; + hash = "1ahidrrjsyi0al06bhv5h6aqmdk7ryz8dybfhqjsn1zp9q056q35"; + meta.description = "Expands [%here] into its location"; + propagatedBuildInputs = [ ppxlib ]; + }; + + ppx_compare = janePackage { + pname = "ppx_compare"; + hash = "14pnqa47gsvq93z1b8wb5pyq8zw90aaw71j4pwlyid4s86px454j"; + meta.description = "Generation of comparison functions from types"; + propagatedBuildInputs = [ ppxlib ]; + }; + + ppx_cold = janePackage { + pname = "ppx_cold"; + hash = "0wnfwsgbzk4i5aqjlcaqp6lkvrq5345vazryvx2klbbrd4759h9f"; + meta.description = "Expands [@cold] into [@inline never][@specialise never][@local never]"; + propagatedBuildInputs = [ ppxlib ]; + }; + + ppx_assert = janePackage { + pname = "ppx_assert"; + hash = "08dada2xcp3w5mir90z56qrdyd317lygml4qlfssj897534bwiqr"; + meta.description = "Assert-like extension nodes that raise useful errors on failure"; + propagatedBuildInputs = [ ppx_cold ppx_compare ppx_here ppx_sexp_conv ]; + }; + + ppx_inline_test = janePackage { + pname = "ppx_inline_test"; + hash = "135qzbhqy33lmigbq1rakr9i3y59y3pczh4laanqjyss9b9kfs60"; + meta.description = "Syntax extension for writing in-line tests in ocaml code"; + propagatedBuildInputs = [ ppxlib ]; + }; + + ppx_custom_printf = janePackage { + pname = "ppx_custom_printf"; + hash = "0kvfkdk4wg2z8x705bajvl1f8wiyy3aya203wdzc9425h73nqm5p"; + meta.description = "Printf-style format-strings for user-defined string conversion"; + propagatedBuildInputs = [ ppx_sexp_conv ]; + }; + + fieldslib = janePackage { + pname = "fieldslib"; + hash = "0nsl0i9vjk73pr70ksxqa65rd5v84jzdaazryfdy6i4a5sfg7bxa"; + meta.description = "Syntax extension to define first class values representing record fields, to get and set record fields, iterate and fold over all fields of a record and create new record values"; + propagatedBuildInputs = [ base ]; + }; + + ppx_fields_conv = janePackage { + pname = "ppx_fields_conv"; + hash = "0biw0fgphj522bj9wgjk263i2w92vnpaabzr5zn0grihp4yqy8w4"; + meta.description = "Generation of accessor and iteration functions for ocaml records"; + propagatedBuildInputs = [ fieldslib ppxlib ]; + }; + + variantslib = janePackage { + pname = "variantslib"; + hash = "04nps65v1n0nv9n1c1kj5k9jyqsfsxb6h2w3vf6cibhjr5m7z8xc"; + meta.description = "Part of Jane Street's Core library"; + propagatedBuildInputs = [ base ]; + }; + + ppx_variants_conv = janePackage { + pname = "ppx_variants_conv"; + hash = "1ssinizz11bws06qzjky486cj1zrflij1f7hi16d02j40qmyjz7b"; + meta.description = "Generation of accessor and iteration functions for ocaml variant types"; + propagatedBuildInputs = [ variantslib ppxlib ]; + }; + + ppx_expect = janePackage { + pname = "ppx_expect"; + hash = "1hhcga960wjvhcx5pk7rcywl1p9n2ycvqa294n24m8dhzqia6i47"; + meta.description = "Cram like framework for OCaml"; + propagatedBuildInputs = [ ppx_assert ppx_custom_printf ppx_fields_conv ppx_inline_test ppx_variants_conv re ]; + }; + + ppx_enumerate = janePackage { + pname = "ppx_enumerate"; + hash = "0hsg6f2nra1mb35jdgym5rf7spm642bs6qqifbikm9hg8f7z3ql4"; + meta.description = "Generate a list containing all values of a finite type"; + propagatedBuildInputs = [ ppxlib ]; + }; + + ppx_hash = janePackage { + pname = "ppx_hash"; + hash = "1f7mfyx4wgk67hchi57w3142m61ka3vgy1969cbkwr3akv6ifly2"; + meta.description = "A ppx rewriter that generates hash functions from type expressions and definitions"; + propagatedBuildInputs = [ ppx_compare ppx_sexp_conv ]; + }; + + ppx_js_style = janePackage { + pname = "ppx_js_style"; + hash = "1zlhcn0an5k9xjymk5z5m2vqi8zajy6nvcbl5sdn19pjl3zv645x"; + meta.description = "Code style checker for Jane Street Packages"; + propagatedBuildInputs = [ octavius ppxlib ]; + }; + + ppx_base = janePackage { + pname = "ppx_base"; + hash = "0dkqc85x7bgbb6lgx9rghvj1q4dpdgy9qgjl88ywi4c8l9rgnnkz"; + meta.description = "Base set of ppx rewriters"; + propagatedBuildInputs = [ ppx_cold ppx_enumerate ppx_hash ppx_js_style ]; + }; + + ppx_bench = janePackage { + pname = "ppx_bench"; + hash = "0snmy05d3jgihmppixx3dzamkykijqa2v43vpd7q4z8dpnip620g"; + meta.description = "Syntax extension for writing in-line benchmarks in ocaml code"; + propagatedBuildInputs = [ ppx_inline_test ]; + }; + + ppx_sexp_message = janePackage { + pname = "ppx_sexp_message"; + hash = "03jhx3ajcv22iwxkg1jf1jjvd14gyrwi1yc6c5ryqi5ha0fywfw6"; + meta.description = "A ppx rewriter for easy construction of s-expressions"; + propagatedBuildInputs = [ ppx_here ppx_sexp_conv ]; + }; + + splittable_random = janePackage { + pname = "splittable_random"; + hash = "1kgcd6k31vsd7638g8ip77bp1b7vzgkbvgvij4jm2igl09132r85"; + meta.description = "PRNG that can be split into independent streams"; + propagatedBuildInputs = [ base ppx_assert ppx_bench ppx_sexp_message ]; + }; + + ppx_let = janePackage { + pname = "ppx_let"; + hash = "0qplsvbv10h7kwf6dhhgvi001gfphv1v66s83zjr5zbypyaarg5y"; + meta.description = "Monadic let-bindings"; + propagatedBuildInputs = [ ppxlib ]; + }; + + base_quickcheck = janePackage { + pname = "base_quickcheck"; + hash = "0ik8llm01m2xap4gia0vpsh7yq311hph7a2kf5109ag4988s8p0w"; + meta.description = "Randomized testing framework, designed for compatibility with Base"; + propagatedBuildInputs = [ ppx_base ppx_fields_conv ppx_let splittable_random ]; + }; + + ppx_stable = janePackage { + pname = "ppx_stable"; + hash = "0h7ls1bs0bsd8c4na4aj0nawwhvfy50ybm7sza7yz3qli9jammjk"; + meta.description = "Stable types conversions generator"; + propagatedBuildInputs = [ ppxlib ]; + }; + + bin_prot = janePackage { + pname = "bin_prot"; + hash = "1nnr21rljlfglmhiji27d7c1d6gg5fk4cc5rl3750m98w28mfdjw"; + meta.description = "A binary protocol generator"; + propagatedBuildInputs = [ ppx_compare ppx_custom_printf ppx_fields_conv ppx_variants_conv ]; + }; + + ppx_bin_prot = janePackage { + pname = "ppx_bin_prot"; + hash = "14nfjgqisdqqg8wg4qzvc859zil82y0qpr8fm4nhq05mgxp37iyc"; + meta.description = "Generation of bin_prot readers and writers from types"; + propagatedBuildInputs = [ bin_prot ppx_here ]; + }; + + ppx_fail = janePackage { + pname = "ppx_fail"; + hash = "165mikjg4a1lahq3n9q9y2h36jbln5g3l2hapx17irvf0l0c3vn5"; + meta.description = "Add location to calls to failwiths"; + propagatedBuildInputs = [ ppx_here ]; + }; + + jst-config = janePackage { + pname = "jst-config"; + hash = "15lj6f83hz555xhjy9aayl3adqwgl1blcjnja693a1ybi3ca8w0y"; + meta.description = "Compile-time configuration for Jane Street libraries"; + buildInputs = [ ppx_assert ]; + }; + + ppx_optcomp = janePackage { + pname = "ppx_optcomp"; + hash = "13db395swqf7v87pgl9qiyj4igmvj57hpl8blx3kkrzj6ddh38a8"; + meta.description = "Optional compilation for OCaml"; + propagatedBuildInputs = [ ppxlib ]; + }; + + jane-street-headers = janePackage { + pname = "jane-street-headers"; + hash = "1qjg2ari0xn40dlbk0h9xkwr37k97ldkxpkv792fbl6wc2jlv3x5"; + meta.description = "Jane Street C header files"; + }; + + time_now = janePackage { + pname = "time_now"; + hash = "1if234kz1ssmv22c0vh1cwhbivab6yy3xvy37ny1q4k5ibjc3v0n"; + meta.description = "Reports the current time"; + buildInputs = [ jst-config ppx_optcomp ]; + propagatedBuildInputs = [ jane-street-headers base ppx_base ]; + }; + + ppx_module_timer = janePackage { + pname = "ppx_module_timer"; + hash = "13kv5fzwf41wsaksj41hnvcpx8pnbmzcainlq6f5shj9671hpnhb"; + meta.description = "Ppx rewriter that records top-level module startup times"; + propagatedBuildInputs = [ time_now ]; + }; + + ppx_optional = janePackage { + pname = "ppx_optional"; + hash = "1nwb9jvmszxddj9wxgv9g02qhr10yymm2q1w1gjfqd97m2m1mx4n"; + meta.description = "Pattern matching on flat options"; + propagatedBuildInputs = [ ppxlib ]; + }; + + ppx_pipebang = janePackage { + pname = "ppx_pipebang"; + hash = "0ybj0flsi95pf13ayzz1lcrqhqvkv1lm2dz6y8w49f12583496mc"; + meta.description = "A ppx rewriter that inlines reverse application operators `|>` and `|!`"; + propagatedBuildInputs = [ ppxlib ]; + }; + + ppx_sexp_value = janePackage { + pname = "ppx_sexp_value"; + hash = "18k5015awv9yjl44cvdmp3pn894cgsxmn5s7picxapm9675xqcg9"; + meta.description = "A ppx rewriter that simplifies building s-expressions from ocaml values"; + propagatedBuildInputs = [ ppx_here ppx_sexp_conv ]; + }; + + typerep = janePackage { + pname = "typerep"; + hash = "116hlifww2cqq1i9vwpl7ziwkc1na7p9icqi9srpdxnvn8ibcsas"; + meta.description = "Typerep is a library for runtime types"; + propagatedBuildInputs = [ base ]; + }; + + ppx_typerep_conv = janePackage { + pname = "ppx_typerep_conv"; + hash = "1jlmga9i79inr412l19n4vvmgafzp1bznqxwhy42x309wblbhxx9"; + meta.description = "Generation of runtime types from type declarations"; + propagatedBuildInputs = [ ppxlib typerep ]; + }; + + ppx_jane = janePackage { + pname = "ppx_jane"; + hash = "1a86rvnry8lvjhsg2k73f5bgz7l2962k5i49yzmzn8w66kj0yz60"; + meta.description = "Standard Jane Street ppx rewriters"; + propagatedBuildInputs = [ base_quickcheck ppx_bench ppx_bin_prot ppx_expect ppx_fail ppx_module_timer ppx_optcomp ppx_optional ppx_pipebang ppx_sexp_value ppx_stable ppx_typerep_conv ]; + }; + + base_bigstring = janePackage { + pname = "base_bigstring"; + hash = "1i3zr8bn71l442vl5rrvjpwphx20frp2vaw1qc05d348j76sxfp7"; + meta.description = "String type based on [Bigarray], for use in I/O and C-bindings"; + propagatedBuildInputs = [ ppx_jane ]; + }; + + parsexp = janePackage { + pname = "parsexp"; + hash = "0fsxy5lpsvfadj8m2337j8iprs294dfikqxjcas7si74nskx6l38"; + meta.description = "S-expression parsing library"; + propagatedBuildInputs = [ base sexplib0 ]; + }; + + sexplib = janePackage { + pname = "sexplib"; + hash = "059ypcyirw00x6dqa33x49930pwxcr3i72qz5pf220js2ai2nzhn"; + meta.description = "Library for serializing OCaml values to and from S-expressions"; + propagatedBuildInputs = [ num parsexp ]; + }; + + core_kernel = janePackage { + version = "0.13.1"; + pname = "core_kernel"; + hash = "1ynyz6jkf23q0cwbn6kv06mgyjd644qxb0qkrydq0cglcaa4kjhp"; + meta.description = "System-independent part of Core"; + buildInputs = [ jst-config ]; + propagatedBuildInputs = [ base_bigstring sexplib ]; + }; + + spawn = janePackage { + pname = "spawn"; + hash = "1w003k1kw1lmyiqlk58gkxx8rac7dchiqlz6ah7aj7bh49b36ppf"; + meta.description = "Spawning sub-processes"; + buildInputs = [ ppx_expect ]; + }; + + core = janePackage { + pname = "core"; + hash = "1i5z9myl6i7axd8dz4b71gdsz9la6k07ib9njr4bn12yn0y76b1m"; + meta.description = "System-independent part of Core"; + buildInputs = [ jst-config ]; + propagatedBuildInputs = [ core_kernel spawn ]; + }; + + async_kernel = janePackage { + pname = "async_kernel"; + hash = "1rrbyy3pyh31qwv0jiarhpgdyq2z2gx6axmaplgpxshk4qx6gsld"; + meta.description = "Monadic concurrency library"; + propagatedBuildInputs = [ core_kernel ]; + }; + + protocol_version_header = janePackage { + pname = "protocol_version_header"; + hash = "19wscd81jlj355f9din1sg21m3af456a0id2a37bx38r390wrghc"; + meta.description = "Protocol versioning"; + propagatedBuildInputs = [ core_kernel ]; + }; + + async_rpc_kernel = janePackage { + pname = "async_rpc_kernel"; + hash = "1k3f2psyd1xcf7nkk0q1fq57yyhfqbzyynsz821n7mrnm37simac"; + meta.description = "Platform-independent core of Async RPC library"; + propagatedBuildInputs = [ async_kernel protocol_version_header ]; + }; + + async_unix = janePackage { + pname = "async_unix"; + hash = "0n3jz3qjlphyhkqgnbjbwf2fqxaksws82dx1mk4m4wnw3275gdi5"; + meta.description = "Monadic concurrency library"; + propagatedBuildInputs = [ async_kernel core ]; + }; + + async_extra = janePackage { + pname = "async_extra"; + hash = "06q1farx7dwi4h490xi1azq7ym57ih2d23sq17g2jfvw889kf4n1"; + meta.description = "Monadic concurrency library"; + propagatedBuildInputs = [ async_rpc_kernel async_unix ]; + }; + + textutils = janePackage { + pname = "textutils"; + hash = "1wnyqj9dzfgl0kddmdl4n9rkl16hwy432dd2i4ksvk2z5g9kkb0d"; + meta.description = "Text output utilities"; + propagatedBuildInputs = [ core ]; + }; + + async = janePackage { + pname = "async"; + hash = "002j9yxpw0ghi12a84163vaqa3n9h8j35f4i72nbxnilxwvy95sr"; + meta.description = "Monadic concurrency library"; + propagatedBuildInputs = [ async_rpc_kernel async_unix textutils ]; + }; + + async_find = janePackage { + pname = "async_find"; + hash = "0l8cfhyrx2rb2avdcfx5m70aj6rx2d57qxqvfycad5afqz4xx2n9"; + meta.description = "Directory traversal with Async"; + propagatedBuildInputs = [ async ]; + }; + + re2 = janePackage { + pname = "re2"; + hash = "0hmizznlzilynn5kh6149bbpkfw2l0xi7zi1y1fxfww2ma3wpim0"; + meta.description = "OCaml bindings for RE2, Google's regular expression library"; + propagatedBuildInputs = [ core_kernel ]; + prePatch = '' + substituteInPlace src/re2_c/dune --replace 'CXX=g++' 'CXX=c++' + substituteInPlace src/dune --replace '(cxx_flags (:standard \ -pedantic) (-I re2_c/libre2))' '(cxx_flags (:standard \ -pedantic) (-I re2_c/libre2) (-x c++))' + ''; + }; + + shell = janePackage { + pname = "shell"; + hash = "190ymhm0z9b7hngbcpg88wwrfxwfcdh339d7rd2xhmrhi4z99r18"; + meta.description = "Yet another implementation of fork&exec and related functionality"; + buildInputs = [ jst-config ]; + propagatedBuildInputs = [ re2 textutils ]; + }; + + async_shell = janePackage { + pname = "async_shell"; + hash = "0bfxyvdmyv23zfr49pb4c3bgfkjr4s3nb3z07xrw6szia3j1kp4j"; + meta.description = "Shell helpers for Async"; + propagatedBuildInputs = [ async shell ]; + }; + + core_bench = janePackage { + pname = "core_bench"; + hash = "1nk0i3z8rqrljbf4bc7ljp71g0a4361nh85s2ang0lgxri74zacm"; + meta.description = "Benchmarking library"; + propagatedBuildInputs = [ textutils ]; + }; + + core_extended = janePackage { + pname = "core_extended"; + hash = "0zh1wwkg5cxkz633dl9zbbl65aksvzb5mss1q8f7w6i1sv3n0135"; + meta.description = "Extra components that are not as closely vetted or as stable as Core"; + propagatedBuildInputs = [ core ]; + }; + + sexp_pretty = janePackage { + pname = "sexp_pretty"; + hash = "1a59xc9frmvi7n0i32dzs8gpf5ral80xkwv97a13zv5cyg8l6216"; + meta.description = "S-expression pretty-printer"; + propagatedBuildInputs = [ ppx_base re sexplib ]; + }; + + expect_test_helpers_kernel = janePackage { + pname = "expect_test_helpers_kernel"; + hash = "11m0i7mj6b1cmqnwhmsrqdc814s0lk3sip8rh97k75grngazmjvn"; + meta.description = "Helpers for writing expectation tests"; + buildInputs = [ ppx_jane ]; + propagatedBuildInputs = [ core_kernel sexp_pretty ]; + }; + + expect_test_helpers = janePackage { + pname = "expect_test_helpers"; + hash = "0sw9yam8d9hdam8p194q0hgc4i26vvwj5qi2cba1jxfhdzhy8jdd"; + meta.description = "Async helpers for writing expectation tests"; + propagatedBuildInputs = [ async expect_test_helpers_kernel ]; + }; + + patience_diff = janePackage { + pname = "patience_diff"; + hash = "012rlbnw21yq2lsbfk3f7l4m4qq3jdx238146z36v54vnhhs6r2r"; + meta.description = "Diff library using Bram Cohen's patience diff algorithm"; + propagatedBuildInputs = [ core_kernel ]; + }; + + ecaml = janePackage { + pname = "ecaml"; + hash = "0jmmsi1m7d4cl5mnw6v9h4ng29anwxy73a6qfi28lgpzafn452bc"; + meta.description = "Library for writing Emacs plugin in OCaml"; + propagatedBuildInputs = [ async expect_test_helpers_kernel ]; + }; + + ### Packages at version 0.11, with dependencies at version 0.12 + + configurator = janePackage { + pname = "configurator"; + version = "0.11.0"; + hash = "0h686630cscav7pil8c3w0gbh6rj4b41dvbnwmicmlkc746q5bfk"; + propagatedBuildInputs = [ stdio ]; + meta.description = "Helper library for gathering system configuration"; + }; + + ppx_core = janePackage { + pname = "ppx_core"; + version = "0.11.0"; + hash = "11hgm9mxig4cm3c827f6dns9mjv3pf8g6skf10x0gw9xnp1dmzmx"; + propagatedBuildInputs = [ ppxlib ]; + meta.description = "Deprecated (see ppxlib)"; + }; + + ppx_driver = janePackage { + pname = "ppx_driver"; + version = "0.11.0"; + hash = "00kfx6js2kxk57k4v7hiqvwk7h35whgjihnxf75m82rnaf4yzvfi"; + propagatedBuildInputs = [ ppxlib ]; + meta.description = "Deprecated (see ppxlib)"; + }; + + ppx_type_conv = janePackage { + pname = "ppx_type_conv"; + version = "0.11.0"; + hash = "04dbrglqqhkas25cpjz8xhjcbpk141c35qggzw66bn69izczfmaf"; + propagatedBuildInputs = [ ppxlib ]; + meta.description = "Deprecated (see ppxlib)"; + }; + +} diff --git a/pkgs/development/ocaml-modules/janestreet/janePackage_0_13.nix b/pkgs/development/ocaml-modules/janestreet/janePackage_0_13.nix new file mode 100644 index 000000000000..b92bcead95c3 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/janePackage_0_13.nix @@ -0,0 +1,19 @@ +{ lib, fetchFromGitHub, buildDunePackage, defaultVersion ? "0.13.0" }: + +{ pname, version ? defaultVersion, hash, ...}@args: + +buildDunePackage (args // { + inherit version; + + minimumOCamlVersion = "4.08"; + + src = fetchFromGitHub { + owner = "janestreet"; + repo = pname; + rev = "v${version}"; + sha256 = hash; + }; + + meta.license = lib.licenses.mit; + meta.homepage = "https://github.com/janestreet/${pname}"; +}) diff --git a/pkgs/development/ocaml-modules/phylogenetics/default.nix b/pkgs/development/ocaml-modules/phylogenetics/default.nix index 916be9b3d386..1873a4e0c583 100644 --- a/pkgs/development/ocaml-modules/phylogenetics/default.nix +++ b/pkgs/development/ocaml-modules/phylogenetics/default.nix @@ -3,15 +3,15 @@ buildDunePackage rec { pname = "phylogenetics"; - version = "unstable-2020-01-05"; + version = "unstable-2020-01-25"; useDune2 = true; src = fetchFromGitHub { owner = "biocaml"; repo = pname; - rev = "b55ef7d7322bd822be26d21339945d45487fb547"; - sha256 = "0hzfjhs5w3a7hlzxs739k5ik3k1xn3dzyzziid765s74f638n4hj"; + rev = "752a7d0324709ba919ef43630a270afd45d6b734"; + sha256 = "1zsxpl1yjbw6y6n1q7qk3h0l7c0lxhh8yp8bkxlwnpzlkqq28ycg"; }; minimumOCamlVersion = "4.08"; # e.g., uses Float.min diff --git a/pkgs/tools/misc/patdiff/default.nix b/pkgs/tools/misc/patdiff/default.nix index 1c5e5b044741..e0b54e56081d 100644 --- a/pkgs/tools/misc/patdiff/default.nix +++ b/pkgs/tools/misc/patdiff/default.nix @@ -4,7 +4,7 @@ with ocamlPackages; janePackage { pname = "patdiff"; - hash = "04krzn6rj2r81z55pms5ayk6bxhlxrm006cbhy0m6rc69a0h00lh"; + hash = "1yqvxdmkgcwgx3npgncpdqwkpdxiqr1q41wci7589s8z7xi5nwyz"; buildInputs = [ core_extended expect_test_helpers patience_diff ocaml_pcre shell ]; meta = { description = "File Diff using the Patience Diff algorithm"; diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 160adc015f87..b5d8abade090 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -980,12 +980,20 @@ let # Jane Street janePackage = - if lib.versionOlder "4.07" ocaml.version + if lib.versionOlder "4.08" ocaml.version + then callPackage ../development/ocaml-modules/janestreet/janePackage_0_13.nix {} + else if lib.versionOlder "4.07" ocaml.version then callPackage ../development/ocaml-modules/janestreet/janePackage_0_12.nix {} else callPackage ../development/ocaml-modules/janestreet/janePackage.nix {}; janeStreet = - if lib.versionOlder "4.07" ocaml.version + if lib.versionOlder "4.08" ocaml.version + then import ../development/ocaml-modules/janestreet/0.13.nix { + inherit ctypes janePackage num octavius re; + inherit (pkgs) openssl; + ppxlib = ppxlib.override { version = "0.12.0"; }; + } + else if lib.versionOlder "4.07" ocaml.version then import ../development/ocaml-modules/janestreet/0.12.nix { inherit ctypes janePackage num octavius ppxlib re; inherit (pkgs) openssl; From f52443efaef6b32500e75d9a275152a3797fb0eb Mon Sep 17 00:00:00 2001 From: Pierre Bourdon Date: Mon, 20 Apr 2020 04:23:29 +0200 Subject: [PATCH 187/219] pythonPackages.pyopengl: avoid dragging in 500M of -dev packages Only the actual shared libraries are required to be installed, and they are imported directly by path via ctypes. The package's patchPhase already takes care of embedding the Nix store paths of the required libraries into pyopengl. This reduces the transitive closure size of PyOpenGL: 622M -> 136M. --- pkgs/development/python-modules/pyopengl/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/pyopengl/default.nix b/pkgs/development/python-modules/pyopengl/default.nix index fddc27ee1913..2a3b90733c46 100644 --- a/pkgs/development/python-modules/pyopengl/default.nix +++ b/pkgs/development/python-modules/pyopengl/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { sha256 = "0bdf5ed600df30c8830455702338902528717c0af85ac5914f1dc5aa0bfa6eee"; }; - propagatedBuildInputs = [ pkgs.libGLU pkgs.libGL pkgs.freeglut pillow ]; + propagatedBuildInputs = [ pillow ]; patchPhase = let ext = stdenv.hostPlatform.extensions.sharedLibrary; in '' From b3c3a0bd1835a3907bf23f5f7bd7c9d18ef163ec Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Fri, 17 Apr 2020 15:59:00 -0500 Subject: [PATCH 188/219] dune_2: 2.5.0 -> 2.5.1 Changelog: https://github.com/ocaml/dune/releases/tag/2.5.1 --- pkgs/development/tools/ocaml/dune/2.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/ocaml/dune/2.nix b/pkgs/development/tools/ocaml/dune/2.nix index 510dd183f00d..37f277686702 100644 --- a/pkgs/development/tools/ocaml/dune/2.nix +++ b/pkgs/development/tools/ocaml/dune/2.nix @@ -6,11 +6,11 @@ else stdenv.mkDerivation rec { pname = "dune"; - version = "2.5.0"; + version = "2.5.1"; src = fetchurl { url = "https://github.com/ocaml/dune/releases/download/${version}/dune-${version}.tbz"; - sha256 = "1nnpg0fvmp4vf5mk203xk83pkkm953pgip3yhs1x2g8pkcdndhcw"; + sha256 = "0az5ih18wadsp3ljagvws1i7vf0vpg24h75ariy0v3i0gyld6xwg"; }; buildInputs = [ ocaml findlib ]; From f32e75c728451d89cf67d2f692af9472456517d2 Mon Sep 17 00:00:00 2001 From: robert seaton Date: Mon, 20 Apr 2020 02:24:23 -0500 Subject: [PATCH 189/219] statserial: init at 1.1 (#75073) --- pkgs/tools/misc/statserial/default.nix | 44 ++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 46 insertions(+) create mode 100644 pkgs/tools/misc/statserial/default.nix diff --git a/pkgs/tools/misc/statserial/default.nix b/pkgs/tools/misc/statserial/default.nix new file mode 100644 index 000000000000..66ae899b9c5a --- /dev/null +++ b/pkgs/tools/misc/statserial/default.nix @@ -0,0 +1,44 @@ +{ stdenv, fetchurl, ncurses, glibc }: + +stdenv.mkDerivation rec { + pname = "statserial"; + version = "1.1"; + + src = fetchurl { + url = "http://www.ibiblio.org/pub/Linux/system/serial/${pname}-${version}.tar.gz"; + sha256 = "0rrrmxfba5yn836zlgmr8g9xnrpash7cjs7lk2m44ac50vakpks0"; + }; + + postPatch = '' + substituteInPlace Makefile \ + --replace '-lcurses' '-lncurses' + + substituteInPlace Makefile \ + --replace 'LDFLAGS = -s -N' '#LDFLAGS = -s -N' + ''; + + buildInputs = [ ncurses glibc stdenv ]; + + installPhase = '' + mkdir -p $out/bin + cp statserial $out/bin + + mkdir -p $out/share/man/man1 + cp statserial.1 $out/share/man/man1 + ''; + + meta = with stdenv.lib; { + homepage = "https://sites.google.com/site/tranter/software"; + description = "Display serial port modem status lines."; + license = licenses.gpl2; + + longDescription = + '' Statserial displays a table of the signals on a standard 9-pin or + 25-pin serial port, and indicates the status of the handshaking lines. It + can be useful for debugging problems with serial ports or modems. + ''; + + platforms = platforms.unix; + maintainers = with maintainers; [ rps ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ffff1363a50e..8b70d77e16c5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2143,6 +2143,8 @@ in stagit = callPackage ../development/tools/stagit { }; + statserial = callPackage ../tools/misc/statserial { }; + step-ca = callPackage ../tools/security/step-ca { }; step-cli = callPackage ../tools/security/step-cli { }; From 4ab8a6e622b7d50f284d7bd0fa96e165c1874c4b Mon Sep 17 00:00:00 2001 From: oxalica Date: Mon, 20 Apr 2020 16:56:02 +0800 Subject: [PATCH 190/219] birdtray: 1.7.0 -> 1.8.0 --- pkgs/applications/misc/birdtray/default.nix | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/misc/birdtray/default.nix b/pkgs/applications/misc/birdtray/default.nix index 29522f75c257..00707fc7ec58 100644 --- a/pkgs/applications/misc/birdtray/default.nix +++ b/pkgs/applications/misc/birdtray/default.nix @@ -7,29 +7,24 @@ , qtbase , qttools , qtx11extras - , sqlite }: mkDerivation rec { pname = "birdtray"; - version = "1.7.0"; + version = "1.8.0"; src = fetchFromGitHub { owner = "gyunaev"; repo = pname; - rev = "RELEASE_${version}"; - sha256 = "0wj2lq5bz1p0cf6yj43v3ifxschcrh5amwx30wqw2m4bb8syzjw1"; + rev = version; + sha256 = "15d0gz889vf9b2a046m93s5kdi6lw2sqjd5gaxgjkjrs20x5vr18"; }; nativeBuildInputs = [ cmake pkgconfig ]; buildInputs = [ - qtbase qtx11extras sqlite + qtbase qttools qtx11extras ]; - installPhase = '' - install -Dm755 birdtray $out/bin/birdtray - ''; - meta = with lib; { description = "Mail system tray notification icon for Thunderbird"; homepage = "https://github.com/gyunaev/birdtray"; From ed79cb56b708b75ee9215ea1e1bc531795e1c004 Mon Sep 17 00:00:00 2001 From: Bart Brouns Date: Mon, 20 Apr 2020 10:57:40 +0200 Subject: [PATCH 191/219] mu: 1.2 -> 1.4.1 msg2pdf is disabled for now: https://github.com/djcb/mu/blob/1.4.1/NEWS.org --- pkgs/tools/networking/mu/default.nix | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/pkgs/tools/networking/mu/default.nix b/pkgs/tools/networking/mu/default.nix index 2e6a401350cd..ae1ca3f77611 100644 --- a/pkgs/tools/networking/mu/default.nix +++ b/pkgs/tools/networking/mu/default.nix @@ -5,20 +5,15 @@ stdenv.mkDerivation rec { pname = "mu"; - version = "1.2"; + version = "1.4.1"; src = fetchFromGitHub { owner = "djcb"; repo = "mu"; rev = version; - sha256 = "0yhjlj0z23jw3cf2wfnl98y8q6gikvmhkb8vdm87bd7jw0bdnrfz"; + sha256 = "0q2ik7fj5k9i76js4ijyxbgrwqff437lass0sd5if2r40rqh0as0"; }; - # test-utils coredumps so don't run those - postPatch = '' - sed -i -e '/test-utils/d' lib/parser/Makefile.am - ''; - buildInputs = [ sqlite xapian glib gmime3 texinfo emacs guile libsoup icu ] ++ stdenv.lib.optionals withMug [ gtk3 webkitgtk ]; @@ -27,19 +22,17 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; + preConfigure = "./autogen.sh"; + preBuild = '' # Fix mu4e-builddir (set it to $out) substituteInPlace mu4e/mu4e-meta.el.in \ --replace "@abs_top_builddir@" "$out" - - # We install msg2pdf to bin/msg2pdf, fix its location in elisp - substituteInPlace mu4e/mu4e-actions.el \ - --replace "/toys/msg2pdf/" "/bin/" ''; - # Install mug and msg2pdf + # Install mug postInstall = stdenv.lib.optionalString withMug '' - for f in msg2pdf mug ; do + for f in mug ; do install -m755 toys/$f/$f $out/bin/$f done ''; From 41582c7a023281b6024e55c8c2754b0ea848f4a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20M=C3=B6ller?= Date: Mon, 20 Apr 2020 11:40:00 +0200 Subject: [PATCH 192/219] plex-media-player: 2.40.0.1007 -> 2.55.0.1069 + update script (#68938) --- .../video/plex-media-player/default.nix | 41 +++-------- .../video/plex-media-player/deps.nix | 28 ++++++++ .../video/plex-media-player/update.sh | 71 +++++++++++++++++++ 3 files changed, 108 insertions(+), 32 deletions(-) create mode 100644 pkgs/applications/video/plex-media-player/deps.nix create mode 100755 pkgs/applications/video/plex-media-player/update.sh diff --git a/pkgs/applications/video/plex-media-player/default.nix b/pkgs/applications/video/plex-media-player/default.nix index 8b7aa3b551cc..d08a4a852428 100644 --- a/pkgs/applications/video/plex-media-player/default.nix +++ b/pkgs/applications/video/plex-media-player/default.nix @@ -5,45 +5,20 @@ let # During compilation, a CMake bundle is downloaded from `artifacts.plex.tv`, # which then downloads a handful of web client-related files. To enable # sandboxed builds, we manually download them and save them so these files - # are fetched ahead-of-time instead of during the CMake build. Whenever - # plex-media-player is updated, the versions for these files are changed, - # so the build IDs (and SHAs) below will need to be updated! - depSrcs = rec { - webClientBuildId = "141-4af71961b12c68"; - webClientDesktopBuildId = "3.104.2-1b12c68"; - webClientTvBuildId = "4.3.0-4af7196"; - - webClient = fetchurl { - url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/buildid.cmake"; - sha256 = "0fpkd1s49dbiqqlijxbillqd71a78p8y2sc23mwp0lvcmxrg265p"; - }; - webClientDesktopHash = fetchurl { - url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz.sha1"; - sha256 = "0sb0j44lwqz9zbm98nba4x6c1jxdzvs36ynwfg527avkxxna0f8f"; - }; - webClientDesktop = fetchurl { - url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz"; - sha256 = "0dxa0ka0igfsryzda4r5clwdl47ah78nmlmgj9d5pgsvyvzjp87z"; - }; - webClientTvHash = fetchurl { - url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz.sha1"; - sha256 = "086w1bavk2aqsyhv9zi5fynk31zf61sl91r6gjrdrz656wfk5bxa"; - }; - webClientTv = fetchurl { - url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz"; - sha256 = "12vbgsfnj0j2y5jd73dpi08hqsr9888sma41nvd4ydsd7qblm455"; - }; - }; + # are fetched ahead-of-time instead of during the CMake build. To update + # plex-media-player use the update.sh script, so the versions and hashes + # for these files are are also updated! + depSrcs = import ./deps.nix { inherit fetchurl; }; in mkDerivation rec { pname = "plex-media-player"; - version = "2.40.0.1007"; - vsnHash = "5482132c"; + version = "2.55.0.1069"; + vsnHash = "2369bed9"; src = fetchFromGitHub { owner = "plexinc"; repo = "plex-media-player"; rev = "v${version}-${vsnHash}"; - sha256 = "0ibdh5g8x32iy74q97jfsmxd08wnyrzs3gfiwjfgc10vaa1qdhli"; + sha256 = "1jq4592sgaia0xy2h7n3vh5i7c84sdh4l64fdc774r4i0bmg66qi"; }; nativeBuildInputs = [ pkgconfig cmake python3 ]; @@ -61,6 +36,8 @@ in mkDerivation rec { cmakeFlags = [ "-DCMAKE_BUILD_TYPE=RelWithDebInfo" "-DQTROOT=${qtbase}" ]; + passthru.updateScript = ./update.sh; + meta = with stdenv.lib; { description = "Streaming media player for Plex"; license = licenses.gpl2; diff --git a/pkgs/applications/video/plex-media-player/deps.nix b/pkgs/applications/video/plex-media-player/deps.nix new file mode 100644 index 000000000000..26b57532615a --- /dev/null +++ b/pkgs/applications/video/plex-media-player/deps.nix @@ -0,0 +1,28 @@ +{ fetchurl }: + +rec { + webClientBuildId = "180-afec74de50e175"; + webClientDesktopBuildId = "4.29.2-e50e175"; + webClientTvBuildId = "4.29.3-afec74d"; + + webClient = fetchurl { + url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/buildid.cmake"; + sha256 = "0rabrg3lk9vgpswk8npa54hzqf2v8ghqqnysxpwn12wrp1pc2rr9"; + }; + webClientDesktopHash = fetchurl { + url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz.sha1"; + sha256 = "02b5yq4yc411qlg2dkw5j9lrr3cn2y4d27sin0skf6qza180473g"; + }; + webClientDesktop = fetchurl { + url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz"; + sha256 = "0l3xv48kr2rx878a40zrgwif2ga2ikv6fdcbq9pylycnmm41pxmh"; + }; + webClientTvHash = fetchurl { + url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz.sha1"; + sha256 = "0wq115y2xrgwqrzr43nhkq8ba237z20yfp426ki2kdypsq8fjqka"; + }; + webClientTv = fetchurl { + url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz"; + sha256 = "1wax1qslm226l2w53m2fnl849jw349qhg3rjghx7vip5pmb43vw9"; + }; +} diff --git a/pkgs/applications/video/plex-media-player/update.sh b/pkgs/applications/video/plex-media-player/update.sh new file mode 100755 index 000000000000..a8493a16c989 --- /dev/null +++ b/pkgs/applications/video/plex-media-player/update.sh @@ -0,0 +1,71 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl common-updater-scripts nix-prefetch-scripts jq + +set -xeuo pipefail + +nixpkgs="$(git rev-parse --show-toplevel)" + +oldVersion="$(nix-instantiate --eval -E "with import $nixpkgs {}; plex-media-player.version or (builtins.parseDrvName plex-media-player.name).version" | tr -d '"')" +latestTag="$(curl -s https://api.github.com/repos/plexinc/plex-media-player/tags | jq -r '.[] | .name' | sort --version-sort | tail -1)" +latestVersion="$(expr $latestTag : 'v\(.*\)-.*')" +latestHash="$(expr $latestTag : 'v.*-\(.*\)')" + +if [ ! "$oldVersion" = "$latestVersion" ]; then + # update default.nix with the new version and hash + expectedHash=$(nix-prefetch-git --url https://github.com/plexinc/plex-media-player.git --rev $latestTag --quiet | jq -r '.sha256') + update-source-version plex-media-player --version-key=vsnHash "${latestHash}" 0000 + update-source-version plex-media-player "${latestVersion}" $expectedHash + + # extract the webClientBuildId from the source folder + src="$(nix-build --no-out-link $nixpkgs -A plex-media-player.src)" + webClientBuildId="$(grep 'set(WEB_CLIENT_BUILD_ID' $src/CMakeModules/WebClient.cmake | cut -d' ' -f2 | tr -d ')')" + + # retreive the included cmake file and hash + { read -r webClientBuildIdHash; read -r webClientBuildIdPath; } < \ + <(nix-prefetch-url --print-path "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/buildid.cmake") + webClientDesktopBuildId="$(grep 'set(DESKTOP_VERSION' $webClientBuildIdPath | cut -d' ' -f2 | tr -d ')')" + webClientTvBuildId="$(grep 'set(TV_VERSION' $webClientBuildIdPath | cut -d' ' -f2 | tr -d ')')" + + # get the hashes for the other files + webClientDesktopHash="$(nix-prefetch-url "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz.sha1")" + webClientDesktop="$(nix-prefetch-url "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz")" + webClientTvHash="$(nix-prefetch-url "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz.sha1")" + webClientTv="$(nix-prefetch-url "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz")" + + # update deps.nix + cat > $nixpkgs/pkgs/applications/video/plex-media-player/deps.nix < ${latestVersion}" +else + echo "plex-media-player is already up-to-date" +fi From b4a2ec0dc67e4af8b489aaacb5d04884bb3fe4fa Mon Sep 17 00:00:00 2001 From: xrelkd <46590321+xrelkd@users.noreply.github.com> Date: Wed, 15 Apr 2020 15:20:46 +0800 Subject: [PATCH 193/219] sn0int: init at 0.18.2 --- pkgs/tools/security/sn0int/default.nix | 32 ++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 34 insertions(+) create mode 100644 pkgs/tools/security/sn0int/default.nix diff --git a/pkgs/tools/security/sn0int/default.nix b/pkgs/tools/security/sn0int/default.nix new file mode 100644 index 000000000000..9e9cbe2bb3a5 --- /dev/null +++ b/pkgs/tools/security/sn0int/default.nix @@ -0,0 +1,32 @@ +{ lib, fetchFromGitHub, rustPlatform, + libsodium, libseccomp, sqlite, pkgconfig }: + +rustPlatform.buildRustPackage rec { + pname = "sn0int"; + version = "0.18.2"; + + src = fetchFromGitHub { + owner = "kpcyrd"; + repo = pname; + rev = "v${version}"; + sha256 = "0b21b0ryq03zrhqailg2iajirn30l358aj3k44lfnravr4h9zwkj"; + }; + + cargoSha256 = "1pvn0sc325b5fh29m2l6cack4qfssa4lp3zhyb1qzkb3fmw3lgcy"; + + nativeBuildInputs = [ pkgconfig ]; + + buildInputs = [ libsodium libseccomp sqlite ]; + + # One of the dependencies (chrootable-https) tries to read "/etc/resolv.conf" + # in "checkPhase", hence fails in sandbox of "nix". + doCheck = false; + + meta = with lib; { + description = "Semi-automatic OSINT framework and package manager"; + homepage = "https://github.com/kpcyrd/sn0int"; + license = licenses.gpl3; + maintainers = with maintainers; [ xrelkd ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 26037d86c634..62967cdb9464 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6625,6 +6625,8 @@ in smugline = python3Packages.smugline; + sn0int = callPackage ../tools/security/sn0int { }; + snabb = callPackage ../tools/networking/snabb { } ; snapcast = callPackage ../applications/audio/snapcast { }; From 3a7dca9950e62aab97c3d9a56dbf1ac3eee7522c Mon Sep 17 00:00:00 2001 From: Sirio Balmelli Date: Mon, 20 Apr 2020 15:27:28 +0200 Subject: [PATCH 194/219] mscgen: clean up build 1. Remove freetype dependency: - was not being used by build - trying to enable freetype gives nontrivial error 'gdoTextWidth: Problem doing text layout (GDFONTPATH=)' 2. Correctly link manpages by specifying 'outputs'. 3. Separate nativeBuildInputs from buildInputs Signed-off-by: Sirio Balmelli --- pkgs/tools/graphics/mscgen/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/graphics/mscgen/default.nix b/pkgs/tools/graphics/mscgen/default.nix index a8aa9cffb983..f6bec5983c2a 100644 --- a/pkgs/tools/graphics/mscgen/default.nix +++ b/pkgs/tools/graphics/mscgen/default.nix @@ -2,7 +2,6 @@ , bison , fetchurl , flex -, freetype , gd , libjpeg , libpng @@ -24,13 +23,16 @@ stdenv.mkDerivation { sha256 = "3c3481ae0599e1c2d30b7ed54ab45249127533ab2f20e768a0ae58d8551ddc23"; }; - buildInputs = [ bison flex freetype gd libjpeg libpng libwebp pkg-config zlib ]; + nativeBuildInputs = [ bison flex pkg-config ]; + buildInputs = [ gd libjpeg libpng libwebp zlib ]; doCheck = true; preCheck = '' sed -i -e "s|#!/bin/bash|#!${runtimeShell}|" test/renderercheck.sh ''; + outputs = [ "out" "man" ]; + meta = { homepage = "http://www.mcternan.me.uk/mscgen/"; description = "Convert Message Sequence Chart descriptions into PNG, SVG, or EPS images"; From 4307923b86cb7764a3a6709cebcfdf934e85d5ba Mon Sep 17 00:00:00 2001 From: kraem Date: Mon, 20 Apr 2020 00:23:41 +0200 Subject: [PATCH 195/219] linux: 5.6.4 -> 5.6.5 --- pkgs/os-specific/linux/kernel/linux-5.6.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-5.6.nix b/pkgs/os-specific/linux/kernel/linux-5.6.nix index 950c60ac2681..d3334293dc19 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.6.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.6.nix @@ -3,7 +3,7 @@ with stdenv.lib; buildLinux (args // rec { - version = "5.6.4"; + version = "5.6.5"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "14cxbc9xi4s3xwx4yb1yd4z0kidsk3d443skf5sgmdhcalg79wax"; + sha256 = "1rjjkcmzsj9azggh960qnk2x44ns475b8nbd4nxazrz1rgdx76zp"; }; } // (args.argsOverride or {})) From 8879086cfc78e192f4ca5f3f212dfda264c5381a Mon Sep 17 00:00:00 2001 From: kraem Date: Mon, 20 Apr 2020 01:01:11 +0200 Subject: [PATCH 196/219] linux: 5.5.17 -> 5.5.18 --- pkgs/os-specific/linux/kernel/linux-5.5.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-5.5.nix b/pkgs/os-specific/linux/kernel/linux-5.5.nix index c4fbe1aea5e9..ecb92b5bfe7d 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.5.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.5.nix @@ -3,7 +3,7 @@ with stdenv.lib; buildLinux (args // rec { - version = "5.5.17"; + version = "5.5.18"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "06aqhlysa7zdj6c69hyii3hfqlfa9751ivga38rbqw1lr2gbbnj0"; + sha256 = "01iiiq4dsyyc5y6b52wax9as6dzhdi172vd1423sc1yp4rrk8178"; }; } // (args.argsOverride or {})) From eb41f8122e394d77993524f1fa485d1b09cbefaa Mon Sep 17 00:00:00 2001 From: kraem Date: Mon, 20 Apr 2020 01:01:32 +0200 Subject: [PATCH 197/219] linux/hardened-patches/5.6.4: remove --- pkgs/os-specific/linux/kernel/hardened-patches.json | 5 ----- 1 file changed, 5 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-patches.json b/pkgs/os-specific/linux/kernel/hardened-patches.json index 24c44dd1ed1f..f334e75d0705 100644 --- a/pkgs/os-specific/linux/kernel/hardened-patches.json +++ b/pkgs/os-specific/linux/kernel/hardened-patches.json @@ -18,10 +18,5 @@ "sha256": "1lms090kkk4vlvfssqsm7r3j88hlf8smrnpcgq24v9rq9pbr0fyw", "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.5.17.a/linux-hardened-5.5.17.a.patch", "version_suffix": "a" - }, - "5.6.4": { - "sha256": "05wkzh7927n71x4cl69mclc44grqpnx6i65hli470q1rg1qrk26n", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.6.4.a/linux-hardened-5.6.4.a.patch", - "version_suffix": "a" } } From e7a65e6c411926700fad23c4f8ec2b087d9dc414 Mon Sep 17 00:00:00 2001 From: kraem Date: Mon, 20 Apr 2020 01:01:32 +0200 Subject: [PATCH 198/219] linux/hardened-patches/5.5.17: remove --- pkgs/os-specific/linux/kernel/hardened-patches.json | 5 ----- 1 file changed, 5 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-patches.json b/pkgs/os-specific/linux/kernel/hardened-patches.json index f334e75d0705..a0042ad7953a 100644 --- a/pkgs/os-specific/linux/kernel/hardened-patches.json +++ b/pkgs/os-specific/linux/kernel/hardened-patches.json @@ -13,10 +13,5 @@ "sha256": "154iz7i9l0hihjrmfk6rjh7hhqwyhsdjr2c74m3dhadrlm5hwy89", "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.32.a/linux-hardened-5.4.32.a.patch", "version_suffix": "NixOS-a" - }, - "5.5.17": { - "sha256": "1lms090kkk4vlvfssqsm7r3j88hlf8smrnpcgq24v9rq9pbr0fyw", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.5.17.a/linux-hardened-5.5.17.a.patch", - "version_suffix": "a" } } From 0fd9293703654eb271ad7baf7c4fa7b7043af8dd Mon Sep 17 00:00:00 2001 From: kraem Date: Mon, 20 Apr 2020 01:01:39 +0200 Subject: [PATCH 199/219] linux/hardened-patches/5.6.5: init at 5.6.5.a --- pkgs/os-specific/linux/kernel/hardened-patches.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/os-specific/linux/kernel/hardened-patches.json b/pkgs/os-specific/linux/kernel/hardened-patches.json index a0042ad7953a..45d95ba3ec41 100644 --- a/pkgs/os-specific/linux/kernel/hardened-patches.json +++ b/pkgs/os-specific/linux/kernel/hardened-patches.json @@ -13,5 +13,10 @@ "sha256": "154iz7i9l0hihjrmfk6rjh7hhqwyhsdjr2c74m3dhadrlm5hwy89", "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.32.a/linux-hardened-5.4.32.a.patch", "version_suffix": "NixOS-a" + }, + "5.6.5": { + "sha256": "19cdpygm5zx3szxl456lfjg5sffqcmn18470wv7prm8rf6liqdj3", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.6.5.a/linux-hardened-5.6.5.a.patch", + "version_suffix": "a" } } From 48d908b731c954bc6ad2c032dcd090d40b1d2121 Mon Sep 17 00:00:00 2001 From: kraem Date: Mon, 20 Apr 2020 01:01:45 +0200 Subject: [PATCH 200/219] linux/hardened-patches/5.5.18: init at 5.5.18.a --- pkgs/os-specific/linux/kernel/hardened-patches.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/os-specific/linux/kernel/hardened-patches.json b/pkgs/os-specific/linux/kernel/hardened-patches.json index 45d95ba3ec41..464e83c1dee8 100644 --- a/pkgs/os-specific/linux/kernel/hardened-patches.json +++ b/pkgs/os-specific/linux/kernel/hardened-patches.json @@ -14,6 +14,11 @@ "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.32.a/linux-hardened-5.4.32.a.patch", "version_suffix": "NixOS-a" }, + "5.5.18": { + "sha256": "0v7vla784sf1fk6d8qa5x8hkyhjb1jkw4lxxcgvvlqbmxl8md8ld", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.5.18.a/linux-hardened-5.5.18.a.patch", + "version_suffix": "a" + }, "5.6.5": { "sha256": "19cdpygm5zx3szxl456lfjg5sffqcmn18470wv7prm8rf6liqdj3", "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.6.5.a/linux-hardened-5.6.5.a.patch", From 45343beffee8238973060aff1f5472b915a0288b Mon Sep 17 00:00:00 2001 From: kraem Date: Mon, 20 Apr 2020 01:01:50 +0200 Subject: [PATCH 201/219] linux/hardened-patches/5.4.33: 5.4.33.NixOS-a -> 5.4.33.a --- pkgs/os-specific/linux/kernel/hardened-patches.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-patches.json b/pkgs/os-specific/linux/kernel/hardened-patches.json index 464e83c1dee8..896f574a5b2a 100644 --- a/pkgs/os-specific/linux/kernel/hardened-patches.json +++ b/pkgs/os-specific/linux/kernel/hardened-patches.json @@ -10,9 +10,9 @@ "version_suffix": "NixOS-a" }, "5.4.33": { - "sha256": "154iz7i9l0hihjrmfk6rjh7hhqwyhsdjr2c74m3dhadrlm5hwy89", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.32.a/linux-hardened-5.4.32.a.patch", - "version_suffix": "NixOS-a" + "sha256": "1hjfvhyvz5kyvx25809brhsvfv9mjv9q1mw6ydb71gfwhw6q8d8b", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.33.a/linux-hardened-5.4.33.a.patch", + "version_suffix": "a" }, "5.5.18": { "sha256": "0v7vla784sf1fk6d8qa5x8hkyhjb1jkw4lxxcgvvlqbmxl8md8ld", From 523fe988217eaa56952c2a87760fef612c857bee Mon Sep 17 00:00:00 2001 From: kraem Date: Mon, 20 Apr 2020 01:01:56 +0200 Subject: [PATCH 202/219] linux/hardened-patches/4.19.116: 4.19.116.NixOS-a -> 4.19.116.a --- pkgs/os-specific/linux/kernel/hardened-patches.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/hardened-patches.json b/pkgs/os-specific/linux/kernel/hardened-patches.json index 896f574a5b2a..97fbbb405e3e 100644 --- a/pkgs/os-specific/linux/kernel/hardened-patches.json +++ b/pkgs/os-specific/linux/kernel/hardened-patches.json @@ -5,9 +5,9 @@ "version_suffix": "a" }, "4.19.116": { - "sha256": "1f54g0xw708kxha07nsb979h5vwxjrkbwa5h04zny2kq702x1h13", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.115.a/linux-hardened-4.19.115.a.patch", - "version_suffix": "NixOS-a" + "sha256": "00y4i905gzs9w9kckrn1frh2vw32fsndz03g2psl1gk17snc3q7c", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.116.a/linux-hardened-4.19.116.a.patch", + "version_suffix": "a" }, "5.4.33": { "sha256": "1hjfvhyvz5kyvx25809brhsvfv9mjv9q1mw6ydb71gfwhw6q8d8b", From c45295d47e91fef3fdb13ee11fc24ebff8ad7288 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Mon, 20 Apr 2020 09:57:17 -0500 Subject: [PATCH 203/219] nixos/nixos-generate-config.pl: use modulesPath instead of MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit For imports, it is better to use ‘modulesPath’ than rely on being correctly set. Some users may not have set correctly. In addition, when ‘pure-eval=true’, is unset. --- nixos/modules/installer/tools/nixos-generate-config.pl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl index a32c19a4eba9..422c405054d5 100644 --- a/nixos/modules/installer/tools/nixos-generate-config.pl +++ b/nixos/modules/installer/tools/nixos-generate-config.pl @@ -180,7 +180,7 @@ sub pciCheck { ) ) { # we need e.g. brcmfmac43602-pcie.bin - push @imports, ""; + push @imports, "(modulesPath + \"/hardware/network/broadcom-43xx.nix\")"; } # Can't rely on $module here, since the module may not be loaded @@ -279,7 +279,7 @@ if ($virt eq "oracle") { # Likewise for QEMU. if ($virt eq "qemu" || $virt eq "kvm" || $virt eq "bochs") { - push @imports, ""; + push @imports, "(modulesPath + \"/profiles/qemu-guest.nix\")"; } # Also for Hyper-V. @@ -296,7 +296,7 @@ if ($virt eq "systemd-nspawn") { # Provide firmware for devices that are not detected by this script, # unless we're in a VM/container. -push @imports, "" +push @imports, "(modulesPath + \"/installer/scan/not-detected.nix\")" if $virt eq "none"; @@ -549,7 +549,7 @@ my $hwConfig = < Date: Mon, 20 Apr 2020 15:09:15 +0000 Subject: [PATCH 204/219] hydrogen-unstable: init at 1.0.0-beta2 (#85454) --- pkgs/applications/audio/hydrogen/unstable.nix | 34 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 35 insertions(+) create mode 100644 pkgs/applications/audio/hydrogen/unstable.nix diff --git a/pkgs/applications/audio/hydrogen/unstable.nix b/pkgs/applications/audio/hydrogen/unstable.nix new file mode 100644 index 000000000000..2f220f8d31aa --- /dev/null +++ b/pkgs/applications/audio/hydrogen/unstable.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchFromGitHub, cmake, pkgconfig, wrapQtAppsHook +, alsaLib, ladspa-sdk, lash, libarchive, libjack2, liblo, libpulseaudio, libsndfile, lrdf +, qtbase, qttools, qtxmlpatterns +}: + +stdenv.mkDerivation rec { + pname = "hydrogen"; + version = "1.0.0-beta2"; + + src = fetchFromGitHub { + owner = "hydrogen-music"; + repo = pname; + rev = version; + sha256 = "1s3jrdyjpm92flw9mkkxchnj0wz8nn1y1kifii8ws252iiqjya4a"; + }; + + nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ]; + buildInputs = [ + alsaLib ladspa-sdk lash libarchive libjack2 liblo libpulseaudio libsndfile lrdf + qtbase qttools qtxmlpatterns + ]; + + cmakeFlags = [ + "-DWANT_DEBUG=OFF" + ]; + + meta = with stdenv.lib; { + description = "Advanced drum machine"; + homepage = "http://www.hydrogen-music.org"; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = with maintainers; [ goibhniu orivej ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 289c50ccb378..c1ce5ffe4fd3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19858,6 +19858,7 @@ in hugo = callPackage ../applications/misc/hugo { }; hydrogen = callPackage ../applications/audio/hydrogen { }; + hydrogen-unstable = qt5.callPackage ../applications/audio/hydrogen/unstable.nix { }; hydroxide = callPackage ../applications/networking/hydroxide { }; From dc28779cee5b9ee8fda624632b0f9d5f4381930d Mon Sep 17 00:00:00 2001 From: misuzu Date: Mon, 20 Apr 2020 18:12:02 +0300 Subject: [PATCH 205/219] kmon: 1.0.1 -> 1.1.0 --- pkgs/tools/system/kmon/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/system/kmon/default.nix b/pkgs/tools/system/kmon/default.nix index c1e511fa0c2c..1a4cdb9acdfe 100644 --- a/pkgs/tools/system/kmon/default.nix +++ b/pkgs/tools/system/kmon/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "kmon"; - version = "1.0.1"; + version = "1.1.0"; src = fetchFromGitHub { owner = "orhun"; repo = pname; rev = "v${version}"; - sha256 = "0kmkcs13cccmjjfbl25bs3m54zcjcs38fiv84q0vy09a4dnx3gn8"; + sha256 = "0lpwp5fzlf037bn03x1dldw8nfa5pyqi4qsqbscwn42idvs94mhx"; }; - cargoSha256 = "0l1yq9k6lyk0ww1nzk93axylgrwipkmmqh9r6fq4a31wjlblrkkb"; + cargoSha256 = "1g5k6dkv0zznh8q359n7sg9wf0gcix6m36pg9ql8wi5hnlsvg1s1"; nativeBuildInputs = [ python3 ]; From 6380be302a5da1f5200968cd358e93fa64cdc996 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Mon, 20 Apr 2020 11:52:57 -0400 Subject: [PATCH 206/219] rl-2003: release date --- nixos/doc/manual/release-notes/rl-2003.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/doc/manual/release-notes/rl-2003.xml b/nixos/doc/manual/release-notes/rl-2003.xml index 0c12a797aa3d..507f47aa3d1e 100644 --- a/nixos/doc/manual/release-notes/rl-2003.xml +++ b/nixos/doc/manual/release-notes/rl-2003.xml @@ -3,7 +3,7 @@ xmlns:xi="http://www.w3.org/2001/XInclude" version="5.0" xml:id="sec-release-20.03"> - Release 20.03 (“Markhor”, 2020.03/??) + Release 20.03 (“Markhor”, 2020.04/20)
Date: Mon, 20 Apr 2020 19:15:05 +0300 Subject: [PATCH 207/219] procs: 0.9.20 -> 0.10.0 --- pkgs/tools/admin/procs/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/admin/procs/default.nix b/pkgs/tools/admin/procs/default.nix index db6f27a3010f..180764bd8c9b 100644 --- a/pkgs/tools/admin/procs/default.nix +++ b/pkgs/tools/admin/procs/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "procs"; - version = "0.9.20"; + version = "0.10.0"; src = fetchFromGitHub { owner = "dalance"; repo = pname; rev = "v${version}"; - sha256 = "00qqn8nwv791bs88n302hy67dpas5hcacnkakn7law567klnzxfz"; + sha256 = "1bgsxvb9wxi4sz8jfamhdwaq9f2q2k7c3cdkk60k86mkmas8ibxz"; }; - cargoSha256 = "09ib1nlqhzq3mc5wc16mgqbyr652asrwdpbwaax54fm1gd334prl"; + cargoSha256 = "0zf41clf3rqxmal894gqp9fn9bnas99wna13fc43fxdlvh92v4yh"; buildInputs = stdenv.lib.optional stdenv.isDarwin Security; @@ -19,7 +19,7 @@ rustPlatform.buildRustPackage rec { description = "A modern replacement for ps written in Rust"; homepage = "https://github.com/dalance/procs"; license = licenses.mit; - maintainers = with maintainers; [ dalance filalex77 ]; + maintainers = with maintainers; [ dalance filalex77 ]; platforms = with platforms; linux ++ darwin; }; } From 4b0b23db77d9a40f5e13a495819fc82182b9a460 Mon Sep 17 00:00:00 2001 From: Daniel Fullmer Date: Mon, 20 Apr 2020 16:22:38 -0400 Subject: [PATCH 208/219] wifite2: 2.5.2 -> 2.5.3 --- pkgs/tools/networking/wifite2/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/wifite2/default.nix b/pkgs/tools/networking/wifite2/default.nix index 8ff0c6d84ab5..505e461e4806 100644 --- a/pkgs/tools/networking/wifite2/default.nix +++ b/pkgs/tools/networking/wifite2/default.nix @@ -3,14 +3,14 @@ , hcxdumptool, pyrit, which }: python3.pkgs.buildPythonApplication rec { - version = "2.5.2"; + version = "2.5.3"; pname = "wifite2"; src = fetchFromGitHub { owner = "kimocoder"; repo = "wifite2"; rev = version; - sha256 = "0hsb59d86szn27s3hynpzkp49rmw4g692vrl67nal7rfcdvpp8hb"; + sha256 = "080hbjpbgdnzr6jkmg5cb8dvzxm57zpi4c9x0y92yy472vqll3ax"; }; patches = [ From d8b7b590c7b1166fad48935d757c3ff10375c89a Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Tue, 21 Apr 2020 01:10:44 +0200 Subject: [PATCH 209/219] html-proofer: 3.15.2 -> 3.15.3 --- pkgs/tools/misc/html-proofer/Gemfile.lock | 4 ++-- pkgs/tools/misc/html-proofer/gemset.nix | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/tools/misc/html-proofer/Gemfile.lock b/pkgs/tools/misc/html-proofer/Gemfile.lock index c3ff0fd210fe..0ba32818d21b 100644 --- a/pkgs/tools/misc/html-proofer/Gemfile.lock +++ b/pkgs/tools/misc/html-proofer/Gemfile.lock @@ -6,7 +6,7 @@ GEM ethon (0.12.0) ffi (>= 1.3.0) ffi (1.12.2) - html-proofer (3.15.2) + html-proofer (3.15.3) addressable (~> 2.3) mercenary (~> 0.3) nokogumbo (~> 2.0) @@ -21,7 +21,7 @@ GEM nokogumbo (2.0.2) nokogiri (~> 1.8, >= 1.8.4) parallel (1.19.1) - public_suffix (4.0.3) + public_suffix (4.0.4) rainbow (3.0.0) typhoeus (1.3.1) ethon (>= 0.9.0) diff --git a/pkgs/tools/misc/html-proofer/gemset.nix b/pkgs/tools/misc/html-proofer/gemset.nix index 2e3b3a10b3b8..c5836bc74ba0 100644 --- a/pkgs/tools/misc/html-proofer/gemset.nix +++ b/pkgs/tools/misc/html-proofer/gemset.nix @@ -37,10 +37,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1b7wx2hnwnml3y10x6yxybl3hy973n2ifq3hbqh0jd72bqs615wp"; + sha256 = "18afz6rz72j8hnfgzhyr21wh1rfy1x41iyhbcgaq0r1bd7ng1vni"; type = "gem"; }; - version = "3.15.2"; + version = "3.15.3"; }; mercenary = { groups = ["default"]; @@ -99,10 +99,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1c6kq6s13idl2036b5lch8r7390f8w82cal8hcp4ml76fm2vdac7"; + sha256 = "1l1kqw75asziwmzrig8rywxswxz8l91sc3pvns02ffsqac1a3wiz"; type = "gem"; }; - version = "4.0.3"; + version = "4.0.4"; }; rainbow = { groups = ["default"]; From 7448089fd68d8e4a3b7d643551e1891675a65be2 Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Tue, 21 Apr 2020 09:28:17 +1000 Subject: [PATCH 210/219] cni: 0.7.0 -> 0.7.1 https://github.com/containernetworking/cni/releases/tag/v0.7.1 --- pkgs/applications/networking/cluster/cni/default.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/networking/cluster/cni/default.nix b/pkgs/applications/networking/cluster/cni/default.nix index 8e74f834eaf4..49d3aaa298de 100644 --- a/pkgs/applications/networking/cluster/cni/default.nix +++ b/pkgs/applications/networking/cluster/cni/default.nix @@ -1,18 +1,19 @@ -{ stdenv, fetchFromGitHub, buildGoPackage }: +{ lib, fetchFromGitHub, buildGoPackage }: buildGoPackage rec { pname = "cni"; - version = "0.7.0"; + version = "0.7.1"; src = fetchFromGitHub { owner = "containernetworking"; repo = pname; rev = "v${version}"; - sha256 = "15ad323dw44k82bfx9r8w5q2kn7jix60p9v4ciyzx2p5pip36wp8"; + sha256 = "02qn1br8164d99978acalisy1sx294g1axnii4yh1wji0fc735xz"; }; goPackagePath = "github.com/containernetworking/cni"; - meta = with stdenv.lib; { + + meta = with lib; { description = "Container Network Interface - networking for Linux containers"; license = licenses.asl20; homepage = "https://github.com/containernetworking/cni"; From 202b87ca998f058b365dd1a5053ddfe97894e79f Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Tue, 21 Apr 2020 09:29:29 +1000 Subject: [PATCH 211/219] cni-plugins: 0.8.4 -> 0.8.5 https://github.com/containernetworking/plugins/releases/tag/v0.8.5 --- .../networking/cluster/cni/plugins-deps.nix | 210 ------------------ .../networking/cluster/cni/plugins.nix | 28 +-- 2 files changed, 15 insertions(+), 223 deletions(-) delete mode 100644 pkgs/applications/networking/cluster/cni/plugins-deps.nix diff --git a/pkgs/applications/networking/cluster/cni/plugins-deps.nix b/pkgs/applications/networking/cluster/cni/plugins-deps.nix deleted file mode 100644 index a6bbd333be43..000000000000 --- a/pkgs/applications/networking/cluster/cni/plugins-deps.nix +++ /dev/null @@ -1,210 +0,0 @@ -# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix) -[ - { - goPackagePath = "github.com/Microsoft/go-winio"; - fetch = { - type = "git"; - url = "https://github.com/Microsoft/go-winio"; - rev = "v0.4.11"; - sha256 = "14y1gryr3pb3zy09v2g8dh89m363rfd9sch0wgbabh531hfx72vn"; - }; - } - { - goPackagePath = "github.com/Microsoft/hcsshim"; - fetch = { - type = "git"; - url = "https://github.com/Microsoft/hcsshim"; - rev = "v0.7.4"; - sha256 = "0hky9p6xvkkx2jfkd4fy2d6iaikvlzalyw67gypyqyxygf2hsshg"; - }; - } - { - goPackagePath = "github.com/alexflint/go-filemutex"; - fetch = { - type = "git"; - url = "https://github.com/alexflint/go-filemutex"; - rev = "72bdc8eae2ae"; - sha256 = "082y6y9zv40q3kaqvsv6fyaw2fc42j0sn9z0dl9rbiz4szixj3c4"; - }; - } - { - goPackagePath = "github.com/buger/jsonparser"; - fetch = { - type = "git"; - url = "https://github.com/buger/jsonparser"; - rev = "f4dd9f5a6b44"; - sha256 = "12qa2n33s7yz88ywpr3k9kg3b4gm6rqgnv28iyikyxw8h5jascz5"; - }; - } - { - goPackagePath = "github.com/containernetworking/cni"; - fetch = { - type = "git"; - url = "https://github.com/containernetworking/cni"; - rev = "v0.7.0"; - sha256 = "15ad323dw44k82bfx9r8w5q2kn7jix60p9v4ciyzx2p5pip36wp8"; - }; - } - { - goPackagePath = "github.com/coreos/go-iptables"; - fetch = { - type = "git"; - url = "https://github.com/coreos/go-iptables"; - rev = "v0.4.1"; - sha256 = "0id1npqw3rd5rrkslf6i9yy6lpmd7l5qcglln38g85ylq7inysyi"; - }; - } - { - goPackagePath = "github.com/coreos/go-systemd"; - fetch = { - type = "git"; - url = "https://github.com/coreos/go-systemd"; - rev = "39ca1b05acc7"; - sha256 = "1kzqrrzqspa5qm7kwslxl3m16lqzns23c24rv474ajzwmj3ixmx1"; - }; - } - { - goPackagePath = "github.com/d2g/dhcp4"; - fetch = { - type = "git"; - url = "https://github.com/d2g/dhcp4"; - rev = "f0e4d29ff023"; - sha256 = "07gn9bjvnlfz2jv9wdq3gxxxm9lpwgrwk8z65072jdrz9rs9izpr"; - }; - } - { - goPackagePath = "github.com/d2g/dhcp4client"; - fetch = { - type = "git"; - url = "https://github.com/d2g/dhcp4client"; - rev = "bed07e1bc5b8"; - sha256 = "0kyjalv1kah7sk3i96abg71cgy5s9kzpff2zc7mwj69vicbj7mi3"; - }; - } - { - goPackagePath = "github.com/d2g/dhcp4server"; - fetch = { - type = "git"; - url = "https://github.com/d2g/dhcp4server"; - rev = "477b11cea4dc"; - sha256 = "010dpw6cxrsm6dm49w1q6qpz5xz3lbi5viz6wywxk49fxvnzmx9l"; - }; - } - { - goPackagePath = "github.com/godbus/dbus"; - fetch = { - type = "git"; - url = "https://github.com/godbus/dbus"; - rev = "885f9cc04c9c"; - sha256 = "0wjpaj4vr5lvpnwc5faf3qizd7zd2v9yq0fm0558wap1hiyqb8x8"; - }; - } - { - goPackagePath = "github.com/j-keck/arping"; - fetch = { - type = "git"; - url = "https://github.com/j-keck/arping"; - rev = "2cf9dc699c56"; - sha256 = "1bid8mpx3j4546ni0a6q5xyz7hb854g95qnxqmg5jzs9vrcird3c"; - }; - } - { - goPackagePath = "github.com/juju/errors"; - fetch = { - type = "git"; - url = "https://github.com/juju/errors"; - rev = "22422dad46e1"; - sha256 = "1766ys24y9qgngaqbx0g84lmh54b3369v8hk5fa1k8si2d34fxas"; - }; - } - { - goPackagePath = "github.com/mattn/go-shellwords"; - fetch = { - type = "git"; - url = "https://github.com/mattn/go-shellwords"; - rev = "v1.0.3"; - sha256 = "1pg7pl25wvpl2dbpyrv9p1r7prnqimxlf6136vn0dfm54j2x4mnr"; - }; - } - { - goPackagePath = "github.com/onsi/ginkgo"; - fetch = { - type = "git"; - url = "https://github.com/onsi/ginkgo"; - rev = "7f8ab55aaf3b"; - sha256 = "0nas6wqdym4jx42kw9wj80b58r69k9qhnvglz009lj34g5gba7rw"; - }; - } - { - goPackagePath = "github.com/onsi/gomega"; - fetch = { - type = "git"; - url = "https://github.com/onsi/gomega"; - rev = "2152b45fa28a"; - sha256 = "0amjlkawp84mmdqjgdamf93p1546cla6h4wwrx7hf5r862r2qcw2"; - }; - } - { - goPackagePath = "github.com/safchain/ethtool"; - fetch = { - type = "git"; - url = "https://github.com/safchain/ethtool"; - rev = "42ed695e3de8"; - sha256 = "0n5hkrzc1bh46nidcssx4539kvcmgj501v3kzh2pljpg27509daj"; - }; - } - { - goPackagePath = "github.com/sirupsen/logrus"; - fetch = { - type = "git"; - url = "https://github.com/sirupsen/logrus"; - rev = "v1.0.6"; - sha256 = "029irw2lsbqi944gdrbkwdw0m2794sqni4g21gsnmz142hbzds8c"; - }; - } - { - goPackagePath = "github.com/vishvananda/netlink"; - fetch = { - type = "git"; - url = "https://github.com/vishvananda/netlink"; - rev = "023a6dafdcdf"; - sha256 = "1i5q8r8rg7lxzvq2vhbf25lrkzdlgficfv0bxg9rf7cgg6z819sn"; - }; - } - { - goPackagePath = "github.com/vishvananda/netns"; - fetch = { - type = "git"; - url = "https://github.com/vishvananda/netns"; - rev = "13995c7128cc"; - sha256 = "1zk6w8158qi4niva5rijchbv9ixgmijsgqshh54wdaav4xrhjshn"; - }; - } - { - goPackagePath = "golang.org/x/crypto"; - fetch = { - type = "git"; - url = "https://go.googlesource.com/crypto"; - rev = "7c1a557ab941"; - sha256 = "1f1q9mby8m7ws3gbj90v0prhnf4g2sgf74azmw31kzwd6azlar3m"; - }; - } - { - goPackagePath = "golang.org/x/net"; - fetch = { - type = "git"; - url = "https://go.googlesource.com/net"; - rev = "49bb7cea24b1"; - sha256 = "111q4qm3hcjvzvyv9y5rz8ydnyg48rckcygxqy6gv63q618wz6gn"; - }; - } - { - goPackagePath = "golang.org/x/sys"; - fetch = { - type = "git"; - url = "https://go.googlesource.com/sys"; - rev = "66b7b1311ac8"; - sha256 = "00ny4r2bbj6rz939iy9g699acqydq7rfi6r6awn25w9i2dld9m13"; - }; - } -] diff --git a/pkgs/applications/networking/cluster/cni/plugins.nix b/pkgs/applications/networking/cluster/cni/plugins.nix index 8988c7efc33f..9c6eec1a3363 100644 --- a/pkgs/applications/networking/cluster/cni/plugins.nix +++ b/pkgs/applications/networking/cluster/cni/plugins.nix @@ -1,24 +1,22 @@ -{ stdenv, lib, fetchFromGitHub, go, removeReferencesTo, buildGoPackage }: +{ lib, fetchFromGitHub, buildGoPackage }: + buildGoPackage rec { pname = "cni-plugins"; - version = "0.8.4"; + version = "0.8.5"; src = fetchFromGitHub { owner = "containernetworking"; repo = "plugins"; rev = "v${version}"; - sha256 = "02kz6y3klhbriybsskn4hmldwli28cycnp2klsm2x0y9c73iczdp"; + sha256 = "17c8pvpn0dpda6ah7irr9hhd8sk7mnm32zv72nc5pxg1xvfpaipi"; }; - goDeps = ./plugins-deps.nix; goPackagePath = "github.com/containernetworking/plugins"; + subPackages = [ - "plugins/meta/bandwidth" - "plugins/meta/firewall" - "plugins/meta/flannel" - "plugins/meta/portmap" - "plugins/meta/sbr" - "plugins/meta/tuning" + "plugins/ipam/dhcp" + "plugins/ipam/host-local" + "plugins/ipam/static" "plugins/main/bridge" "plugins/main/host-device" "plugins/main/ipvlan" @@ -26,10 +24,14 @@ buildGoPackage rec { "plugins/main/macvlan" "plugins/main/ptp" "plugins/main/vlan" - "plugins/ipam/dhcp" - "plugins/ipam/host-local" - "plugins/ipam/static" + "plugins/meta/bandwidth" + "plugins/meta/firewall" + "plugins/meta/flannel" + "plugins/meta/portmap" + "plugins/meta/sbr" + "plugins/meta/tuning" ]; + meta = with lib; { description = "Some standard networking plugins, maintained by the CNI team"; homepage = "https://github.com/containernetworking/plugins"; From ae9529c27d5cbbea730d507ab4e69dcf9d6c2be7 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 21 Apr 2020 07:37:15 +0200 Subject: [PATCH 212/219] arc-theme: mark as broken --- pkgs/data/themes/arc/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/data/themes/arc/default.nix b/pkgs/data/themes/arc/default.nix index c08d4c577861..53e81b323dc1 100644 --- a/pkgs/data/themes/arc/default.nix +++ b/pkgs/data/themes/arc/default.nix @@ -48,5 +48,6 @@ stdenv.mkDerivation rec { license = licenses.gpl3; maintainers = with maintainers; [ simonvandel romildo ]; platforms = platforms.linux; + broken = true; # since libsass 3.6.3 }; } From 7856c8ba5dbc162ade78963b1c9101b5e3612ffa Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 21 Apr 2020 07:37:22 +0200 Subject: [PATCH 213/219] yaru-theme: mark as broken --- pkgs/data/themes/yaru/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/data/themes/yaru/default.nix b/pkgs/data/themes/yaru/default.nix index 9e56326b2eb6..6033d64d79bc 100644 --- a/pkgs/data/themes/yaru/default.nix +++ b/pkgs/data/themes/yaru/default.nix @@ -25,5 +25,6 @@ stdenv.mkDerivation rec { license = with licenses; [ cc-by-sa-40 gpl3 ]; platforms = platforms.linux; maintainers = [ maintainers.jD91mZM2 ]; + broken = true; # since libsass 3.6.3 }; } From 5dc6f02d77997bf8eaa3591cc59dbaae4c304577 Mon Sep 17 00:00:00 2001 From: Raphael Borun Das Gupta Date: Mon, 20 Apr 2020 23:59:58 +0200 Subject: [PATCH 214/219] lektor: fix "ImportError: No module named pkg_resources" --- pkgs/development/python-modules/lektor/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/lektor/default.nix b/pkgs/development/python-modules/lektor/default.nix index 0fe3a11ae261..844e28aa0788 100644 --- a/pkgs/development/python-modules/lektor/default.nix +++ b/pkgs/development/python-modules/lektor/default.nix @@ -19,6 +19,7 @@ , pytest-click , isPy27 , functools32 +, setuptools }: buildPythonPackage rec { @@ -34,7 +35,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ click watchdog exifread requests mistune inifile Babel jinja2 - flask pyopenssl ndg-httpsclient + flask pyopenssl ndg-httpsclient setuptools ] ++ lib.optionals isPy27 [ functools32 ]; checkInputs = [ From 45a04ed6d49a35f88fd34701ca06c8676d2cb148 Mon Sep 17 00:00:00 2001 From: Greg Price Date: Wed, 8 Apr 2020 23:41:41 -0700 Subject: [PATCH 215/219] gbsplay: fix configure flags This caused none of these flags to have any effect. That's because the configure command looked like this: ./configure --prefix=/nix/store/svhl0fjdj1jl2sqcppy5vnzpfi4gj3d3-gbsplay-2016-12-17 \ --without-test\ --without-contrib\ --disable-devdsp\ --enable-pulse\ --disable-alsa\ --disable-midi\ --disable-nas\ --disable-dsound\ --disable-i18n with one giant flag '--without-test --without-contrib...', containing internal spaces. This can be seen in `nix log nixpkgs.gbsplay`, in this line: configure flags: --prefix=/nix/store/svhl0fjdj1jl2sqcppy5vnzpfi4gj3d3-gbsplay-2016-12-17 --without-test\ --without-contrib\ --disable-devdsp\ --enable-pulse\ --disable-alsa\ --disable-midi\ --disable-nas\ --disable-dsound\ --disable-i18n and then in the fact that features like "devdsp" and "midi" are listed as enabled in later output, and source files like plugout_midi.c are included in the build. I don't have a real opinion on whether it's better to have these flags or not, but it's clear the author's intention was to pass them. So, fix the attr name so they get passed. --- pkgs/applications/audio/gbsplay/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/audio/gbsplay/default.nix b/pkgs/applications/audio/gbsplay/default.nix index 9ff9b8dc1145..f89b8ed399b4 100644 --- a/pkgs/applications/audio/gbsplay/default.nix +++ b/pkgs/applications/audio/gbsplay/default.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation { }; buildInputs = [ libpulseaudio ]; - - configureFlagsArray = + + configureFlags = [ "--without-test" "--without-contrib" "--disable-devdsp" "--enable-pulse" "--disable-alsa" "--disable-midi" "--disable-nas" "--disable-dsound" "--disable-i18n" ]; - makeFlagsArray = [ "tests=" ]; + makeFlags = [ "tests=" ]; meta = with stdenv.lib; { description = "gameboy sound player"; From 30cafee8b65c4c65d6f0a989a8492f33e015bf82 Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Fri, 13 Mar 2020 11:15:57 -0400 Subject: [PATCH 216/219] elastix: python -> python3 --- .../development/libraries/science/biology/elastix/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/science/biology/elastix/default.nix b/pkgs/development/libraries/science/biology/elastix/default.nix index e88e79cdcf41..66bde6c14e66 100644 --- a/pkgs/development/libraries/science/biology/elastix/default.nix +++ b/pkgs/development/libraries/science/biology/elastix/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, cmake, itk, python }: +{ stdenv, fetchFromGitHub, cmake, itk, python3 }: stdenv.mkDerivation rec { pname = "elastix"; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { rev = version; sha256 = "1zrl7rz4lwsx88b2shnl985f3a97lmp4ksbd437h9y0hfjq8l0lj"; }; - nativeBuildInputs = [ cmake python ]; + nativeBuildInputs = [ cmake python3 ]; buildInputs = [ itk ]; meta = with stdenv.lib; { From fe07e2b2ac54b352680658ae2ececbe721433e14 Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Fri, 13 Mar 2020 11:16:34 -0400 Subject: [PATCH 217/219] elastix: enable tests --- .../libraries/science/biology/elastix/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/development/libraries/science/biology/elastix/default.nix b/pkgs/development/libraries/science/biology/elastix/default.nix index 66bde6c14e66..e5565aae29b1 100644 --- a/pkgs/development/libraries/science/biology/elastix/default.nix +++ b/pkgs/development/libraries/science/biology/elastix/default.nix @@ -10,9 +10,16 @@ stdenv.mkDerivation rec { rev = version; sha256 = "1zrl7rz4lwsx88b2shnl985f3a97lmp4ksbd437h9y0hfjq8l0lj"; }; + nativeBuildInputs = [ cmake python3 ]; buildInputs = [ itk ]; + doCheck = true; + + preCheck = " + export LD_LIBRARY_PATH=$(pwd)/bin + "; + meta = with stdenv.lib; { homepage = "http://elastix.isi.uu.nl/"; description = "Image registration toolkit based on ITK"; From c7d4882ab15f911258adf853785c904620159707 Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Tue, 21 Apr 2020 01:56:13 -0400 Subject: [PATCH 218/219] python3Packages.matplotlib: 3.1.3 -> 3.2.1, and various cleanups (#84362) * pythonPackages.matplotlib: add veprbl to maintainers * pythonPackages.matplotlib: remove an old darwin hack * pythonPackages.matplotlib: remove python and stdenv from buildInputs * python3Packages.matplotlib: remove a hack for python33 * pythonPackages.matplotlib: remove outdated checkPhase Downloading the baseline_images is not a real issue, building against older freetype (local_freetype = True) is, perhaps, not what we want. The good news is that the tests would pass (tested on 3.2.1) if we were to enable them: ========== 6684 passed, 1332 skipped, 10 xfailed in 228.64s (0:03:48) ========== * pythonPackages.matplotlib: provide setup.cfg from a file instead of a patch * python3Packages.matplotlib: 3.1.3 -> 3.2.1 --- .../python-modules/matplotlib/2.nix | 45 +++++++------------ .../matplotlib/basedirlist.patch | 8 ---- .../python-modules/matplotlib/default.nix | 35 +++++---------- .../python-modules/matplotlib/setup.cfg | 2 + 4 files changed, 28 insertions(+), 62 deletions(-) delete mode 100644 pkgs/development/python-modules/matplotlib/basedirlist.patch create mode 100644 pkgs/development/python-modules/matplotlib/setup.cfg diff --git a/pkgs/development/python-modules/matplotlib/2.nix b/pkgs/development/python-modules/matplotlib/2.nix index 8ea530489e24..dd25860795ba 100644 --- a/pkgs/development/python-modules/matplotlib/2.nix +++ b/pkgs/development/python-modules/matplotlib/2.nix @@ -7,7 +7,6 @@ # darwin has its own "MacOSX" backend , enableTk ? !stdenv.isDarwin, tcl ? null, tk ? null, tkinter ? null, libX11 ? null , enableQt ? false, pyqt4 -, libcxx , Cocoa , pythonOlder }: @@ -29,13 +28,20 @@ buildPythonPackage rec { sha256 = "7355bf757ecacd5f0ac9dd9523c8e1a1103faadf8d33c22664178e17533f8ce5"; }; - NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1"; + patches = [ + # https://github.com/matplotlib/matplotlib/pull/12478 + (fetchpatch { + name = "numpy-1.16-compat.patch"; + url = "https://github.com/matplotlib/matplotlib/commit/2980184d092382a40ab21f95b79582ffae6e19d6.patch"; + sha256 = "1c0wj28zy8s5h6qiavx9zzbhlmhjwpzbc3fyyw9039mbnqk0spg2"; + }) + ]; XDG_RUNTIME_DIR = "/tmp"; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ python which sphinx stdenv ] + buildInputs = [ which sphinx ] ++ stdenv.lib.optional enableGhostscript ghostscript ++ stdenv.lib.optional stdenv.isDarwin [ Cocoa ]; @@ -48,16 +54,10 @@ buildPythonPackage rec { ++ stdenv.lib.optionals enableQt [ pyqt4 ] ++ stdenv.lib.optionals python.isPy2 [ functools32 subprocess32 ]; - patches = [ - ./basedirlist.patch - - # https://github.com/matplotlib/matplotlib/pull/12478 - (fetchpatch { - name = "numpy-1.16-compat.patch"; - url = "https://github.com/matplotlib/matplotlib/commit/2980184d092382a40ab21f95b79582ffae6e19d6.patch"; - sha256 = "1c0wj28zy8s5h6qiavx9zzbhlmhjwpzbc3fyyw9039mbnqk0spg2"; - }) - ]; + setup_cfg = ./setup.cfg; + preBuild = '' + cp "$setup_cfg" ./setup.cfg + ''; # Matplotlib tries to find Tcl/Tk by opening a Tk window and asking the # corresponding interpreter object for its library paths. This fails if @@ -73,27 +73,14 @@ buildPythonPackage rec { stdenv.lib.optionalString enableTk "sed -i '/self.tcl_tk_cache = None/s|None|${tcl_tk_cache}|' setupext.py"; - checkPhase = '' - ${python.interpreter} tests.py - ''; - - # Test data is not included in the distribution (the `tests` folder - # is missing) + # Matplotlib needs to be built against a specific version of freetype in + # order for all of the tests to pass. doCheck = false; - prePatch = '' - # Failing test: ERROR: matplotlib.tests.test_style.test_use_url - sed -i 's/test_use_url/fails/' lib/matplotlib/tests/test_style.py - # Failing test: ERROR: test suite for - sed -i 's/TestTinyPages/fails/' lib/matplotlib/sphinxext/tests/test_tinypages.py - # Transient errors - sed -i 's/test_invisible_Line_rendering/noop/' lib/matplotlib/tests/test_lines.py - ''; - meta = with stdenv.lib; { description = "Python plotting library, making publication quality plots"; homepage = "https://matplotlib.org/"; - maintainers = with maintainers; [ lovek323 ]; + maintainers = with maintainers; [ lovek323 veprbl ]; }; } diff --git a/pkgs/development/python-modules/matplotlib/basedirlist.patch b/pkgs/development/python-modules/matplotlib/basedirlist.patch deleted file mode 100644 index 0a84a05bbaea..000000000000 --- a/pkgs/development/python-modules/matplotlib/basedirlist.patch +++ /dev/null @@ -1,8 +0,0 @@ -diff --git a/setup.cfg b/setup.cfg -new file mode 100644 -index 0000000..6f81985 ---- /dev/null -+++ b/setup.cfg -@@ -0,0 +1,2 @@ -+[directories] -+basedirlist = . diff --git a/pkgs/development/python-modules/matplotlib/default.nix b/pkgs/development/python-modules/matplotlib/default.nix index 658388eabae4..03afcfe75ae3 100644 --- a/pkgs/development/python-modules/matplotlib/default.nix +++ b/pkgs/development/python-modules/matplotlib/default.nix @@ -6,7 +6,6 @@ # darwin has its own "MacOSX" backend , enableTk ? !stdenv.isDarwin, tcl ? null, tk ? null, tkinter ? null, libX11 ? null , enableQt ? false, pyqt5 ? null -, libcxx , Cocoa , pythonOlder }: @@ -20,36 +19,35 @@ assert enableTk -> (tcl != null) assert enableQt -> pyqt5 != null; buildPythonPackage rec { - version = "3.1.3"; + version = "3.2.1"; pname = "matplotlib"; disabled = !isPy3k; src = fetchPypi { inherit pname version; - sha256 = "db3121f12fb9b99f105d1413aebaeb3d943f269f3d262b45586d12765866f0c6"; + sha256 = "ffe2f9cdcea1086fc414e82f42271ecf1976700b8edd16ca9d376189c6d93aee"; }; - NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1"; - XDG_RUNTIME_DIR = "/tmp"; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ python which sphinx stdenv ] + buildInputs = [ which sphinx ] ++ stdenv.lib.optional enableGhostscript ghostscript ++ stdenv.lib.optional stdenv.isDarwin [ Cocoa ]; propagatedBuildInputs = [ cycler dateutil numpy pyparsing tornado freetype kiwisolver libpng mock pytz ] - ++ stdenv.lib.optional (pythonOlder "3.3") backports_functools_lru_cache ++ stdenv.lib.optionals enableGtk3 [ cairo pycairo gtk3 gobject-introspection pygobject3 ] ++ stdenv.lib.optionals enableTk [ tcl tk tkinter libX11 ] ++ stdenv.lib.optionals enableQt [ pyqt5 ]; - patches = - [ ./basedirlist.patch ]; + setup_cfg = ./setup.cfg; + preBuild = '' + cp "$setup_cfg" ./setup.cfg + ''; # Matplotlib tries to find Tcl/Tk by opening a Tk window and asking the # corresponding interpreter object for its library paths. This fails if @@ -65,27 +63,14 @@ buildPythonPackage rec { stdenv.lib.optionalString enableTk "sed -i '/self.tcl_tk_cache = None/s|None|${tcl_tk_cache}|' setupext.py"; - checkPhase = '' - ${python.interpreter} tests.py - ''; - - # Test data is not included in the distribution (the `tests` folder - # is missing) + # Matplotlib needs to be built against a specific version of freetype in + # order for all of the tests to pass. doCheck = false; - prePatch = '' - # Failing test: ERROR: matplotlib.tests.test_style.test_use_url - sed -i 's/test_use_url/fails/' lib/matplotlib/tests/test_style.py - # Failing test: ERROR: test suite for - sed -i 's/TestTinyPages/fails/' lib/matplotlib/sphinxext/tests/test_tinypages.py - # Transient errors - sed -i 's/test_invisible_Line_rendering/noop/' lib/matplotlib/tests/test_lines.py - ''; - meta = with stdenv.lib; { description = "Python plotting library, making publication quality plots"; homepage = "https://matplotlib.org/"; - maintainers = with maintainers; [ lovek323 ]; + maintainers = with maintainers; [ lovek323 veprbl ]; }; } diff --git a/pkgs/development/python-modules/matplotlib/setup.cfg b/pkgs/development/python-modules/matplotlib/setup.cfg new file mode 100644 index 000000000000..6f81985efa44 --- /dev/null +++ b/pkgs/development/python-modules/matplotlib/setup.cfg @@ -0,0 +1,2 @@ +[directories] +basedirlist = . From 529165cfac6a17a32075006c8cd04a0b2129e412 Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Mon, 20 Apr 2020 22:15:08 -0400 Subject: [PATCH 219/219] doc/texlive: remove known problems section Couple items are outdated. Also they don't belong to documentation - should go to the issue tracker instead. --- doc/languages-frameworks/texlive.xml | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/doc/languages-frameworks/texlive.xml b/doc/languages-frameworks/texlive.xml index 8fa8f963b2f6..a581ec5911cb 100644 --- a/doc/languages-frameworks/texlive.xml +++ b/doc/languages-frameworks/texlive.xml @@ -149,31 +149,4 @@ EOF ]]>
- -
- Known problems - - - - - Some tools are still missing, e.g. luajittex; - - - - - some apps aren't packaged/tested yet (asymptote, biber, etc.); - - - - - feature/bug: when a package is rejected by pkgFilter, its dependencies are still propagated; - - - - - in case of any bugs or feature requests, file a github issue or better a pull request and /cc @vcunat. - - - -