diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 30c1a1332e13..bfd89bd6fa51 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1285,6 +1285,15 @@ fingerprint = "DD52 6BC7 767D BA28 16C0 95E5 6840 89CE 67EB B691"; }]; }; + ataraxiasjel = { + email = "nix@ataraxiadev.com"; + github = "AtaraxiaSjel"; + githubId = 5314145; + name = "Dmitriy"; + keys = [{ + fingerprint = "922D A6E7 58A0 FE4C FAB4 E4B2 FD26 6B81 0DF4 8DF2"; + }]; + }; atemu = { name = "Atemu"; email = "atemu.main+nixpkgs@gmail.com"; diff --git a/nixos/modules/services/hardware/udev.nix b/nixos/modules/services/hardware/udev.nix index 7a7f8330243a..d95261332419 100644 --- a/nixos/modules/services/hardware/udev.nix +++ b/nixos/modules/services/hardware/udev.nix @@ -46,6 +46,11 @@ let SUBSYSTEM=="input", KERNEL=="mice", TAG+="systemd" ''; + nixosInitrdRules = '' + # Mark dm devices as db_persist so that they are kept active after switching root + SUBSYSTEM=="block", KERNEL=="dm-[0-9]*", ACTION=="add|change", OPTIONS+="db_persist" + ''; + # Perform substitutions in all udev rules files. udevRulesFor = { name, udevPackages, udevPath, udev, systemd, binPackages, initrdBin ? null }: pkgs.runCommand name { preferLocalBuild = true; @@ -364,8 +369,10 @@ in EOF ''; + boot.initrd.services.udev.rules = nixosInitrdRules; + boot.initrd.systemd.additionalUpstreamUnits = [ - # TODO: "initrd-udevadm-cleanup-db.service" is commented out because of https://github.com/systemd/systemd/issues/12953 + "initrd-udevadm-cleanup-db.service" "systemd-udevd-control.socket" "systemd-udevd-kernel.socket" "systemd-udevd.service" diff --git a/nixos/modules/services/web-apps/mastodon.nix b/nixos/modules/services/web-apps/mastodon.nix index d159d2ade063..1e9e04dcc055 100644 --- a/nixos/modules/services/web-apps/mastodon.nix +++ b/nixos/modules/services/web-apps/mastodon.nix @@ -688,7 +688,7 @@ in { inherit (cfg) group; }; }) - (lib.attrsets.setAttrByPath [ cfg.user "packages" ] [ cfg.package mastodonEnv ]) + (lib.attrsets.setAttrByPath [ cfg.user "packages" ] [ cfg.package mastodonEnv pkgs.imagemagick ]) ]; users.groups.${cfg.group}.members = lib.optional cfg.configureNginx config.services.nginx.user; diff --git a/nixos/modules/tasks/filesystems/ext.nix b/nixos/modules/tasks/filesystems/ext.nix index 9b61f21643ab..edc0efc55213 100644 --- a/nixos/modules/tasks/filesystems/ext.nix +++ b/nixos/modules/tasks/filesystems/ext.nix @@ -3,13 +3,14 @@ let inInitrd = lib.any (fs: fs == "ext2" || fs == "ext3" || fs == "ext4") config.boot.initrd.supportedFilesystems; + inSystem = lib.any (fs: fs == "ext2" || fs == "ext3" || fs == "ext4") config.boot.supportedFilesystems; in { config = { - system.fsPackages = lib.mkIf (config.boot.initrd.systemd.enable -> inInitrd) [ pkgs.e2fsprogs ]; + system.fsPackages = lib.mkIf (config.boot.initrd.systemd.enable -> (inInitrd || inSystem)) [ pkgs.e2fsprogs ]; # As of kernel 4.3, there is no separate ext3 driver (they're also handled by ext4.ko) boot.initrd.availableKernelModules = lib.mkIf (config.boot.initrd.systemd.enable -> inInitrd) [ "ext2" "ext4" ]; diff --git a/nixos/tests/hibernate.nix b/nixos/tests/hibernate.nix index 7a4b331169a3..cb75322ca5f9 100644 --- a/nixos/tests/hibernate.nix +++ b/nixos/tests/hibernate.nix @@ -26,8 +26,9 @@ let powerManagement.resumeCommands = "systemctl --no-block restart backdoor.service"; - fileSystems = { - "/".device = "/dev/vda2"; + fileSystems."/" = { + device = "/dev/vda2"; + fsType = "ext3"; }; swapDevices = mkOverride 0 [ { device = "/dev/vda1"; } ]; boot.resumeDevice = mkIf systemdStage1 "/dev/vda1"; diff --git a/nixos/tests/systemd-initrd-luks-password.nix b/nixos/tests/systemd-initrd-luks-password.nix index e8e651f7b35f..55d0b4324b40 100644 --- a/nixos/tests/systemd-initrd-luks-password.nix +++ b/nixos/tests/systemd-initrd-luks-password.nix @@ -23,6 +23,8 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: { cryptroot2.device = "/dev/vdd"; }; virtualisation.bootDevice = "/dev/mapper/cryptroot"; + # test mounting device unlocked in initrd after switching root + virtualisation.fileSystems."/cryptroot2".device = "/dev/mapper/cryptroot2"; }; }; @@ -31,6 +33,8 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: { machine.wait_for_unit("multi-user.target") machine.succeed("echo -n supersecret | cryptsetup luksFormat -q --iter-time=1 /dev/vdc -") machine.succeed("echo -n supersecret | cryptsetup luksFormat -q --iter-time=1 /dev/vdd -") + machine.succeed("echo -n supersecret | cryptsetup luksOpen -q /dev/vdd cryptroot2") + machine.succeed("mkfs.ext4 /dev/mapper/cryptroot2") # Boot from the encrypted disk machine.succeed("bootctl set-default nixos-generation-1-specialisation-boot-luks.conf") @@ -44,5 +48,6 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: { machine.wait_for_unit("multi-user.target") assert "/dev/mapper/cryptroot on / type ext4" in machine.succeed("mount") + assert "/dev/mapper/cryptroot2 on /cryptroot2 type ext4" in machine.succeed("mount") ''; }) diff --git a/pkgs/applications/audio/puddletag/default.nix b/pkgs/applications/audio/puddletag/default.nix index 3fa0ea533b26..705820950b0d 100644 --- a/pkgs/applications/audio/puddletag/default.nix +++ b/pkgs/applications/audio/puddletag/default.nix @@ -59,8 +59,9 @@ python3.pkgs.buildPythonApplication rec { rapidfuzz ]; + # the file should be executable but it isn't so our wrapper doesn't run preFixup = '' - makeWrapperArgs+=("''${qtWrapperArgs[@]}") + chmod 555 $out/bin/puddletag ''; doCheck = false; # there are no tests diff --git a/pkgs/applications/networking/mullvad-vpn/default.nix b/pkgs/applications/networking/mullvad-vpn/default.nix index 0d79f41828f9..9b1a609d8325 100644 --- a/pkgs/applications/networking/mullvad-vpn/default.nix +++ b/pkgs/applications/networking/mullvad-vpn/default.nix @@ -43,11 +43,11 @@ in stdenv.mkDerivation rec { pname = "mullvad-vpn"; - version = "2022.4"; + version = "2022.5"; src = fetchurl { url = "https://github.com/mullvad/mullvadvpn-app/releases/download/${version}/MullvadVPN-${version}_amd64.deb"; - sha256 = "sha256-OwTtWzlZjHNFSN5/UjFJbcrPCv9+ucWYEL2idYjeozU="; + sha256 = "sha256-G3B4kb+ugukYtCVH3HHI43u3n9G0dX6WyYUA3X/sZ+o="; }; nativeBuildInputs = [ @@ -75,7 +75,6 @@ stdenv.mkDerivation rec { mv opt/Mullvad\ VPN/* $out/share/mullvad ln -s $out/share/mullvad/mullvad-{gui,vpn} $out/bin/ - ln -s $out/share/mullvad/resources/mullvad-daemon $out/bin/mullvad-daemon ln -sf $out/share/mullvad/resources/mullvad-problem-report $out/bin/mullvad-problem-report wrapProgram $out/bin/mullvad-vpn --set MULLVAD_DISABLE_UPDATE_NOTIFICATION 1 @@ -92,7 +91,7 @@ stdenv.mkDerivation rec { sourceProvenance = with sourceTypes; [ binaryNativeCode ]; license = licenses.gpl3Only; platforms = [ "x86_64-linux" ]; - maintainers = with maintainers; [ Br1ght0ne ymarkus ]; + maintainers = with maintainers; [ Br1ght0ne ymarkus ataraxiasjel ]; }; } diff --git a/pkgs/applications/networking/mullvad/libwg.nix b/pkgs/applications/networking/mullvad/libwg.nix index d54a2cafe8c0..287797fd8e67 100644 --- a/pkgs/applications/networking/mullvad/libwg.nix +++ b/pkgs/applications/networking/mullvad/libwg.nix @@ -13,7 +13,7 @@ buildGoModule { sourceRoot = "source/wireguard/libwg"; - vendorSha256 = "qvymWCdJ+GY90W/Fpdp+r1+mTq6O4LyN2Yw/PjKdFm0="; + vendorSha256 = "QNde5BqkSuqp3VJQOhn7aG6XknRDZQ62PE3WGhEJ5LU="; # XXX: hack to make the ar archive go to the correct place # This is necessary because passing `-o ...` to `ldflags` does not work diff --git a/pkgs/applications/networking/mullvad/mullvad.nix b/pkgs/applications/networking/mullvad/mullvad.nix index 65aeab2de49d..03bc81c8b543 100644 --- a/pkgs/applications/networking/mullvad/mullvad.nix +++ b/pkgs/applications/networking/mullvad/mullvad.nix @@ -15,16 +15,16 @@ }: rustPlatform.buildRustPackage rec { pname = "mullvad"; - version = "2022.4"; + version = "2022.5"; src = fetchFromGitHub { owner = "mullvad"; repo = "mullvadvpn-app"; rev = version; - hash = "sha256-s0Cmeh10lQUB5BK4i1qxkDy/ylx/3c6V66dxH+kcnLs="; + hash = "sha256-LiaELeEBIn/GZibKf25W3DHe+IkpaTY8UC7ca/7lp8k="; }; - cargoHash = "sha256-HPURL+CFUVLWRq8nzLiZxDhckgH76b6JBUObLGtoEEw="; + cargoHash = "sha256-KpBhdZce8Ug3ws7f1qg+5LtOMQw2Mf/uJsBg/TZSYyk="; nativeBuildInputs = [ pkg-config diff --git a/pkgs/build-support/build-pecl.nix b/pkgs/build-support/build-pecl.nix index 8168c7a3de18..d30a073d2fb9 100644 --- a/pkgs/build-support/build-pecl.nix +++ b/pkgs/build-support/build-pecl.nix @@ -9,7 +9,7 @@ , postPhpize ? "" , makeFlags ? [ ] , src ? fetchurl { - url = "http://pecl.php.net/get/${pname}-${version}.tgz"; + url = "https://pecl.php.net/get/${pname}-${version}.tgz"; inherit (args) sha256; } , ... diff --git a/pkgs/development/libraries/elpa/default.nix b/pkgs/development/libraries/elpa/default.nix index b3bde19fed02..11e8ac1309f6 100644 --- a/pkgs/development/libraries/elpa/default.nix +++ b/pkgs/development/libraries/elpa/default.nix @@ -69,6 +69,7 @@ stdenv.mkDerivation rec { ++ lib.optional (!avx2Support) "--disable-avx2" ++ lib.optional (!avx512Support) "--disable-avx512" ++ lib.optional (!stdenv.hostPlatform.isx86_64) "--disable-sse" + ++ lib.optional (!stdenv.hostPlatform.isx86_64) "--disable-sse-assembly" ++ lib.optional stdenv.hostPlatform.isx86_64 "--enable-sse-assembly" ++ lib.optionals enableCuda [ "--enable-nvidia-gpu" "--with-NVIDIA-GPU-compute-capability=${nvidiaArch}" ]; diff --git a/pkgs/development/php-packages/datadog_trace/default.nix b/pkgs/development/php-packages/datadog_trace/default.nix index f77433a8a9ec..4138be3f0651 100644 --- a/pkgs/development/php-packages/datadog_trace/default.nix +++ b/pkgs/development/php-packages/datadog_trace/default.nix @@ -7,7 +7,7 @@ buildPecl rec { src = fetchFromGitHub { owner = "DataDog"; repo = "dd-trace-php"; - rev = "${version}"; + rev = version; sha256 = "sha256-AYRBzE0Detg/IHXYutZUfPRMtfthxdkSjqD0M+VcTpY="; }; diff --git a/pkgs/development/php-packages/event/default.nix b/pkgs/development/php-packages/event/default.nix index 9bdfaa3b4b2c..a497d934627a 100644 --- a/pkgs/development/php-packages/event/default.nix +++ b/pkgs/development/php-packages/event/default.nix @@ -23,10 +23,7 @@ buildPecl { internalDeps = [ php.extensions.sockets ]; meta = with lib; { - description = '' - This is an extension to efficiently schedule I/O, time and signal based - events using the best I/O notification mechanism available for specific platform. - ''; + description = "Efficiently schedule I/O, time and signal based events using the best I/O notification mechanism available"; license = licenses.php301; homepage = "https://bitbucket.org/osmanov/pecl-event/"; maintainers = teams.php.members; diff --git a/pkgs/development/php-packages/openswoole/default.nix b/pkgs/development/php-packages/openswoole/default.nix index a01845d98823..4f2273321f2e 100644 --- a/pkgs/development/php-packages/openswoole/default.nix +++ b/pkgs/development/php-packages/openswoole/default.nix @@ -15,7 +15,11 @@ buildPecl { description = "Coroutine-based concurrency library and high performance programmatic server for PHP"; homepage = "https://www.openswoole.com/"; license = licenses.asl20; - longDescription = "Open Swoole allows you to build high-performance, async multi-tasking webservices and applications using an easy to use Coroutine API.\nOpen Swoole is a complete async solution that has built-in support for async programming via coroutines.\nIt offers a range of multi-threaded I/O modules (HTTP Server, WebSockets, TaskWorkers, Process Pools) out of the box and support for popular PHP clients like PDO for MySQL, and CURL.\nYou can use the sync or async, Coroutine API to write whole applications or create thousands of light weight Coroutines within one Linux process."; + longDescription = '' + Open Swoole allows you to build high-performance, async multi-tasking webservices and applications using an easy to use Coroutine API.\nOpen Swoole is a complete async solution that has built-in support for async programming via coroutines. + It offers a range of multi-threaded I/O modules (HTTP Server, WebSockets, TaskWorkers, Process Pools) out of the box and support for popular PHP clients like PDO for MySQL, and CURL. + You can use the sync or async, Coroutine API to write whole applications or create thousands of light weight Coroutines within one Linux process. + ''; maintainers = teams.php.members; }; } diff --git a/pkgs/development/php-packages/php-cs-fixer/default.nix b/pkgs/development/php-packages/php-cs-fixer/default.nix index 0d297a35a83c..7085ea167796 100644 --- a/pkgs/development/php-packages/php-cs-fixer/default.nix +++ b/pkgs/development/php-packages/php-cs-fixer/default.nix @@ -27,7 +27,7 @@ mkDerivation { meta = with lib; { description = "A tool to automatically fix PHP coding standards issues"; license = licenses.mit; - homepage = "http://cs.sensiolabs.org/"; + homepage = "https://cs.symfony.com/"; maintainers = with maintainers; [ jtojnar ] ++ teams.php.members; }; } diff --git a/pkgs/development/php-packages/pinba/default.nix b/pkgs/development/php-packages/pinba/default.nix index 1649da7c6545..7d4e020f406b 100644 --- a/pkgs/development/php-packages/pinba/default.nix +++ b/pkgs/development/php-packages/pinba/default.nix @@ -1,13 +1,13 @@ { buildPecl, lib, fetchFromGitHub }: -buildPecl { +buildPecl rec { pname = "pinba"; version = "1.1.2"; src = fetchFromGitHub { owner = "tony2001"; repo = "pinba_extension"; - rev = "RELEASE_1_1_2"; + rev = "RELEASE_${lib.replaceStrings ["."] ["_"] version}"; sha256 = "0wqcqq6sb51wiawa37hbd1h9dbvmyyndzdvz87xqji7lpr9vn8jy"; }; diff --git a/pkgs/development/php-packages/protobuf/default.nix b/pkgs/development/php-packages/protobuf/default.nix index 0eef321ff067..94c15c95946a 100644 --- a/pkgs/development/php-packages/protobuf/default.nix +++ b/pkgs/development/php-packages/protobuf/default.nix @@ -9,9 +9,7 @@ buildPecl { buildInputs = [ pcre2 ]; meta = with lib; { - description = '' - Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data. - ''; + description = "Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data."; license = licenses.bsd3; homepage = "https://developers.google.com/protocol-buffers/"; maintainers = teams.php.members; diff --git a/pkgs/development/php-packages/yaml/default.nix b/pkgs/development/php-packages/yaml/default.nix index d4803c9d21ac..3a385e8f9bbf 100644 --- a/pkgs/development/php-packages/yaml/default.nix +++ b/pkgs/development/php-packages/yaml/default.nix @@ -13,7 +13,7 @@ buildPecl { meta = with lib; { description = "YAML-1.1 parser and emitter"; license = licenses.mit; - homepage = "http://bd808.com/pecl-file_formats-yaml/"; + homepage = "https://bd808.com/pecl-file_formats-yaml/"; maintainers = teams.php.members; }; }