diff options
author | Nicolas Graves <ngraves@ngraves.fr> | 2024-02-04 03:19:56 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2024-02-19 18:42:56 +0100 |
commit | 3378c1a9c65a9eb8ef13d7d738473e435cbbe3b6 (patch) | |
tree | 3930292d41d4d291f8aa5181a63d1523758f12aa /gnu/system.scm | |
parent | 27ee6f06d0ecab58ca3b739c911bacefda440177 (diff) | |
download | guix-3378c1a9c65a9eb8ef13d7d738473e435cbbe3b6.tar.gz |
system: Omit “root=” kernel argument when root device is “none”.
* gnu/system.scm (bootable-kernel-arguments): Fallback to tmpfs if root is "none". Change-Id: I35a656e71169dc786e5256d98a3c04c65043086d Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/system.scm')
-rw-r--r-- | gnu/system.scm | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/gnu/system.scm b/gnu/system.scm index 3cd64a5c9f..aede35775e 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -15,6 +15,7 @@ ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> ;;; Copyright © 2021 raid5atemyhomework <raid5atemyhomework@protonmail.com> ;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu> +;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -197,15 +198,18 @@ VERSION is the target version of the boot-parameters record." ;; compatibility when producing bootloader configurations for older ;; generations. (define version>0? (> version 0)) - (list (string-append (if version>0? "root=" "--root=") - ;; Note: Always use the DCE format because that's what - ;; (gnu build linux-boot) expects for the 'root' - ;; kernel command-line option. - (file-system-device->string root-device - #:uuid-type 'dce)) - #~(string-append (if #$version>0? "gnu.system=" "--system=") #$system) - #~(string-append (if #$version>0? "gnu.load=" "--load=") - #$system "/boot"))) + (let ((root (file-system-device->string root-device + #:uuid-type 'dce))) + (append + (if (string=? root "none") + '() ; Ignore the case where the root is "none" (typically tmpfs). + ;; Note: Always use the DCE format because that's what + ;; (gnu build linux-boot) expects for the 'root' + ;; kernel command-line option. + (list (string-append (if version>0? "root=" "--root=") root))) + (list #~(string-append (if #$version>0? "gnu.system=" "--system=") #$system) + #~(string-append (if #$version>0? "gnu.load=" "--load=") + #$system "/boot"))))) ;; System-wide configuration. |