about summary refs log tree commit diff
path: root/pkgs/tools/filesystems/stratisd
diff options
context:
space:
mode:
authorWill Fancher <elvishjerricco@gmail.com>2023-05-25 14:06:31 -0400
committerGitHub <noreply@github.com>2023-05-25 14:06:31 -0400
commitfe43923a70ecb7308cb15eef4844cff297193b65 (patch)
treef170b4137b9d176b077b1296ab0b41202033d29f /pkgs/tools/filesystems/stratisd
parenta941557fafe4f4c37e782613b346e90f96414971 (diff)
parentfeb5a3cdcd523e7884a5ff4635bac63d632197b1 (diff)
Merge pull request #229767 from mberndt123/mberndt123/stratis-rootfs
nixos/stratis: initrd support for stratis root volumes
Diffstat (limited to 'pkgs/tools/filesystems/stratisd')
-rw-r--r--pkgs/tools/filesystems/stratisd/default.nix10
1 files changed, 10 insertions, 0 deletions
diff --git a/pkgs/tools/filesystems/stratisd/default.nix b/pkgs/tools/filesystems/stratisd/default.nix
index f1b21bbfbecd6..e52827588dfc6 100644
--- a/pkgs/tools/filesystems/stratisd/default.nix
+++ b/pkgs/tools/filesystems/stratisd/default.nix
@@ -76,6 +76,8 @@ stdenv.mkDerivation rec {
     lvm2
   ];
 
+  outputs = ["out" "initrd"];
+
   EXECUTABLES_PATHS = lib.makeBinPath ([
     xfsprogs
     thin-provisioning-tools
@@ -97,6 +99,14 @@ stdenv.mkDerivation rec {
 
   # remove files for supporting dracut
   postInstall = ''
+    mkdir -p "$initrd/bin"
+    cp "dracut/90stratis/stratis-rootfs-setup" "$initrd/bin"
+    mkdir -p "$initrd/lib/systemd/system"
+    substitute "dracut/90stratis/stratisd-min.service" "$initrd/lib/systemd/system/stratisd-min.service" \
+      --replace /usr "$out" \
+      --replace mkdir "${coreutils}/bin/mkdir"
+    mkdir -p "$initrd/lib/udev/rules.d"
+    cp udev/61-stratisd.rules "$initrd/lib/udev/rules.d"
     rm -r "$out/lib/dracut"
     rm -r "$out/lib/systemd/system-generators"
   '';