diff --git a/nixos/modules/installer/tools/nixos-install.sh b/nixos/modules/installer/tools/nixos-install.sh index 9d49d4055e4313..ea9667995e13f0 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 diff --git a/nixos/modules/services/mail/exim.nix b/nixos/modules/services/mail/exim.nix index 892fbd33214a27..8927d84b478c69 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 = '' diff --git a/nixos/modules/services/mail/spamassassin.nix b/nixos/modules/services/mail/spamassassin.nix index 4e642542ec666d..ac878222b26a26 100644 --- a/nixos/modules/services/mail/spamassassin.nix +++ b/nixos/modules/services/mail/spamassassin.nix @@ -126,19 +126,36 @@ in }; systemd.services.sa-update = { + # Needs to be able to contact the update server. + wants = [ "network-online.target" ]; + after = [ "network-online.target" ]; + + serviceConfig = { + Type = "oneshot"; + User = "spamd"; + Group = "spamd"; + StateDirectory = "spamassassin"; + ExecStartPost = "+${pkgs.systemd}/bin/systemctl -q --no-block try-reload-or-restart spamd.service"; + }; + 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=$? + ${pkgs.spamassassin}/bin/sa-update --verbose --gpghomedir=/var/lib/spamassassin/sa-update-keys/ + rc=$? set -e - if [ $v -gt 1 ]; then - echo "sa-update execution error" - exit $v + + if [[ $rc -gt 1 ]]; then + # sa-update failed. + exit $rc fi - if [ $v -eq 0 ]; then - systemctl reload spamd.service + + 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 ''; }; @@ -153,32 +170,22 @@ in }; systemd.services.spamd = { - description = "Spam Assassin Server"; + description = "SpamAssassin Server"; wantedBy = [ "multi-user.target" ]; - after = [ "network.target" ]; + wants = [ "sa-update.service" ]; + after = [ + "network.target" + "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"; }; - - # 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 - ''; }; }; } 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 2ea191426ce986..63e01dd054a508 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 @@ -236,9 +236,12 @@ def main() -> None: 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): diff --git a/nixos/modules/virtualisation/nixos-containers.nix b/nixos/modules/virtualisation/nixos-containers.nix index f15d587584124e..7a1f11ce40d606 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). ''; }; diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 1ce55e1eac4ef9..1ca1c3854f8706 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -75,6 +75,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 00000000000000..a653361494f960 --- /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" + ) + ) + ''; +}) + diff --git a/pkgs/applications/graphics/hydrus/default.nix b/pkgs/applications/graphics/hydrus/default.nix index e42666beb1f409..56ebbeb3722849 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 = [ diff --git a/pkgs/applications/networking/cluster/kubeconform/default.nix b/pkgs/applications/networking/cluster/kubeconform/default.nix index ca5e30154da4d2..c62cbb2a67a705 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; diff --git a/pkgs/development/compilers/koka/default.nix b/pkgs/development/compilers/koka/default.nix index 087b0ad1153b29..6523dcca2f6234 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; diff --git a/pkgs/development/coq-modules/tlc/default.nix b/pkgs/development/coq-modules/tlc/default.nix index 6bbad1c6c2b1f1..1e212b44e7251b 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" ]; + } +) diff --git a/pkgs/development/libraries/zookeeper_mt/default.nix b/pkgs/development/libraries/zookeeper_mt/default.nix index 978321f96e7eb6..8b9f6b70cfe551 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/development/python-modules/stevedore/default.nix b/pkgs/development/python-modules/stevedore/default.nix index c9ea20440482c9..cf1a50c49bef3b 100644 --- a/pkgs/development/python-modules/stevedore/default.nix +++ b/pkgs/development/python-modules/stevedore/default.nix @@ -18,15 +18,21 @@ buildPythonPackage rec { sha256 = "3a5bbd0652bf552748871eaa73a4a8dc2899786bc497a2aa1fcb4dcdb0debeee"; }; - 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; + maintainers = with maintainers; [ fab ]; }; } diff --git a/pkgs/development/python-modules/tensorflow/default.nix b/pkgs/development/python-modules/tensorflow/default.nix index 0e2df1a4678dac..0216c05eeacf17 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; { diff --git a/pkgs/development/tools/esbuild/default.nix b/pkgs/development/tools/esbuild/default.nix index 33c47c7aed8947..47f8b217bc5f24 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"; diff --git a/pkgs/development/tools/misc/clojure-lsp/default.nix b/pkgs/development/tools/misc/clojure-lsp/default.nix index c0d4567fe0b77b..dc342e501e4ce2 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 122096e9657ad9..00000000000000 --- 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="; -} diff --git a/pkgs/development/tools/treefmt/default.nix b/pkgs/development/tools/treefmt/default.nix new file mode 100644 index 00000000000000..c90492c6aeca47 --- /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/games/gimx/default.nix b/pkgs/games/gimx/default.nix index ab208dfa003c6a..0ae5a7917096a5 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 86b36adda23163..00000000000000 --- 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 @@ - - - -+ -+ -+ -+ -+ - - - diff --git a/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix b/pkgs/servers/mail/dovecot/plugins/fts_xapian/default.nix index eb3f8bf19cb778..a20068767e5236 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; }; } diff --git a/pkgs/servers/mail/spamassassin/default.nix b/pkgs/servers/mail/spamassassin/default.nix index 03a135d6c768b5..cc06cc6ee6d319 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"; @@ -29,7 +29,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 ''; diff --git a/pkgs/servers/nosql/influxdb/default.nix b/pkgs/servers/nosql/influxdb/default.nix index a178d43d231e62..98bd45516e27a4 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; diff --git a/pkgs/servers/zookeeper/default.nix b/pkgs/servers/zookeeper/default.nix index c2315999b3caa2..d5bf7b9101484d 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; { diff --git a/pkgs/tools/misc/dylibbundler/default.nix b/pkgs/tools/misc/dylibbundler/default.nix deleted file mode 100644 index 7bf93bf88e7c33..00000000000000 --- 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/tools/system/gptman/default.nix b/pkgs/tools/system/gptman/default.nix new file mode 100644 index 00000000000000..5209856edeb02b --- /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/tools/typesetting/pdftk/default.nix b/pkgs/tools/typesetting/pdftk/default.nix index f90d1d4a7ed1df..c1f04616729c8d 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; }; } diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index e4a8fee3076e13..d7f1fff525d65d 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 9d3bcc608611d7..9a0aafeed49b4f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2374,8 +2374,6 @@ in enableSSH = true; }; - dylibbundler = callPackage ../tools/misc/dylibbundler { }; - dynamic-colors = callPackage ../tools/misc/dynamic-colors { }; dyncall = callPackage ../development/libraries/dyncall { }; @@ -5153,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 { }; @@ -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 {