aboutsummaryrefslogtreecommitdiff
path: root/gnu/system
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2024-04-08 00:15:39 +0200
committerLudovic Courtès <ludo@gnu.org>2024-04-08 00:17:57 +0200
commit49f82fca4130ffcfb16aa0cf89750ab56fb99ad7 (patch)
tree43893f83819cf22e75f7476ea22e82c97c278fb4 /gnu/system
parent6062339156ecc42cac59af0d34e22fcc7da3aa4a (diff)
downloadguix-49f82fca4130ffcfb16aa0cf89750ab56fb99ad7.tar
guix-49f82fca4130ffcfb16aa0cf89750ab56fb99ad7.tar.gz
mapped-devices: luks: Specify modules needed at the top-level.
Fixes <https://issues.guix.gnu.org/70266>. * gnu/system/mapped-devices.scm (luks-device-mapping)[modules]: New field. (open-luks-device): Remove non-top-level ‘use-modules’ form. * gnu/system/linux-initrd.scm (raw-initrd): Remove modules that were added specifically for ‘luks-device-mapping’. Change-Id: I4253c3dd5e3cbcee41ec84fd57227abd428d1bd6
Diffstat (limited to 'gnu/system')
-rw-r--r--gnu/system/linux-initrd.scm7
-rw-r--r--gnu/system/mapped-devices.scm11
2 files changed, 4 insertions, 14 deletions
diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm
index 7868ff5723..561cfe2fd0 100644
--- a/gnu/system/linux-initrd.scm
+++ b/gnu/system/linux-initrd.scm
@@ -252,13 +252,6 @@ upon error."
(srfi srfi-1) ;for lvm-device-mapping
(srfi srfi-26)
- ;; FIXME: The following modules are for
- ;; LUKS-DEVICE-MAPPING. We should instead propagate
- ;; this info via gexps.
- ((gnu build file-systems)
- #:select (find-partition-by-luks-uuid))
- (rnrs bytevectors))
-
;; Load extra modules needed by the mapped device code.
#$@(append-map (compose mapped-device-kind-modules
mapped-device-type)
diff --git a/gnu/system/mapped-devices.scm b/gnu/system/mapped-devices.scm
index 4e135772a9..e56ead9e5e 100644
--- a/gnu/system/mapped-devices.scm
+++ b/gnu/system/mapped-devices.scm
@@ -206,12 +206,6 @@ option of @command{guix system}.\n")
(uuid-bytevector source)
source))
(keyfile #$key-file))
- ;; XXX: 'use-modules' should be at the top level.
- (use-modules (rnrs bytevectors) ;bytevector?
- ((gnu build file-systems)
- #:select (find-partition-by-luks-uuid
- system*/tty))
- ((guix build utils) #:select (mkdir-p)))
;; Create '/run/cryptsetup/' if it does not exist, as device locking
;; is mandatory for LUKS2.
@@ -287,7 +281,10 @@ option of @command{guix system}.\n")
(mapped-device-kind
(open open-luks-device)
(close close-luks-device)
- (check check-luks-device)))
+ (check check-luks-device)
+ (modules '((rnrs bytevectors) ;bytevector?
+ ((gnu build file-systems)
+ #:select (find-partition-by-luks-uuid system*/tty))))))
(define* (luks-device-mapping-with-options #:key key-file)
"Return a luks-device-mapping object with open modified to pass the arguments