From 38b68216a50fa6b80c93361c6438bb2cd7aa37c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Fonseca?= Date: Mon, 8 Apr 2024 01:14:26 +0100 Subject: [PATCH] nixos/zfs: install zfs udev rules on stage1 Install zfs udev rules on initrd, so that /dev/zvol gets populated. --- nixos/modules/tasks/filesystems/zfs.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix index d11424c11c81..a3e332acbda9 100644 --- a/nixos/modules/tasks/filesystems/zfs.nix +++ b/nixos/modules/tasks/filesystems/zfs.nix @@ -576,6 +576,8 @@ in copy_bin_and_libs ${cfgZfs.package}/sbin/zfs copy_bin_and_libs ${cfgZfs.package}/sbin/zdb copy_bin_and_libs ${cfgZfs.package}/sbin/zpool + copy_bin_and_libs ${cfgZfs.package}/lib/udev/vdev_id + copy_bin_and_libs ${cfgZfs.package}/lib/udev/zvol_id ''; extraUtilsCommandsTest = mkIf (!config.boot.initrd.systemd.enable) '' @@ -632,7 +634,12 @@ in zfs = "${cfgZfs.package}/sbin/zfs"; awk = "${pkgs.gawk}/bin/awk"; }; + storePaths = [ + "${cfgZfs.package}/lib/udev/vdev_id" + "${cfgZfs.package}/lib/udev/zvol_id" + ]; }; + services.udev.packages = [cfgZfs.package]; # to hook zvol naming, in stage 1 }; systemd.shutdownRamfs.contents."/etc/systemd/system-shutdown/zpool".source = pkgs.writeShellScript "zpool-sync-shutdown" ''