Subject: [bug#45723] [PATCH] gnu: Correct ZFS udev rules.

From: raid5atemyhomework <[email-masked]>
Date: Fri, 08 Jan 2021 05:31:17 +0000

So ZFS has some udev rules, except one of them uses `/sbin/modprobe`, so we need to substitute it with an appropriate `modprobe`.

Slowly and surely ZFS is coming to Guix...

>From 14322771ca333ff269f67cc41c4dcff8809da03b Mon Sep 17 00:00:00 2001
From: raid5atemyhomework <[email-masked]>
Date: Fri, 8 Jan 2021 13:11:53 +0800
Subject: [PATCH] gnu: Correct ZFS udev rules.

* gnu/packages/file-systems.scm (zfs): Add substitutions for /sbin/modprobe
in udev rules.
---
 gnu/packages/file-systems.scm | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm
index 2c5ad95d63..f74d519b33 100644
--- a/gnu/packages/file-systems.scm
+++ b/gnu/packages/file-systems.scm
@@ -885,7 +885,8 @@ APFS.")
              (let ((out        (assoc-ref outputs "out"))
                    (src        (assoc-ref outputs "src"))
                    (util-linux (assoc-ref inputs "util-linux"))
-                   (nfs-utils  (assoc-ref inputs "nfs-utils")))
+                   (nfs-utils  (assoc-ref inputs "nfs-utils"))
+                   (kmod       (assoc-ref inputs "kmod-runtime")))
                (substitute* "contrib/Makefile.in"
                  ;; This is not configurable nor is its hard-coded /usr prefix.
                  ((" initramfs") ""))
@@ -915,7 +916,9 @@ APFS.")
                (substitute* "contrib/pyzfs/Makefile.in"
                  ((".*install-lib.*") ""))
                (substitute* '("Makefile.am" "Makefile.in")
-                 (("\\$\\(prefix)/src") (string-append src "/src"))))
+                 (("\\$\\(prefix)/src") (string-append src "/src")))
+               (substitute* (find-files "udev/rules.d/" ".rules.in$")
+                 (("/sbin/modprobe") (string-append kmod "/bin/modprobe"))))
              #t))
          (replace 'build
            (lambda _ (invoke "make")))
@@ -947,7 +950,8 @@ APFS.")
        ("python-cffi" ,python-cffi)
        ("util-linux" ,util-linux)
        ("util-linux:lib" ,util-linux "lib")
-       ("zlib" ,zlib)))
+       ("zlib" ,zlib)
+       ("kmod-runtime" ,kmod)))
     (home-page "https://zfsonlinux.org/")
     (synopsis "Native ZFS on Linux")
     (description
--
2.30.0