summaryrefslogtreecommitdiff
path: root/gnu/build/linux-boot.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2020-05-02 17:31:28 +0200
committerMarius Bakke <mbakke@fastmail.com>2020-05-02 17:31:28 +0200
commit50e6c1bf2ef2f006baa8cac80dfbb12ca2ba6d64 (patch)
tree64f16d207bad28a9dfda9cce95e6337483a40066 /gnu/build/linux-boot.scm
parenta8cb1e72ef351330d1521833c1b270dcc0da593f (diff)
parentafc57916e5398737e13d94b3823983783221eb63 (diff)
downloadguix-patches-50e6c1bf2ef2f006baa8cac80dfbb12ca2ba6d64.tar
guix-patches-50e6c1bf2ef2f006baa8cac80dfbb12ca2ba6d64.tar.gz
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/build/linux-boot.scm')
-rw-r--r--gnu/build/linux-boot.scm11
1 files changed, 7 insertions, 4 deletions
diff --git a/gnu/build/linux-boot.scm b/gnu/build/linux-boot.scm
index d1c9f47f33..c6f9df5f29 100644
--- a/gnu/build/linux-boot.scm
+++ b/gnu/build/linux-boot.scm
@@ -565,10 +565,13 @@ upon error."
;; The "--root=SPEC" kernel command-line option always provides a
;; string, but the string can represent a device, a UUID, or a
;; label. So check for all three.
- (let ((root (cond ((string-prefix? "/" root) root)
- ((uuid root) => identity)
- (else (file-system-label root)))))
- (mount-root-file-system (canonicalize-device-spec root)
+ (let ((device-spec (cond ((string-prefix? "/" root) root)
+ ((uuid root) => identity)
+ ((string-contains root ":/") #f) ; nfs
+ (else (file-system-label root)))))
+ (mount-root-file-system (if device-spec
+ (canonicalize-device-spec device-spec)
+ root)
root-fs-type
#:volatile-root? volatile-root?
#:flags root-fs-flags