From ee2a6304f3bcf19df895310aedff372ed7e17c34 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 17 Jul 2015 01:07:50 +0200 Subject: system: Add 'kernel-arguments' field. * gnu/system.scm ()[kernel-arguments]: New field. (operating-system-grub.cfg): Honor it. (operating-system-parameters-file): Add 'kernel-arguments' to the parameters file. * guix/scripts/system.scm (previous-grub-entries)[system->grub-entry]: Read the 'kernel-arguments' field of the parameters file, when available. * gnu/system/vm.scm (system-qemu-image/shared-store-script): Use (operating-system-kernel-arguments os) in '-append'. * doc/guix.texi (operating-system Reference): Document it. --- gnu/system.scm | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'gnu/system.scm') diff --git a/gnu/system.scm b/gnu/system.scm index efad14596a..ed37c320f7 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -68,6 +68,7 @@ (define-module (gnu system) operating-system-host-name operating-system-hosts-file operating-system-kernel + operating-system-kernel-arguments operating-system-initrd operating-system-users operating-system-groups @@ -103,6 +104,8 @@ (define-record-type* operating-system operating-system? (kernel operating-system-kernel ; package (default linux-libre)) + (kernel-arguments operating-system-kernel-arguments + (default '())) ; list of gexps/strings (bootloader operating-system-bootloader) ; (initrd operating-system-initrd ; (list fs) -> M derivation @@ -866,11 +869,12 @@ (define* (operating-system-grub.cfg os #:optional (old-entries '())) (label (kernel->grub-label kernel)) (linux kernel) (linux-arguments - (list (string-append "--root=" - (file-system-device root-fs)) - #~(string-append "--system=" #$system) - #~(string-append "--load=" #$system - "/boot"))) + (cons* (string-append "--root=" + (file-system-device root-fs)) + #~(string-append "--system=" #$system) + #~(string-append "--load=" #$system + "/boot") + (operating-system-kernel-arguments os))) (initrd #~(string-append #$system "/initrd")))))) (grub-configuration-file (operating-system-bootloader os) entries #:old-entries old-entries))) @@ -887,6 +891,8 @@ (define (operating-system-parameters-file os) (label #$label) (root-device #$(file-system-device root)) (kernel #$(operating-system-kernel os)) + (kernel-arguments + #$(operating-system-kernel-arguments os)) (initrd #$initrd))))) (define (operating-system-derivation os) -- cgit v1.2.3