aboutsummaryrefslogtreecommitdiff
path: root/gnu/system.scm
diff options
context:
space:
mode:
authorAndy Wingo <wingo@igalia.com>2017-09-20 15:11:41 +0200
committerAndy Wingo <wingo@igalia.com>2017-09-20 15:40:32 +0200
commit96bc6518002c3b2ad9f15cf36991b20bebcbbe8a (patch)
treeaee86bb4240c7e131d257a4f0f072509db09c38c /gnu/system.scm
parentc68c201fdd429140da1c606861c9296b9cb01265 (diff)
downloadguix-96bc6518002c3b2ad9f15cf36991b20bebcbbe8a.tar
guix-96bc6518002c3b2ad9f15cf36991b20bebcbbe8a.tar.gz
gnu: system: Fix computation of boot parameters for LUKS devices.
* gnu/system.scm (read-boot-parameters): Fix store-device computation for root devices of type "device", like the LUKS partition described in the manual. From a patch from https://debbugs.gnu.org/cgi/bugreport.cgi?bug=28445#23. Signed-off-by: Andy Wingo <wingo@igalia.com>
Diffstat (limited to 'gnu/system.scm')
-rw-r--r--gnu/system.scm5
1 files changed, 3 insertions, 2 deletions
diff --git a/gnu/system.scm b/gnu/system.scm
index 88b5346797..b6c087a031 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -278,6 +278,8 @@ directly by the user."
(store-device
(match (assq 'store rest)
+ (('store ('device #f) _ ...)
+ root-device)
(('store ('device device) _ ...)
(device-sexp->device device))
(_ ;the old format
@@ -909,8 +911,7 @@ listed in OS. The C library expects to find it under
"Given FS, a <file-system> object, return a value suitable for use as the
device in a <menu-entry>."
(case (file-system-title fs)
- ((uuid) (file-system-device fs))
- ((label) (file-system-device fs))
+ ((uuid label device) (file-system-device fs))
(else #f)))
(define (operating-system-boot-parameters os system.drv root-device)