From c260905c8060ee8367cac0635a8c87cad4eef7aa Mon Sep 17 00:00:00 2001 From: Philipp Kern Date: Fri, 25 Dec 2020 20:56:41 +0100 Subject: [PATCH 01/28] nixos/exim: Make queue runner interval configurable and reduce it to 5m Exim spawns a new queue runner every n minutes as configured by the argument to -q; up to queue_run_max can be active at the same time. Spawning a queue runner only every 30 mins means that a message that failed delivery on the first attempt (e.g. due to greylisting) will only be retried 30 minutes later. A queue runner will immediately exit if the queue is empty, so it is more a function on how quickly Exim will scale to mail load and how quickly it will retry than something that is taxing on an otherwise empty system. --- nixos/modules/services/mail/exim.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/mail/exim.nix b/nixos/modules/services/mail/exim.nix index 892fbd33214a275..8927d84b478c69c 100644 --- a/nixos/modules/services/mail/exim.nix +++ b/nixos/modules/services/mail/exim.nix @@ -67,6 +67,13 @@ in ''; }; + queueRunnerInterval = mkOption { + type = types.str; + default = "5m"; + description = '' + How often to spawn a new queue runner. + ''; + }; }; }; @@ -104,7 +111,7 @@ in wantedBy = [ "multi-user.target" ]; restartTriggers = [ config.environment.etc."exim.conf".source ]; serviceConfig = { - ExecStart = "${cfg.package}/bin/exim -bdf -q30m"; + ExecStart = "${cfg.package}/bin/exim -bdf -q${cfg.queueRunnerInterval}"; ExecReload = "${coreutils}/bin/kill -HUP $MAINPID"; }; preStart = '' From 1db74d1150827d09b9620457af673b2d9b6c2b07 Mon Sep 17 00:00:00 2001 From: Philipp Kern Date: Sun, 15 Nov 2020 11:02:28 +0100 Subject: [PATCH 02/28] nixos/spamassassin: Fix network requirement on boot sa-update currently runs as part of the pre-start script of spamd. The network is not guaranteed to be online at that point and even if we were to depend on that, it makes the bootup brittle, as there is a reliance on SpamAssassin's update server as a startup dependency on boot. Refactor the setup to move the pre-start script into its own unit. This allows to perform the setup task only once. Continuous updates are already done by sa-update.service triggered by sa-update.timer. Only run sa-update in case /var/lib/spamassassin is empty. While we are on it, let sa-update.service depend on the network being online. --- nixos/modules/services/mail/spamassassin.nix | 51 ++++++++++++-------- 1 file changed, 32 insertions(+), 19 deletions(-) diff --git a/nixos/modules/services/mail/spamassassin.nix b/nixos/modules/services/mail/spamassassin.nix index 4e642542ec666d6..0bbf2df48d40aba 100644 --- a/nixos/modules/services/mail/spamassassin.nix +++ b/nixos/modules/services/mail/spamassassin.nix @@ -126,6 +126,8 @@ in }; systemd.services.sa-update = { + wants = [ "network-online.target" ]; + after = [ "network-online.target" ]; script = '' set +e ${pkgs.su}/bin/su -s "${pkgs.bash}/bin/bash" -c "${pkgs.spamassassin}/bin/sa-update --gpghomedir=/var/lib/spamassassin/sa-update-keys/" spamd @@ -152,33 +154,44 @@ in }; }; + systemd.services.spamd-init = { + serviceConfig = { + Type = "oneshot"; + }; + script = '' + mkdir -p /var/lib/spamassassin + chown spamd:spamd /var/lib/spamassassin -R + if [ "$(ls -A /var/lib/spamassassin)" = "" ]; then + echo "'/var/lib/spamassassin' is empty, running sa-update..." + set +e + ${pkgs.su}/bin/su -s "${pkgs.bash}/bin/bash" -c "${pkgs.spamassassin}/bin/sa-update --gpghomedir=/var/lib/spamassassin/sa-update-keys/" spamd + v=$? + set -e + # 0 and 1 no error, exitcode > 1 means error: + # https://spamassassin.apache.org/full/3.1.x/doc/sa-update.html#exit_codes + if [ $v -gt 1 ]; then + echo "sa-update execution error" + exit $v + fi + echo "sa-update run successfully." + fi + ''; + }; + systemd.services.spamd = { - description = "Spam Assassin Server"; + description = "SpamAssassin Server"; wantedBy = [ "multi-user.target" ]; - after = [ "network.target" ]; + wants = [ "spamd-init.service" ]; + after = [ + "network.target" + "spamd-init.service" + ]; serviceConfig = { ExecStart = "${pkgs.spamassassin}/bin/spamd ${optionalString cfg.debug "-D"} --username=spamd --groupname=spamd --virtual-config-dir=/var/lib/spamassassin/user-%u --allow-tell --pidfile=/run/spamd.pid"; ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; }; - - # 0 and 1 no error, exitcode > 1 means error: - # https://spamassassin.apache.org/full/3.1.x/doc/sa-update.html#exit_codes - preStart = '' - echo "Recreating '/var/lib/spamasassin' with creating '3.004001' (or similar) and 'sa-update-keys'" - mkdir -p /var/lib/spamassassin - chown spamd:spamd /var/lib/spamassassin -R - set +e - ${pkgs.su}/bin/su -s "${pkgs.bash}/bin/bash" -c "${pkgs.spamassassin}/bin/sa-update --gpghomedir=/var/lib/spamassassin/sa-update-keys/" spamd - v=$? - set -e - if [ $v -gt 1 ]; then - echo "sa-update execution error" - exit $v - fi - chown spamd:spamd /var/lib/spamassassin -R - ''; }; }; } From 624cc51badb6b3b6aff2ebc7cf8a7243edcc0a0d Mon Sep 17 00:00:00 2001 From: Philipp Kern Date: Fri, 1 Jan 2021 19:56:52 +0100 Subject: [PATCH 03/28] nixos/spamassassin: Simplify services by using StateDirectory Let systemd create SpamAssassin's state directory and populate it using the regular updater service. Depend on the updater service on boot but do not propagate failure to the main service. spamd's commands to start and reload the service are still executed as root but user/group are set to properly chown the state directory to the target user. spamd drops privileges itself for its runner children but preserves root on the main daemon (to listen and re-exec). --- nixos/modules/services/mail/spamassassin.nix | 60 ++++++-------------- 1 file changed, 18 insertions(+), 42 deletions(-) diff --git a/nixos/modules/services/mail/spamassassin.nix b/nixos/modules/services/mail/spamassassin.nix index 0bbf2df48d40aba..98d9e925dcd7ecf 100644 --- a/nixos/modules/services/mail/spamassassin.nix +++ b/nixos/modules/services/mail/spamassassin.nix @@ -126,22 +126,19 @@ in }; systemd.services.sa-update = { + # Needs to be able to contact the update server. wants = [ "network-online.target" ]; after = [ "network-online.target" ]; - script = '' - set +e - ${pkgs.su}/bin/su -s "${pkgs.bash}/bin/bash" -c "${pkgs.spamassassin}/bin/sa-update --gpghomedir=/var/lib/spamassassin/sa-update-keys/" spamd - - v=$? - set -e - if [ $v -gt 1 ]; then - echo "sa-update execution error" - exit $v - fi - if [ $v -eq 0 ]; then - systemctl reload spamd.service - fi - ''; + + serviceConfig = { + Type = "oneshot"; + User = "spamd"; + Group = "spamd"; + StateDirectory = "spamassassin"; + ExecStart = "${pkgs.spamassassin}/bin/sa-update --verbose --gpghomedir=%S/spamassassin/sa-update-keys/"; + ExecStartPost = "+${pkgs.systemd}/bin/systemctl -q --no-block try-reload-or-restart spamd.service"; + SuccessExitStatus = "1"; + }; }; systemd.timers.sa-update = { @@ -154,43 +151,22 @@ in }; }; - systemd.services.spamd-init = { - serviceConfig = { - Type = "oneshot"; - }; - script = '' - mkdir -p /var/lib/spamassassin - chown spamd:spamd /var/lib/spamassassin -R - if [ "$(ls -A /var/lib/spamassassin)" = "" ]; then - echo "'/var/lib/spamassassin' is empty, running sa-update..." - set +e - ${pkgs.su}/bin/su -s "${pkgs.bash}/bin/bash" -c "${pkgs.spamassassin}/bin/sa-update --gpghomedir=/var/lib/spamassassin/sa-update-keys/" spamd - v=$? - set -e - # 0 and 1 no error, exitcode > 1 means error: - # https://spamassassin.apache.org/full/3.1.x/doc/sa-update.html#exit_codes - if [ $v -gt 1 ]; then - echo "sa-update execution error" - exit $v - fi - echo "sa-update run successfully." - fi - ''; - }; - systemd.services.spamd = { description = "SpamAssassin Server"; wantedBy = [ "multi-user.target" ]; - wants = [ "spamd-init.service" ]; + wants = [ "sa-update.service" ]; after = [ "network.target" - "spamd-init.service" + "sa-update.service" ]; serviceConfig = { - ExecStart = "${pkgs.spamassassin}/bin/spamd ${optionalString cfg.debug "-D"} --username=spamd --groupname=spamd --virtual-config-dir=/var/lib/spamassassin/user-%u --allow-tell --pidfile=/run/spamd.pid"; - ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; + User = "spamd"; + Group = "spamd"; + ExecStart = "+${pkgs.spamassassin}/bin/spamd ${optionalString cfg.debug "-D"} --username=spamd --groupname=spamd --virtual-config-dir=%S/spamassassin/user-%u --allow-tell --pidfile=/run/spamd.pid"; + ExecReload = "+${pkgs.coreutils}/bin/kill -HUP $MAINPID"; + StateDirectory = "spamassassin"; }; }; }; From 4d4a0b7ccaad49f8ea790ecf6c1f15abd6099b05 Mon Sep 17 00:00:00 2001 From: Philipp Kern Date: Fri, 1 Jan 2021 20:45:06 +0100 Subject: [PATCH 04/28] spamassassin: include dependencies for sa-compile sa-compile requires re2c, gcc and gnumake to compile the expressions to performant C code. This compilation is done post-installation after every ruleset update and stored as local state. --- pkgs/servers/mail/spamassassin/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/mail/spamassassin/default.nix b/pkgs/servers/mail/spamassassin/default.nix index ff96f0e7c8275d2..f3843502ee30733 100644 --- a/pkgs/servers/mail/spamassassin/default.nix +++ b/pkgs/servers/mail/spamassassin/default.nix @@ -1,4 +1,4 @@ -{ lib, fetchurl, perlPackages, makeWrapper, gnupg }: +{ lib, fetchurl, perlPackages, makeWrapper, gnupg, re2c, gcc, gnumake }: perlPackages.buildPerlPackage rec { pname = "SpamAssassin"; @@ -28,7 +28,7 @@ perlPackages.buildPerlPackage rec { mv "rules/"* $out/share/spamassassin/ for n in "$out/bin/"*; do - wrapProgram "$n" --prefix PERL5LIB : "$PERL5LIB" --prefix PATH : "${gnupg}/bin" + wrapProgram "$n" --prefix PERL5LIB : "$PERL5LIB" --prefix PATH : ${lib.makeBinPath [ gnupg re2c gcc gnumake ]} done ''; From cc625c968dfbc783d8f871da7e2b61f1372dd3f7 Mon Sep 17 00:00:00 2001 From: Philipp Kern Date: Sun, 3 Jan 2021 16:43:56 +0100 Subject: [PATCH 05/28] nixos/spamassassin: Run sa-compile after updating the rules sa-compile speeds up processing the rules by compiling them from Perl to C. This needs to be run after every update and is saved in the local state directory by Perl and SpamAssassin version. --- nixos/modules/services/mail/spamassassin.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/mail/spamassassin.nix b/nixos/modules/services/mail/spamassassin.nix index 98d9e925dcd7ecf..036f1bfebd377b9 100644 --- a/nixos/modules/services/mail/spamassassin.nix +++ b/nixos/modules/services/mail/spamassassin.nix @@ -135,7 +135,10 @@ in User = "spamd"; Group = "spamd"; StateDirectory = "spamassassin"; - ExecStart = "${pkgs.spamassassin}/bin/sa-update --verbose --gpghomedir=%S/spamassassin/sa-update-keys/"; + ExecStart = [ + "${pkgs.spamassassin}/bin/sa-update --verbose --gpghomedir=%S/spamassassin/sa-update-keys/" + "${pkgs.spamassassin}/bin/sa-compile" + ]; ExecStartPost = "+${pkgs.systemd}/bin/systemctl -q --no-block try-reload-or-restart spamd.service"; SuccessExitStatus = "1"; }; From c86b339491d0c42540650d86e4ba840cdb686b50 Mon Sep 17 00:00:00 2001 From: Philipp Kern Date: Tue, 5 Jan 2021 14:53:14 +0100 Subject: [PATCH 06/28] nixos/spamassassin: Only run sa-compile when updates have been installed --- nixos/modules/services/mail/spamassassin.nix | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/nixos/modules/services/mail/spamassassin.nix b/nixos/modules/services/mail/spamassassin.nix index 036f1bfebd377b9..9bd415ef17ea415 100644 --- a/nixos/modules/services/mail/spamassassin.nix +++ b/nixos/modules/services/mail/spamassassin.nix @@ -135,13 +135,21 @@ in User = "spamd"; Group = "spamd"; StateDirectory = "spamassassin"; - ExecStart = [ - "${pkgs.spamassassin}/bin/sa-update --verbose --gpghomedir=%S/spamassassin/sa-update-keys/" - "${pkgs.spamassassin}/bin/sa-compile" - ]; ExecStartPost = "+${pkgs.systemd}/bin/systemctl -q --no-block try-reload-or-restart spamd.service"; SuccessExitStatus = "1"; }; + + script = '' + set +e + ${pkgs.spamassassin}/bin/sa-update --verbose --gpghomedir=%S/spamassassin/sa-update-keys/ + rc=$? + set -e + + if [[ $rc -eq 0 ]]; then + # An update was available and installed. + ${pkgs.spamassassin}/bin/sa-compile + fi + ''; }; systemd.timers.sa-update = { From 8854b8251177e242d2869e3effe6ae47e5f229d1 Mon Sep 17 00:00:00 2001 From: Philipp Kern Date: Sun, 10 Jan 2021 12:15:38 +0100 Subject: [PATCH 07/28] nixos/spamassassin: Handle return codes correctly For sa-update we care about two successful codes: * 1 -> no updates available: exit successfully * 0 -> updates have been installed: run sa-compile and pass through its return code --- nixos/modules/services/mail/spamassassin.nix | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/nixos/modules/services/mail/spamassassin.nix b/nixos/modules/services/mail/spamassassin.nix index 9bd415ef17ea415..ac878222b26a26e 100644 --- a/nixos/modules/services/mail/spamassassin.nix +++ b/nixos/modules/services/mail/spamassassin.nix @@ -136,19 +136,26 @@ in Group = "spamd"; StateDirectory = "spamassassin"; ExecStartPost = "+${pkgs.systemd}/bin/systemctl -q --no-block try-reload-or-restart spamd.service"; - SuccessExitStatus = "1"; }; script = '' set +e - ${pkgs.spamassassin}/bin/sa-update --verbose --gpghomedir=%S/spamassassin/sa-update-keys/ + ${pkgs.spamassassin}/bin/sa-update --verbose --gpghomedir=/var/lib/spamassassin/sa-update-keys/ rc=$? set -e - if [[ $rc -eq 0 ]]; then - # An update was available and installed. - ${pkgs.spamassassin}/bin/sa-compile + if [[ $rc -gt 1 ]]; then + # sa-update failed. + exit $rc fi + + if [[ $rc -eq 1 ]]; then + # No update was available, exit successfully. + exit 0 + fi + + # An update was available and installed. Compile the rules. + ${pkgs.spamassassin}/bin/sa-compile ''; }; From e2be5dc1f4f12eaab10ae2311d293c114868ca1b Mon Sep 17 00:00:00 2001 From: Kai Harries Date: Sun, 28 Feb 2021 11:45:03 +0100 Subject: [PATCH 08/28] systemd-boot-builder: gracefully ignore errors during entry creation Catch and ignore errors during writing of the boot entries. These errors could stem from profile names that are not valid filenames on vfat filesystems. fixes #114552 --- .../boot/loader/systemd-boot/systemd-boot-builder.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py index 6bee900c68304c6..c47a5a81fb2ed03 100644 --- a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py +++ b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py @@ -222,9 +222,12 @@ def main(): gens += get_generations(profile) remove_old_entries(gens) for gen in gens: - write_entry(*gen, machine_id) - if os.readlink(system_dir(*gen)) == args.default_config: - write_loader_conf(*gen) + try: + write_entry(*gen, machine_id) + if os.readlink(system_dir(*gen)) == args.default_config: + write_loader_conf(*gen) + except OSError as e: + print("ignoring profile '{}' in the list of boot entries because of the following error:\n{}".format(profile, e), file=sys.stderr) memtest_entry_file = "@efiSysMountPoint@/loader/entries/memtest86.conf" if os.path.exists(memtest_entry_file): From fc2fa3cda56d61d5d81b9a0d2b478aa76d5d7101 Mon Sep 17 00:00:00 2001 From: Richard Marko Date: Wed, 24 Feb 2021 14:00:06 +0100 Subject: [PATCH 09/28] nixos/nixos-containers: default boot.enableContainers to true Related to #85746 which addresses documentation issue, digging deeper for a reason why this was disabled was simply because it wasn't working which is not the case anymore. --- nixos/modules/virtualisation/nixos-containers.nix | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/nixos/modules/virtualisation/nixos-containers.nix b/nixos/modules/virtualisation/nixos-containers.nix index 3754fe6dac6dadf..c1ff1bb5d479c66 100644 --- a/nixos/modules/virtualisation/nixos-containers.nix +++ b/nixos/modules/virtualisation/nixos-containers.nix @@ -439,21 +439,16 @@ in default = false; description = '' Whether this NixOS machine is a lightweight container running - in another NixOS system. If set to true, support for nested - containers is disabled by default, but can be reenabled by - setting to true. + in another NixOS system. ''; }; boot.enableContainers = mkOption { type = types.bool; - default = !config.boot.isContainer; + default = true; description = '' Whether to enable support for NixOS containers. Defaults to true - (at no cost if containers are not actually used), but only if the - system is not itself a lightweight container of a host. - To enable support for nested containers, this option has to be - explicitly set to true (in the outer container). + (at no cost if containers are not actually used). ''; }; From d23ba22076f64c9daffedde66376b11796046b40 Mon Sep 17 00:00:00 2001 From: Richard Marko Date: Wed, 24 Feb 2021 14:02:57 +0100 Subject: [PATCH 10/28] nixosTests.containers-nested: init --- nixos/tests/all-tests.nix | 1 + nixos/tests/containers-nested.nix | 30 ++++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 nixos/tests/containers-nested.nix diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 7d676e15fa9712a..3784dc6c886f570 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -74,6 +74,7 @@ in containers-ip = handleTest ./containers-ip.nix {}; containers-macvlans = handleTest ./containers-macvlans.nix {}; containers-names = handleTest ./containers-names.nix {}; + containers-nested = handleTest ./containers-nested.nix {}; containers-physical_interfaces = handleTest ./containers-physical_interfaces.nix {}; containers-portforward = handleTest ./containers-portforward.nix {}; containers-reloadable = handleTest ./containers-reloadable.nix {}; diff --git a/nixos/tests/containers-nested.nix b/nixos/tests/containers-nested.nix new file mode 100644 index 000000000000000..a653361494f9602 --- /dev/null +++ b/nixos/tests/containers-nested.nix @@ -0,0 +1,30 @@ +# Test for NixOS' container nesting. + +import ./make-test-python.nix ({ pkgs, ... }: { + name = "nested"; + + meta = with pkgs.lib.maintainers; { maintainers = [ sorki ]; }; + + machine = { lib, ... }: + let + makeNested = subConf: { + containers.nested = { + autoStart = true; + privateNetwork = true; + config = subConf; + }; + }; + in makeNested (makeNested { }); + + testScript = '' + machine.start() + machine.wait_for_unit("container@nested.service") + machine.succeed("systemd-run --pty --machine=nested -- machinectl list | grep nested") + print( + machine.succeed( + "systemd-run --pty --machine=nested -- systemd-run --pty --machine=nested -- systemctl status" + ) + ) + ''; +}) + From 64be38f31fa76963ec31d361f0b797f0cca9d31f Mon Sep 17 00:00:00 2001 From: Eric Dallo Date: Wed, 21 Apr 2021 14:55:55 -0300 Subject: [PATCH 11/28] clojure-lsp: 2021.02.14-19.46.47 -> 2021.04.13-12.47.33 --- .../tools/misc/clojure-lsp/default.nix | 32 +++++---------- .../tools/misc/clojure-lsp/repository.nix | 40 ------------------- 2 files changed, 11 insertions(+), 61 deletions(-) delete mode 100644 pkgs/development/tools/misc/clojure-lsp/repository.nix diff --git a/pkgs/development/tools/misc/clojure-lsp/default.nix b/pkgs/development/tools/misc/clojure-lsp/default.nix index c0d4567fe0b77b0..dc342e501e4ce24 100644 --- a/pkgs/development/tools/misc/clojure-lsp/default.nix +++ b/pkgs/development/tools/misc/clojure-lsp/default.nix @@ -1,39 +1,29 @@ -{ lib, stdenv, callPackage, fetchFromGitHub, leiningen, openjdk11 -, graalvm11-ce, babashka }: +{ lib, stdenv, graalvm11-ce, babashka, fetchurl, fetchFromGitHub }: -let +stdenv.mkDerivation rec { pname = "clojure-lsp"; - version = "2021.02.14-19.46.47"; - leiningen11 = leiningen.override ({ jdk = openjdk11; }); + version = "2021.04.13-12.47.33"; src = fetchFromGitHub { owner = pname; repo = pname; rev = version; - sha256 = "sha256-Zj7/8RcuxCy2xdd+5jeOb1GTsQsX0EVW32k32fA6uf4="; + sha256 = "1la0d28pvp1fqnxp3scb2vawcblilwyx42djxn379vag403p1i2d"; }; - repository = callPackage ./repository.nix { - inherit src pname version; - leiningen = leiningen11; + jar = fetchurl { + url = "https://github.com/clojure-lsp/clojure-lsp/releases/download/${version}/clojure-lsp.jar"; + sha256 = "059gz7y2rzwdxpyqy80w4lghzgxi5lb4rxmks1721yq6k7ljjyqy"; }; -in stdenv.mkDerivation rec { - inherit src pname version; - - postPatch = '' - # Hack to set maven cache in another directory since MAVEN_OPTS doesn't work - substituteInPlace project.clj \ - --replace ":main" ":local-repo \"${repository}\" :main" - ''; GRAALVM_HOME = graalvm11-ce; + CLOJURE_LSP_JAR = jar; - buildInputs = [ graalvm11-ce leiningen11 repository ]; + buildInputs = [ graalvm11-ce ]; buildPhase = with lib; '' runHook preBuild - export LEIN_HOME="$(mktemp -d)" bash ./graalvm/native-unix-compile.sh runHook postBuild @@ -51,14 +41,14 @@ in stdenv.mkDerivation rec { checkPhase = '' runHook preCheck - ${babashka}/bin/bb ./integration-test/run-all.clj ./clojure-lsp + ${babashka}/bin/bb integration-test/run-all.clj ./clojure-lsp runHook postCheck ''; meta = with lib; { description = "Language Server Protocol (LSP) for Clojure"; - homepage = "https://github.com/snoe/clojure-lsp"; + homepage = "https://github.com/clojure-lsp/clojure-lsp"; license = licenses.mit; maintainers = [ maintainers.ericdallo ]; platforms = graalvm11-ce.meta.platforms; diff --git a/pkgs/development/tools/misc/clojure-lsp/repository.nix b/pkgs/development/tools/misc/clojure-lsp/repository.nix deleted file mode 100644 index 122096e9657ad93..000000000000000 --- a/pkgs/development/tools/misc/clojure-lsp/repository.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ lib, stdenv, src, pname, version, leiningen }: - -stdenv.mkDerivation { - inherit src; - - name = "${pname}-${version}-repository"; - buildInputs = [ leiningen ]; - - postPatch = '' - # Hack to set maven cache in another directory since MAVEN_OPTS doesn't work - substituteInPlace project.clj \ - --replace ":main" ":local-repo \"$out\" :main" - ''; - - buildPhase = '' - runHook preBuild - - export LEIN_HOME="$(mktemp -d)" - lein with-profiles +native-image deps - - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - - find $out -type f \ - -name \*.lastUpdated -or \ - -name resolver-status.properties -or \ - -name _remote.repositories \ - -delete - - runHook postInstall - ''; - - dontFixup = true; - outputHashAlgo = "sha256"; - outputHashMode = "recursive"; - outputHash = "sha256-aWZPsJF32ENyYNZCHf5amxVF9pb+5M73JqG/OITZlak="; -} From 19e052d0d4e83501dbb4e8f692a12635d3c9bfe8 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Fri, 23 Apr 2021 00:04:13 +0200 Subject: [PATCH 12/28] python3Packages.stevedore: 3.2.2 -> 3.3.0 --- .../python-modules/stevedore/default.nix | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/stevedore/default.nix b/pkgs/development/python-modules/stevedore/default.nix index 06d614feaacf210..4a0cb6dcea43e00 100644 --- a/pkgs/development/python-modules/stevedore/default.nix +++ b/pkgs/development/python-modules/stevedore/default.nix @@ -10,23 +10,28 @@ buildPythonPackage rec { pname = "stevedore"; - version = "3.2.2"; + version = "3.3.0"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "f845868b3a3a77a2489d226568abe7328b5c2d4f6a011cc759dfa99144a521f0"; + sha256 = "sha256-Olu9BlK/VSdIhx6qc6So3CiZeGvEl6KqH8tNzbDevu4="; }; - propagatedBuildInputs = [ pbr setuptools six ] - ++ lib.optionals (pythonOlder "3.8") [ importlib-metadata ]; + propagatedBuildInputs = [ + pbr + setuptools + six + ] ++ lib.optionals (pythonOlder "3.8") [ + importlib-metadata + ]; doCheck = false; pythonImportsCheck = [ "stevedore" ]; meta = with lib; { description = "Manage dynamic plugins for Python applications"; - homepage = "https://pypi.python.org/pypi/stevedore"; + homepage = "https://docs.openstack.org/stevedore/"; license = licenses.asl20; }; } From a6c65d3e59ebee0e807149b7841b11163dff1d56 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Fri, 23 Apr 2021 09:03:42 +0200 Subject: [PATCH 13/28] python3Packages.stevedore: add maintainer --- pkgs/development/python-modules/stevedore/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/python-modules/stevedore/default.nix b/pkgs/development/python-modules/stevedore/default.nix index 4a0cb6dcea43e00..becd79f9838b935 100644 --- a/pkgs/development/python-modules/stevedore/default.nix +++ b/pkgs/development/python-modules/stevedore/default.nix @@ -33,5 +33,6 @@ buildPythonPackage rec { description = "Manage dynamic plugins for Python applications"; homepage = "https://docs.openstack.org/stevedore/"; license = licenses.asl20; + maintainers = with maintainers; [ fab ]; }; } From b81b6747eaa5d4de52b4ac95bef96f251addb5c4 Mon Sep 17 00:00:00 2001 From: bb2020 Date: Fri, 23 Apr 2021 23:07:45 +0300 Subject: [PATCH 14/28] gimx: cleanup --- pkgs/games/gimx/default.nix | 10 +++++++--- pkgs/games/gimx/noff.patch | 16 ---------------- 2 files changed, 7 insertions(+), 19 deletions(-) delete mode 100644 pkgs/games/gimx/noff.patch diff --git a/pkgs/games/gimx/default.nix b/pkgs/games/gimx/default.nix index ab208dfa003c6ab..0ae5a7917096a52 100644 --- a/pkgs/games/gimx/default.nix +++ b/pkgs/games/gimx/default.nix @@ -51,15 +51,19 @@ in stdenv.mkDerivation rec { mkdir -p $out/share cp -r ./loader/firmware $out/share/firmware cp -r ${gimx-config}/Linux $out/share/config - patch ${gimx-config}/Linux/Dualshock4.xml ${./noff.patch} -o $out/share/ds4.xml makeWrapper $out/bin/gimx $out/bin/gimx-with-confs \ --set GIMXCONF $out/share/config makeWrapper $out/bin/gimx $out/bin/gimx-test-ds4 \ - --set GIMXCONF $out/share \ + --set GIMXCONF $out/share/config \ --add-flags "--nograb" --add-flags "--curses" \ - --add-flags "-p /dev/ttyUSB0" --add-flags "-c ds4.xml" + --add-flags "-p /dev/ttyUSB0" --add-flags "-c Dualshock4.xml" + + makeWrapper $out/bin/gimx $out/bin/gimx-test-xone \ + --set GIMXCONF $out/share/config \ + --add-flags "--nograb" --add-flags "--curses" \ + --add-flags "-p /dev/ttyUSB0" --add-flags "-c XOnePadUsb.xml" ''; meta = with lib; { diff --git a/pkgs/games/gimx/noff.patch b/pkgs/games/gimx/noff.patch deleted file mode 100644 index 86b36adda23163b..000000000000000 --- a/pkgs/games/gimx/noff.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/Linux/Dualshock4.xml b/Linux/Dualshock4.xml -index 5e53ed3..45ee5ed 100644 ---- a/Linux/Dualshock4.xml -+++ b/Linux/Dualshock4.xml -@@ -94,6 +94,11 @@ - - - -+ -+ -+ -+ -+ - - - From d385b8f5972d4a0885c29c6bac87471bf622c133 Mon Sep 17 00:00:00 2001 From: Luke Granger-Brown Date: Sat, 24 Apr 2021 01:10:47 +0000 Subject: [PATCH 15/28] python3Packages.tensorflow: mark as requiring big-parallel The Bazel build part of tensorflow builds can really use as many cores as is available - to avoid blocking a small machine for literally hours while it churns away, mark the build as big-parallel so we can schedule it to run quickly on a machine with lots of cores. --- pkgs/development/python-modules/tensorflow/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/tensorflow/default.nix b/pkgs/development/python-modules/tensorflow/default.nix index 0e2df1a4678dace..0216c05eeacf170 100644 --- a/pkgs/development/python-modules/tensorflow/default.nix +++ b/pkgs/development/python-modules/tensorflow/default.nix @@ -325,6 +325,10 @@ let addOpenGLRunpath "$lib" done ''; + + requiredSystemFeatures = [ + "big-parallel" + ]; }; meta = with lib; { From c534a8434fb470aaf878ac8a398dfd6f68e008e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Wed, 21 Apr 2021 20:16:29 +0200 Subject: [PATCH 16/28] nixos-install: fix flake command --- nixos/modules/installer/tools/nixos-install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/installer/tools/nixos-install.sh b/nixos/modules/installer/tools/nixos-install.sh index 9d49d4055e43132..ea9667995e13f0a 100644 --- a/nixos/modules/installer/tools/nixos-install.sh +++ b/nixos/modules/installer/tools/nixos-install.sh @@ -125,7 +125,7 @@ fi # Resolve the flake. if [[ -n $flake ]]; then - flake=$(nix "${flakeFlags[@]}" flake info --json "${extraBuildFlags[@]}" "${lockFlags[@]}" -- "$flake" | jq -r .url) + flake=$(nix "${flakeFlags[@]}" flake metadata --json "${extraBuildFlags[@]}" "${lockFlags[@]}" -- "$flake" | jq -r .url) fi if [[ ! -e $NIXOS_CONFIG && -z $system && -z $flake ]]; then From 8495758f16081f05dffc92ca1015d8064218add4 Mon Sep 17 00:00:00 2001 From: Thomas Gerbet Date: Sat, 24 Apr 2021 12:07:34 +0200 Subject: [PATCH 17/28] zookeeper: 3.6.2 -> 3.6.3 Fixes CVE-2020-25649, CVE-2021-21295, CVE-2021-28165 and CVE-2021-21409. https://zookeeper.apache.org/doc/r3.6.3/releasenotes.html --- pkgs/development/libraries/zookeeper_mt/default.nix | 4 ++-- pkgs/servers/zookeeper/default.nix | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/zookeeper_mt/default.nix b/pkgs/development/libraries/zookeeper_mt/default.nix index 978321f96e7eb6d..8b9f6b70cfe5515 100644 --- a/pkgs/development/libraries/zookeeper_mt/default.nix +++ b/pkgs/development/libraries/zookeeper_mt/default.nix @@ -14,19 +14,19 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://apache/zookeeper/${zookeeper.pname}-${version}/apache-${zookeeper.pname}-${version}.tar.gz"; - sha512 = "16994067d460a1b6af6a71f3458c64ee32629e876a1ff6646d57be62f1a5adab57462af84074ecaded4186dd3fde035ee24cd9d578b8e5044073eb05f4ab9c3e"; + sha512 = "90643aa0ae1b9bf1f5e137dfbcee7e3c53db15e5038d7e406e4a1c345d6a0531bf7afa2b03f99d419ebd0fe892f127a7abfe582f786034ba823e53a0a9246bfb"; }; sourceRoot = "apache-${zookeeper.pname}-${version}/zookeeper-client/zookeeper-client-c"; nativeBuildInputs = [ autoreconfHook + pkg-config jre ]; buildInputs = [ openssl - pkg-config zookeeper ]; diff --git a/pkgs/servers/zookeeper/default.nix b/pkgs/servers/zookeeper/default.nix index c2315999b3caa21..d5bf7b9101484d8 100644 --- a/pkgs/servers/zookeeper/default.nix +++ b/pkgs/servers/zookeeper/default.nix @@ -1,12 +1,12 @@ -{ lib, stdenv, fetchurl, jre, makeWrapper, bash, coreutils, runtimeShell }: +{ lib, stdenv, fetchurl, jre, makeWrapper, bash, coreutils }: stdenv.mkDerivation rec { pname = "zookeeper"; - version = "3.6.2"; + version = "3.6.3"; src = fetchurl { url = "mirror://apache/zookeeper/${pname}-${version}/apache-${pname}-${version}-bin.tar.gz"; - sha512 = "caff5111bb6876b7124760bc006e6fa2523efa54b99321a3c9cd8192ea0d5596abc7d70a054b1aac9b20a411407dae7611c7aba870c23bff28eb1643ba499199"; + sha512 = "3f7b1b7d9cf5647d52ad0076c922e108fa956e986b5624667c493cf6d8ff09d3ca88f623c79a799fe49c72e868cb3c9d0f77cb69608de74a183b2cbad10bc827"; }; nativeBuildInputs = [ makeWrapper ]; @@ -15,6 +15,7 @@ stdenv.mkDerivation rec { phases = ["unpackPhase" "installPhase"]; installPhase = '' + runHook preInstall mkdir -p $out cp -R conf docs lib $out # Without this, zkCli.sh tries creating a log file in the Nix store. @@ -31,6 +32,7 @@ stdenv.mkDerivation rec { --prefix PATH : "${bash}/bin" done chmod -x $out/bin/zkEnv.sh + runHook postInstall ''; meta = with lib; { From c1db991404551371a3aeaeaaac303fca59886386 Mon Sep 17 00:00:00 2001 From: Yusuf Bera Ertan Date: Sat, 24 Apr 2021 14:38:26 +0300 Subject: [PATCH 18/28] pythonPackages.hydrus: 434 -> 436 --- pkgs/applications/graphics/hydrus/default.nix | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/graphics/hydrus/default.nix b/pkgs/applications/graphics/hydrus/default.nix index e42666beb1f409b..56ebbeb37228496 100644 --- a/pkgs/applications/graphics/hydrus/default.nix +++ b/pkgs/applications/graphics/hydrus/default.nix @@ -1,7 +1,6 @@ { lib , fetchFromGitHub , xz -, qt5 , wrapQtAppsHook , miniupnpc_2 , swftools @@ -10,14 +9,14 @@ pythonPackages.buildPythonPackage rec { pname = "hydrus"; - version = "434"; + version = "436"; format = "other"; src = fetchFromGitHub { owner = "hydrusnetwork"; repo = "hydrus"; rev = "v${version}"; - sha256 = "sha256-7Allc9zawja8DO2idv+MAYZ/cBRTCMd0mbgBLfEVii8="; + sha256 = "sha256-FXm8VUEY0OZ6/dc/qNwOXekhv5H2C9jjg/eNDoMvMn0=="; }; nativeBuildInputs = [ From 5577ad58497481f9736d7dc593884fc821484f14 Mon Sep 17 00:00:00 2001 From: James Landrein Date: Sat, 24 Apr 2021 17:41:31 +0200 Subject: [PATCH 19/28] kubeconform: 0.4.6 -> 0.4.7 --- pkgs/applications/networking/cluster/kubeconform/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/cluster/kubeconform/default.nix b/pkgs/applications/networking/cluster/kubeconform/default.nix index ca5e30154da4d27..c62cbb2a67a7055 100644 --- a/pkgs/applications/networking/cluster/kubeconform/default.nix +++ b/pkgs/applications/networking/cluster/kubeconform/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "kubeconform"; - version = "0.4.6"; + version = "0.4.7"; src = fetchFromGitHub { owner = "yannh"; repo = pname; rev = "v${version}"; - sha256 = "sha256-lduHYYskEPUimEX54ymOyo5jY7GGBB42YTefDMNS4qo="; + sha256 = "sha256-ahVdKMx3u2KnJ30wi9rV8JCVg9wPmbgdrtG8IpWWlCs="; }; vendorSha256 = null; From 7893552afadb4dc5dd81427cd6da673180e53a33 Mon Sep 17 00:00:00 2001 From: schnusch Date: Sat, 24 Apr 2021 18:12:46 +0200 Subject: [PATCH 20/28] esbuild: 0.11.13 -> 0.11.14 --- pkgs/development/tools/esbuild/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/esbuild/default.nix b/pkgs/development/tools/esbuild/default.nix index 33c47c7aed89473..47f8b217bc5f24d 100644 --- a/pkgs/development/tools/esbuild/default.nix +++ b/pkgs/development/tools/esbuild/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "esbuild"; - version = "0.11.13"; + version = "0.11.14"; src = fetchFromGitHub { owner = "evanw"; repo = "esbuild"; rev = "v${version}"; - sha256 = "0v358n2vpa1l1a699zyq43yzb3lcxjp3k4acppx0ggva05qn9zd1"; + sha256 = "0qxylzc7lzpsp5hm3dl5jvy9aca8azn8dmbjz9z5n5rkdmm8vd9p"; }; vendorSha256 = "1n5538yik72x94vzfq31qaqrkpxds5xys1wlibw2gn2am0z5c06q"; From b7536ac80fc0e41ee1bf68d293678fec99cfe99b Mon Sep 17 00:00:00 2001 From: Symphorien Gibol Date: Sat, 24 Apr 2021 11:42:21 +0200 Subject: [PATCH 21/28] dovecot_fts_xapian: 1.4.7 -> 1.4.9 --- pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix b/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix index eb3f8bf19cb778a..a20068767e5236b 100644 --- a/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix +++ b/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix @@ -1,13 +1,13 @@ { lib, stdenv, fetchFromGitHub, autoconf, automake, pkg-config, dovecot, libtool, xapian, icu64 }: stdenv.mkDerivation rec { pname = "fts-xapian"; - version = "1.4.7"; + version = "1.4.9"; src = fetchFromGitHub { owner = "grosjo"; repo = "fts-xapian"; rev = version; - sha256 = "K2d1FFAilIggNuP0e698s+9bN08x2s/0Jryp7pmeixc="; + sha256 = "0p4ps9h24vr9bldrcf9cdx6l4rdz5i8zyc58qp10h7cc3jilwddy"; }; buildInputs = [ dovecot xapian icu64 ]; @@ -28,8 +28,9 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://github.com/grosjo/fts-xapian"; description = "Dovecot FTS plugin based on Xapian"; - license = licenses.lgpl21; - maintainers = with maintainers; [ julm ]; + changelog = "https://github.com/grosjo/fts-xapian/releases"; + license = licenses.lgpl21Only; + maintainers = with maintainers; [ julm symphorien ]; platforms = platforms.unix; }; } From 2cc7846adf0031a9e8e24a44b677fd4b67996e0a Mon Sep 17 00:00:00 2001 From: Vincenzo Mantova Date: Sat, 24 Apr 2021 19:02:37 +0100 Subject: [PATCH 22/28] pdftk: mark unbroken on darwin --- pkgs/tools/typesetting/pdftk/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/tools/typesetting/pdftk/default.nix b/pkgs/tools/typesetting/pdftk/default.nix index f90d1d4a7ed1dfd..c1f04616729c8de 100644 --- a/pkgs/tools/typesetting/pdftk/default.nix +++ b/pkgs/tools/typesetting/pdftk/default.nix @@ -91,6 +91,5 @@ in stdenv.mkDerivation rec { license = licenses.gpl2Plus; maintainers = with maintainers; [ raskin averelld ]; platforms = platforms.unix; - broken = stdenv.isDarwin; }; } From 5b6e08ba57ac384c7206e941448746849cf34a51 Mon Sep 17 00:00:00 2001 From: Aksh Gupta Date: Sun, 25 Apr 2021 08:15:50 +0530 Subject: [PATCH 23/28] gptman: init at 0.8.0 --- pkgs/tools/system/gptman/default.nix | 22 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 24 insertions(+) create mode 100644 pkgs/tools/system/gptman/default.nix diff --git a/pkgs/tools/system/gptman/default.nix b/pkgs/tools/system/gptman/default.nix new file mode 100644 index 000000000000000..5209856edeb02b3 --- /dev/null +++ b/pkgs/tools/system/gptman/default.nix @@ -0,0 +1,22 @@ +{ lib, fetchFromGitHub, rustPlatform }: + +rustPlatform.buildRustPackage rec { + pname = "gptman"; + version = "0.8.0"; + + src = fetchFromGitHub { + owner = "cecton"; + repo = pname; + rev = "v${version}"; + sha256 = "11zyjrw4f8gi5s4sd2kl3sdiz0avq7clr8zqnwl04y61b3fpg7y1"; + }; + + cargoSha256 = "1cp8cyrd7ab8r2j28b69c2p3ysix5b9hpsqk07cmzgqwwml0qj12"; + + meta = with lib; { + description = "A CLI tool for Linux to copy a partition from one disk to another and more."; + homepage = "https://github.com/cecton/gptman"; + license = with licenses; [ asl20 /* or */ mit ]; + maintainers = with maintainers; [ akshgpt7 ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 016ffb025a675d7..19b5940cb65111e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5151,6 +5151,8 @@ in gpt2tc = callPackage ../tools/text/gpt2tc { }; + gptman = callPackage ../tools/system/gptman { }; + ldmtool = callPackage ../tools/misc/ldmtool { }; gphotos-sync = callPackage ../tools/backup/gphotos-sync { }; From ab6943a745059a8c177d7512c23ab7af58e822d1 Mon Sep 17 00:00:00 2001 From: Taeer Bar-Yam Date: Sun, 25 Apr 2021 02:43:09 -0400 Subject: [PATCH 24/28] macdylibbundler: delete duplicate dylibbundler (#119486) --- pkgs/tools/misc/dylibbundler/default.nix | 22 ---------------------- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 -- 3 files changed, 1 insertion(+), 24 deletions(-) delete mode 100644 pkgs/tools/misc/dylibbundler/default.nix diff --git a/pkgs/tools/misc/dylibbundler/default.nix b/pkgs/tools/misc/dylibbundler/default.nix deleted file mode 100644 index 7bf93bf88e7c336..000000000000000 --- a/pkgs/tools/misc/dylibbundler/default.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ lib, stdenv, fetchFromGitHub }: - -stdenv.mkDerivation { - name = "dylibbundler"; - - src = fetchFromGitHub { - owner = "auriamg"; - repo = "/macdylibbundler"; - rev = "27923fbf6d1bc4d18c18e118280c4fe51fc41a80"; - sha256 = "1mpd43hvpfp7pskfrjnd6vcmfii9v3p97q0ws50krkdvshp0bv2h"; - }; - - makeFlags = [ "PREFIX=$(out)" ]; - - meta = with lib; { - description = "Small command-line program that aims to make bundling .dylibs as easy as possible"; - homepage = "https://github.com/auriamg/macdylibbundler"; - license = licenses.mit; - maintainers = with maintainers; [ alexfmpe ]; - platforms = with platforms; darwin ++ linux; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 999c26e320bde9d..d405638a3407389 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -176,6 +176,7 @@ mapAliases ({ dvb_apps = throw "dvb_apps has been removed."; # added 2020-11-03 dwarf_fortress = dwarf-fortress; # added 2016-01-23 dwm-git = throw "dwm-git has been removed from nixpkgs, as it had no updates for 2 years not serving it's purpose."; # added 2021-02-07 + dylibbundler = macdylibbundler; # added 2021-04-24 elasticmq = throw "elasticmq has been removed in favour of elasticmq-server-bin"; # added 2021-01-17 emacsPackagesGen = emacsPackagesFor; # added 2018-08-18 emacsPackagesNgGen = emacsPackagesFor; # added 2018-08-18 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 61b0646ef9a76d9..dca92c4cc47c748 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2372,8 +2372,6 @@ in enableSSH = true; }; - dylibbundler = callPackage ../tools/misc/dylibbundler { }; - dynamic-colors = callPackage ../tools/misc/dynamic-colors { }; dyncall = callPackage ../development/libraries/dyncall { }; From d4f48c85476b2a7227e587c9a9cfb3b9b41af554 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Sun, 18 Apr 2021 06:12:16 +0200 Subject: [PATCH 25/28] =?UTF-8?q?coqPackages.tlc:=2020200328=20=E2=86=92?= =?UTF-8?q?=2020210316?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkgs/development/coq-modules/tlc/default.nix | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/pkgs/development/coq-modules/tlc/default.nix b/pkgs/development/coq-modules/tlc/default.nix index 6bbad1c6c2b1f1e..1e212b44e7251b1 100644 --- a/pkgs/development/coq-modules/tlc/default.nix +++ b/pkgs/development/coq-modules/tlc/default.nix @@ -1,23 +1,29 @@ { lib, mkCoqDerivation, coq, version ? null }: -with lib; mkCoqDerivation { +with lib; (mkCoqDerivation { pname = "tlc"; owner = "charguer"; inherit version; displayVersion = { tlc = false; }; defaultVersion = with versions; switch coq.coq-version [ + { case = range "8.12" "8.13"; out = "20210316"; } { case = range "8.10" "8.12"; out = "20200328"; } { case = range "8.6" "8.12"; out = "20181116"; } ] null; + release."20210316".sha256 = "1hlavnx20lxpf2iydbbxqmim9p8wdwv4phzp9ypij93yivih0g4a"; release."20200328".sha256 = "16vzild9gni8zhgb3qhmka47f8zagdh03k6nssif7drpim8233lx"; release."20181116".sha256 = "032lrbkxqm9d3fhf6nv1kq2z0mqd3czv3ijlbsjwnfh12xck4vpl"; - installFlags = [ "CONTRIB=$(out)/lib/coq/${coq.coq-version}/user-contrib" ]; - meta = { homepage = "http://www.chargueraud.org/softs/tlc/"; description = "A non-constructive library for Coq"; license = licenses.free; maintainers = [ maintainers.vbgl ]; }; -} +}).overrideAttrs (x: + if versionAtLeast x.version "20210316" + then {} + else { + installFlags = [ "CONTRIB=$(out)/lib/coq/${coq.coq-version}/user-contrib" ]; + } +) From b8ef16dc1e9d07f14be191d020048630079e5235 Mon Sep 17 00:00:00 2001 From: Jonas Chevalier Date: Sun, 25 Apr 2021 12:11:42 +0200 Subject: [PATCH 26/28] treefmt: init at 0.1.1 (#120521) * treefmt: init at 0.1.1 * Update pkgs/top-level/all-packages.nix Co-authored-by: Sandro * Update pkgs/development/tools/treefmt/default.nix Co-authored-by: Sandro Co-authored-by: Sandro --- pkgs/development/tools/treefmt/default.nix | 21 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 23 insertions(+) create mode 100644 pkgs/development/tools/treefmt/default.nix diff --git a/pkgs/development/tools/treefmt/default.nix b/pkgs/development/tools/treefmt/default.nix new file mode 100644 index 000000000000000..c90492c6aeca476 --- /dev/null +++ b/pkgs/development/tools/treefmt/default.nix @@ -0,0 +1,21 @@ +{ lib, rustPlatform, fetchFromGitHub }: +rustPlatform.buildRustPackage rec { + pname = "treefmt"; + version = "0.1.1"; + + src = fetchFromGitHub { + owner = "numtide"; + repo = "treefmt"; + rev = "v${version}"; + sha256 = "0a4yikkqppawii1q0kzsxwfp1aid688wa0lixjwfsl279lr69css"; + }; + + cargoSha256 = "08k60gd23yanfraxpbw9hi7jbqgsxz9mv1ci6q9piis5742zlj9s"; + + meta = { + description = "one CLI to format the code tree"; + homepage = "https://github.com/numtide/treefmt"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ zimbatm ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index da0b9580c1b0add..5e915c24aeb9916 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -31143,6 +31143,8 @@ in fac-build = callPackage ../development/tools/build-managers/fac {}; + treefmt = callPackage ../development/tools/treefmt { }; + bottom = callPackage ../tools/system/bottom {}; cagebreak = callPackage ../applications/window-managers/cagebreak/default.nix { From c94c1874da67916f5cf0f1ef63c3b92a197b3bd3 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sun, 25 Apr 2021 03:18:32 -0700 Subject: [PATCH 27/28] influxdb: 1.8.4 -> 1.8.5 (#120207) --- pkgs/servers/nosql/influxdb/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/nosql/influxdb/default.nix b/pkgs/servers/nosql/influxdb/default.nix index a178d43d231e628..98bd45516e27a41 100644 --- a/pkgs/servers/nosql/influxdb/default.nix +++ b/pkgs/servers/nosql/influxdb/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "influxdb"; - version = "1.8.4"; + version = "1.8.5"; src = fetchFromGitHub { owner = "influxdata"; repo = pname; rev = "v${version}"; - sha256 = "sha256-cL+QaUGMElYd6P+xXkQgRnL8BKo2C95bhCwy59kRnwo="; + sha256 = "sha256-qKkCTsSUejqJhMzAgFJYMGalAUepUaP/caocRwnKflg="; }; - vendorSha256 = "sha256-v4CEkhQiETeU6i186XIE/8z4T71gdKL+6W7sQ7/2RuI="; + vendorSha256 = "sha256-t7uwrsrF4LYdRjOhwdsCouDJXvD9364Ma5gvKezvi5o="; doCheck = false; From 4a67076273c8c566f90e3f0caadce941106314d9 Mon Sep 17 00:00:00 2001 From: sternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org> Date: Fri, 2 Apr 2021 13:34:15 +0200 Subject: [PATCH 28/28] koka: make sure runtime dependencies are host -> target buildPackages.stdenv.cc.cc is a C compiler that runs on the build platform and produces binaries for the host platform. This is not what we want. Also pkgsHostTarget.stdenv.cc is not the compiler we want as stdenv always runs on the previous stage so to say (the stdenv is used to build the package set, in the case of cross compiling this is not done natively). Thus pkgsHostTarget.targetPackages.stdenv.cc is what we want. --- pkgs/development/compilers/koka/default.nix | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/pkgs/development/compilers/koka/default.nix b/pkgs/development/compilers/koka/default.nix index 087b0ad1153b292..6523dcca2f6234f 100644 --- a/pkgs/development/compilers/koka/default.nix +++ b/pkgs/development/compilers/koka/default.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, cmake, gnumake, makeWrapper, mkDerivation, fetchFromGitHub +{ stdenv, pkgsHostTarget, cmake, makeWrapper, mkDerivation, fetchFromGitHub , alex, array, base, bytestring, cond, containers, directory, extra , filepath, haskeline, hpack, hspec, hspec-core, json, lib, mtl , parsec, process, regex-compat, text, time }: @@ -18,11 +18,12 @@ let src = "${src}/kklib"; nativeBuildInputs = [ cmake ]; }; + inherit (pkgsHostTarget.targetPackages.stdenv) cc; runtimeDeps = [ - buildPackages.stdenv.cc - buildPackages.stdenv.cc.bintools.bintools - gnumake - cmake + cc + cc.bintools.bintools + pkgsHostTarget.gnumake + pkgsHostTarget.cmake ]; in mkDerivation rec { @@ -42,7 +43,7 @@ mkDerivation rec { cp -a contrib $out/share/koka/v${version} cp -a kklib $out/share/koka/v${version} wrapProgram "$out/bin/koka" \ - --set CC "${lib.getBin buildPackages.stdenv.cc}/bin/${buildPackages.stdenv.cc.targetPrefix}cc" \ + --set CC "${lib.getBin cc}/bin/${cc.targetPrefix}cc" \ --prefix PATH : "${lib.makeSearchPath "bin" runtimeDeps}" ''; doCheck = false;