[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#29932] [PATCH v2 1/2] system: Split up operating-system-kernel-argu
From: |
Danny Milosavljevic |
Subject: |
[bug#29932] [PATCH v2 1/2] system: Split up operating-system-kernel-arguments into operating-system-boot-kernel-arguments and operating-system-user-kernel-arguments. |
Date: |
Fri, 12 Jan 2018 11:59:53 +0100 |
* gnu/system.scm (operating-system-kernel-arguments): Remove.
(operating-system-boot-kernel-arguments): New variable. Export it.
(bootable-kernel-arguments): Remove.
(boot-kernel-arguments): Remove.
(operating-system-boot-parameters): Adapt to the above.
---
gnu/system.scm | 35 ++++++++++++++++-------------------
gnu/system/vm.scm | 3 ++-
2 files changed, 18 insertions(+), 20 deletions(-)
diff --git a/gnu/system.scm b/gnu/system.scm
index 40e259f43..51f45f6ac 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -73,7 +73,8 @@
operating-system-hosts-file
operating-system-kernel
operating-system-kernel-file
- operating-system-kernel-arguments
+ operating-system-boot-kernel-arguments
+ operating-system-user-kernel-arguments
operating-system-initrd
operating-system-users
operating-system-groups
@@ -90,7 +91,6 @@
operating-system-activation-script
operating-system-user-accounts
operating-system-shepherd-service-names
- operating-system-user-kernel-arguments
operating-system-derivation
operating-system-profile
@@ -126,10 +126,9 @@
;;;
;;; Code:
-(define (bootable-kernel-arguments kernel-arguments system.drv root-device)
- "Prepend extra arguments to KERNEL-ARGUMENTS that allow SYSTEM.DRV to be
-booted from ROOT-DEVICE"
- (cons* (string-append "--root="
+(define (boot-kernel-arguments system.drv root-device)
+ "Kernel-arguments that allow SYSTEM.DRV to be booted from ROOT-DEVICE"
+ (list (string-append "--root="
(if (uuid? root-device)
;; Note: Always use the DCE format because that's
@@ -138,8 +137,7 @@ booted from ROOT-DEVICE"
(uuid->string (uuid-bytevector root-device) 'dce)
root-device))
#~(string-append "--system=" #$system.drv)
- #~(string-append "--load=" #$system.drv "/boot")
- kernel-arguments))
+ #~(string-append "--load=" #$system.drv "/boot")))
;; System-wide configuration.
;; TODO: Add per-field docstrings/stexi.
@@ -201,12 +199,11 @@ booted from ROOT-DEVICE"
(sudoers-file operating-system-sudoers-file ; file-like
(default %sudoers-specification)))
-(define (operating-system-kernel-arguments os system.drv root-device)
- "Return all the kernel arguments, including the ones not specified
-directly by the user."
- (bootable-kernel-arguments (operating-system-user-kernel-arguments os)
- system.drv
- root-device))
+(define* (operating-system-boot-kernel-arguments os)
+ "Kernel arguments that allow OS (only) to be booted."
+ (let* ((root-file-system (operating-system-root-file-system os))
+ (root-device (file-system-device root-file-system)))
+ (boot-kernel-arguments os root-device)))
;;;
@@ -319,8 +316,7 @@ The object has its kernel-arguments extended in order to
make it bootable."
(if params
(boot-parameters
(inherit params)
- (kernel-arguments (bootable-kernel-arguments kernel-arguments
- system root)))
+ (kernel-arguments (append (boot-kernel-arguments system root)
kernel-arguments)))
#f)))
(define (boot-parameters->menu-entry conf)
@@ -940,9 +936,10 @@ kernel arguments for that derivation to <boot-parameters>."
(root-device root-device)
(kernel (operating-system-kernel-file os))
(kernel-arguments
- (if system.drv
- (operating-system-kernel-arguments os system.drv root-device)
- (operating-system-user-kernel-arguments os)))
+ (append (if system.drv
+ (operating-system-boot-kernel-arguments os)
+ '())
+ (operating-system-user-kernel-arguments os)))
(initrd initrd)
(bootloader-name bootloader-name)
(store-device (ensure-not-/dev (fs->boot-device store)))
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
index 496f2ac4e..6ba76142b 100644
--- a/gnu/system/vm.scm
+++ b/gnu/system/vm.scm
@@ -716,7 +716,8 @@ it is mostly useful when FULL-BOOT? is true."
#:disk-image-size disk-image-size)))
(define kernel-arguments
#~(list #$@(if graphic? #~() #~("console=ttyS0"))
- #+@(operating-system-kernel-arguments os os-drv "/dev/vda1")))
+ #+@(append (operating-system-boot-kernel-arguments os)
+ (operating-system-user-kernel-arguments os))))
(define qemu-exec
#~(list (string-append #$qemu "/bin/" #$(qemu-command (%current-system)))
[bug#29932] [PATCH v2 1/2] system: Split up operating-system-kernel-arguments into operating-system-boot-kernel-arguments and operating-system-user-kernel-arguments.,
Danny Milosavljevic <=