From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Kost Subject: Re: [PATCH 1/6] guix system: Export accessors. Date: Wed, 13 Jan 2016 23:44:48 +0300 Message-ID: <87r3hl9pkv.fsf@gmail.com> References: <1452419630-4399-1-git-send-email-alezost@gmail.com> <1452419630-4399-2-git-send-email-alezost@gmail.com> <87k2nebl5o.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:42750) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aJSHk-0003br-G8 for guix-devel@gnu.org; Wed, 13 Jan 2016 15:44:53 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aJSHh-000824-9X for guix-devel@gnu.org; Wed, 13 Jan 2016 15:44:52 -0500 In-Reply-To: <87k2nebl5o.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Tue, 12 Jan 2016 21:25:07 +0100") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel@gnu.org --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Ludovic Court=C3=A8s (2016-01-12 23:25 +0300) wrote: > Alex Kost skribis: > >> * guix/scripts/system.scm (read-boot-parameters, boot-parameters) >> (boot-parameters?, boot-parameters-label, boot-parameters-root-device) >> (boot-parameters-kernel, boot-parameters-kernel-arguments): Export. > > LGTM. > > Eventually (as a replacement of this patch or as a subsequent patch, as > you prefer) we should move these to (gnu system) since this is where we > create the =E2=80=98boot-parameters=E2=80=99 sexp. Great, I would like to make a replacement. OK for the attached patch? (I exported because it is used by (guix scripts system)) --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-Move-boot-parameters-to-gnu-system.patch >From ac344e3f17741c439aa15a642f1872fd2c7bfd9f Mon Sep 17 00:00:00 2001 From: Alex Kost Date: Fri, 8 Jan 2016 02:48:17 +0300 Subject: [PATCH] Move to (gnu system). * guix/scripts/system.scm (, boot-parameters) (boot-parameters?, boot-parameters-label, boot-parameters-root-device) (boot-parameters-kernel, boot-parameters-kernel-arguments): (read-boot-parameters) Move to... * gnu/system.scm: ... here. Export them. --- gnu/system.scm | 42 ++++++++++++++++++++++++++++++++++++++++++ guix/scripts/system.scm | 33 --------------------------------- 2 files changed, 42 insertions(+), 33 deletions(-) diff --git a/gnu/system.scm b/gnu/system.scm index 4aedb7e..2600224 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -88,6 +88,15 @@ operating-system-locale-directory operating-system-boot-script + + boot-parameters + boot-parameters? + boot-parameters-label + boot-parameters-root-device + boot-parameters-kernel + boot-parameters-kernel-arguments + read-boot-parameters + local-host-aliases %setuid-programs %base-packages @@ -709,4 +718,37 @@ this file is the reconstruction of GRUB menu entries for old configurations." #$(operating-system-kernel-arguments os)) (initrd #$initrd))))) + +;;; +;;; Boot parameters +;;; + +(define-record-type* + boot-parameters make-boot-parameters boot-parameters? + (label boot-parameters-label) + (root-device boot-parameters-root-device) + (kernel boot-parameters-kernel) + (kernel-arguments boot-parameters-kernel-arguments)) + +(define (read-boot-parameters port) + "Read boot parameters from PORT and return the corresponding + object or #f if the format is unrecognized." + (match (read port) + (('boot-parameters ('version 0) + ('label label) ('root-device root) + ('kernel linux) + rest ...) + (boot-parameters + (label label) + (root-device root) + (kernel linux) + (kernel-arguments + (match (assq 'kernel-arguments rest) + ((_ args) args) + (#f '()))))) ;the old format + (x ;unsupported format + (warning (_ "unrecognized boot parameters for '~a'~%") + system) + #f))) + ;;; system.scm ends here diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index 1407dc7..a45f07e 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -191,39 +191,6 @@ the ownership of '~a' may be incorrect!~%") ;;; -;;; Boot parameters -;;; - -(define-record-type* - boot-parameters make-boot-parameters boot-parameters? - (label boot-parameters-label) - (root-device boot-parameters-root-device) - (kernel boot-parameters-kernel) - (kernel-arguments boot-parameters-kernel-arguments)) - -(define (read-boot-parameters port) - "Read boot parameters from PORT and return the corresponding - object or #f if the format is unrecognized." - (match (read port) - (('boot-parameters ('version 0) - ('label label) ('root-device root) - ('kernel linux) - rest ...) - (boot-parameters - (label label) - (root-device root) - (kernel linux) - (kernel-arguments - (match (assq 'kernel-arguments rest) - ((_ args) args) - (#f '()))))) ;the old format - (x ;unsupported format - (warning (_ "unrecognized boot parameters for '~a'~%") - system) - #f))) - - -;;; ;;; Reconfiguration. ;;; -- 2.6.3 --=-=-=--