From: Danny Milosavljevic <dannym@scratchpost.org>
To: 29932@debbugs.gnu.org
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 [thread overview]
Message-ID: <20180112105953.7198-1-dannym@scratchpost.org> (raw)
In-Reply-To: <20180101132200.26157-1-dannym@scratchpost.org>
* 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)))
\f
;;;
@@ -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)))
next prev parent reply other threads:[~2018-01-12 11:01 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-01 13:22 [bug#29932] [PATCH 0/2] Clean up operating-system-kernel-arguments Danny Milosavljevic
2018-01-01 13:27 ` [bug#29932] [PATCH 1/2] system: Inline operating-system-kernel-arguments Danny Milosavljevic
2018-01-01 13:27 ` [bug#29932] [PATCH 2/2] system: Rename operating-system-user-kernel-arguments to operating-system-kernel-arguments Danny Milosavljevic
2018-01-08 9:26 ` [bug#29932] [PATCH 0/2] Clean up operating-system-kernel-arguments Ludovic Courtès
2018-01-09 8:21 ` Danny Milosavljevic
2018-01-09 8:52 ` Ludovic Courtès
2018-01-09 10:34 ` Danny Milosavljevic
2018-01-09 11:53 ` Ludovic Courtès
2018-01-09 10:39 ` Danny Milosavljevic
2018-01-09 18:59 ` Danny Milosavljevic
2018-01-11 16:43 ` Ludovic Courtès
2018-01-12 10:59 ` Danny Milosavljevic [this message]
2018-01-12 11:01 ` [bug#29932] [PATCH v2 2/2] system: Rename operating-system-user-kernel-arguments to operating-system-kernel-arguments Danny Milosavljevic
2018-01-12 14:06 ` Ludovic Courtès
2018-01-12 14:43 ` Danny Milosavljevic
2020-10-08 17:50 ` Maxim Cournoyer
2021-07-13 11:56 ` bug#29932: [PATCH 0/2] Clean up operating-system-kernel-arguments Maxim Cournoyer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180112105953.7198-1-dannym@scratchpost.org \
--to=dannym@scratchpost.org \
--cc=29932@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.