From patchwork Mon Jun 29 13:58:15 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Janneke Nieuwenhuizen X-Patchwork-Id: 22961 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 067F427BBE3; Mon, 29 Jun 2020 14:59:10 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 6B3CB27BBE1 for ; Mon, 29 Jun 2020 14:59:09 +0100 (BST) Received: from localhost ([::1]:48058 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jpuJQ-0007za-Up for patchwork@mira.cbaines.net; Mon, 29 Jun 2020 09:59:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36460) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jpuJK-0007yG-Pg for guix-patches@gnu.org; Mon, 29 Jun 2020 09:59:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:37464) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jpuJK-0002oJ-Gt for guix-patches@gnu.org; Mon, 29 Jun 2020 09:59:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jpuJK-0004km-Fz for guix-patches@gnu.org; Mon, 29 Jun 2020 09:59:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#42122] [PATCH 1/3] system: 'read-boot-parameters' fixes for multiboot. References: <20200629135559.12696-1-janneke@gnu.org> In-Reply-To: <20200629135559.12696-1-janneke@gnu.org> Resent-From: "Jan (janneke) Nieuwenhuizen" Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 29 Jun 2020 13:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 42122 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 42122@debbugs.gnu.org Received: via spool by 42122-submit@debbugs.gnu.org id=B42122.159343910718199 (code B ref 42122); Mon, 29 Jun 2020 13:59:02 +0000 Received: (at 42122) by debbugs.gnu.org; 29 Jun 2020 13:58:27 +0000 Received: from localhost ([127.0.0.1]:49005 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jpuIl-0004jS-3k for submit@debbugs.gnu.org; Mon, 29 Jun 2020 09:58:27 -0400 Received: from eggs.gnu.org ([209.51.188.92]:50194) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jpuIj-0004j3-0p for 42122@debbugs.gnu.org; Mon, 29 Jun 2020 09:58:26 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:59810) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jpuId-0002l7-NW; Mon, 29 Jun 2020 09:58:19 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=50092 helo=dundal.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.82) (envelope-from ) id 1jpuIc-0000l9-ND; Mon, 29 Jun 2020 09:58:19 -0400 From: "Jan (janneke) Nieuwenhuizen" Date: Mon, 29 Jun 2020 15:58:15 +0200 Message-Id: <20200629135817.12784-1-janneke@gnu.org> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/system.scm (read-boot-parameters): Allow initrd to be unset. Return only value for multiboot-modules instead of (key value). --- gnu/system.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/gnu/system.scm b/gnu/system.scm index 44baacee7b..a6a9c958e6 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -351,9 +351,13 @@ file system labels." (('initrd ('string-append directory file)) ;the old format (string-append directory file)) (('initrd (? string? file)) - file))) + file) + (#f #f))) - (multiboot-modules (or (assq 'multiboot-modules rest) '())) + (multiboot-modules + (match (assq 'multiboot-modules rest) + ((_ args) args) + (#f '()))) (store-device ;; Linux device names like "/dev/sda1" are not suitable GRUB device From patchwork Mon Jun 29 13:58:16 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Janneke Nieuwenhuizen X-Patchwork-Id: 22963 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 039FA27BBE1; Mon, 29 Jun 2020 14:59:13 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id E291127BBE3 for ; Mon, 29 Jun 2020 14:59:10 +0100 (BST) Received: from localhost ([::1]:48116 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jpuJS-00081C-CH for patchwork@mira.cbaines.net; Mon, 29 Jun 2020 09:59:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36462) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jpuJL-0007yh-4k for guix-patches@gnu.org; Mon, 29 Jun 2020 09:59:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:37465) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jpuJK-0002oN-Sg for guix-patches@gnu.org; Mon, 29 Jun 2020 09:59:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jpuJK-0004ku-S5 for guix-patches@gnu.org; Mon, 29 Jun 2020 09:59:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#42122] [PATCH 2/3] services: system-service-type: Add entries support for the Hurd. Resent-From: "Jan (janneke) Nieuwenhuizen" Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 29 Jun 2020 13:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 42122 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 42122@debbugs.gnu.org Received: via spool by 42122-submit@debbugs.gnu.org id=B42122.159343910718205 (code B ref 42122); Mon, 29 Jun 2020 13:59:02 +0000 Received: (at 42122) by debbugs.gnu.org; 29 Jun 2020 13:58:27 +0000 Received: from localhost ([127.0.0.1]:49007 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jpuIl-0004jU-Di for submit@debbugs.gnu.org; Mon, 29 Jun 2020 09:58:27 -0400 Received: from eggs.gnu.org ([209.51.188.92]:50210) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jpuIk-0004j5-9T for 42122@debbugs.gnu.org; Mon, 29 Jun 2020 09:58:26 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:59811) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jpuIe-0002lE-Uu; Mon, 29 Jun 2020 09:58:20 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=50092 helo=dundal.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.82) (envelope-from ) id 1jpuIe-0000l9-3P; Mon, 29 Jun 2020 09:58:20 -0400 From: "Jan (janneke) Nieuwenhuizen" Date: Mon, 29 Jun 2020 15:58:16 +0200 Message-Id: <20200629135817.12784-2-janneke@gnu.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200629135817.12784-1-janneke@gnu.org> References: <20200629135817.12784-1-janneke@gnu.org> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches When creating a disk-image using --save-provenance, "guix system describe" now works. * gnu/system.scm (operating-system-directory-base-entries): Add conditional "hurd" parameter, make "initrd" parameter conditional. (hurd-default-essential-services): Use them. (operating-system-boot-parameters-file): Only add 'initrd' when set. --- gnu/system.scm | 71 +++++++++++++++++++++++++++++--------------------- 1 file changed, 41 insertions(+), 30 deletions(-) diff --git a/gnu/system.scm b/gnu/system.scm index a6a9c958e6..d4641cc9b0 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -537,22 +537,26 @@ possible (that is if there's a LINUX keyword argument in the build system)." value of the SYSTEM-SERVICE-TYPE service." (let* ((locale (operating-system-locale-directory os)) (kernel (operating-system-kernel os)) + (hurd (operating-system-hurd os)) (modules (operating-system-kernel-loadable-modules os)) - (kernel (profile - (content (packages->manifest - (cons kernel - (map (lambda (module) - (if (package? module) - (package-for-kernel kernel - module) - module)) - modules)))) - (hooks (list linux-module-database)))) - (initrd (operating-system-initrd-file os)) + (kernel (if hurd + kernel + (profile + (content (packages->manifest + (cons kernel + (map (lambda (module) + (if (package? module) + (package-for-kernel kernel + module) + module)) + modules)))) + (hooks (list linux-module-database))))) + (initrd (and (not hurd) (operating-system-initrd-file os))) (params (operating-system-boot-parameters-file os))) `(("kernel" ,kernel) + ,@(if hurd `(("hurd" ,hurd)) '()) ("parameters" ,params) - ("initrd" ,initrd) + ,@(if initrd `(("initrd" ,initrd)) '()) ("locale" ,locale)))) ;used by libc (define (operating-system-default-essential-services os) @@ -604,23 +608,24 @@ bookkeeping." (operating-system-firmware os))))))) (define (hurd-default-essential-services os) - (list (service system-service-type '()) - %boot-service - %hurd-startup-service - %activation-service - %shepherd-root-service - (service user-processes-service-type) - (account-service (append (operating-system-accounts os) - (operating-system-groups os)) - (operating-system-skeletons os)) - (root-file-system-service) - (service file-system-service-type '()) - (service fstab-service-type - (filter file-system-needed-for-boot? - (operating-system-file-systems os))) - (pam-root-service (operating-system-pam-services os)) - (operating-system-etc-service os) - (service profile-service-type (operating-system-packages os)))) + (let ((entries (operating-system-directory-base-entries os))) + (list (service system-service-type entries) + %boot-service + %hurd-startup-service + %activation-service + %shepherd-root-service + (service user-processes-service-type) + (account-service (append (operating-system-accounts os) + (operating-system-groups os)) + (operating-system-skeletons os)) + (root-file-system-service) + (service file-system-service-type '()) + (service fstab-service-type + (filter file-system-needed-for-boot? + (operating-system-file-systems os))) + (pam-root-service (operating-system-pam-services os)) + (operating-system-etc-service os) + (service profile-service-type (operating-system-packages os))))) (define* (operating-system-services os) "Return all the services of OS, including \"essential\" services." @@ -1276,7 +1281,13 @@ being stored into the \"parameters\" file)." (kernel #$(boot-parameters-kernel params)) (kernel-arguments #$(boot-parameters-kernel-arguments params)) - (initrd #$(boot-parameters-initrd params)) + #$@(if (boot-parameters-initrd params) + #~((initrd #$(boot-parameters-initrd params))) + #~()) + #$@(if (pair? (boot-parameters-multiboot-modules params)) + #~((multiboot-modules + #$(boot-parameters-multiboot-modules params))) + #~()) (bootloader-name #$(boot-parameters-bootloader-name params)) (bootloader-menu-entries #$(map menu-entry->sexp From patchwork Mon Jun 29 13:58:17 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Janneke Nieuwenhuizen X-Patchwork-Id: 22962 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id C99E427BBE4; Mon, 29 Jun 2020 14:59:12 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 9821F27BBE1 for ; Mon, 29 Jun 2020 14:59:11 +0100 (BST) Received: from localhost ([::1]:48164 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jpuJT-00082Z-3G for patchwork@mira.cbaines.net; Mon, 29 Jun 2020 09:59:11 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36464) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jpuJL-0007z8-IG for guix-patches@gnu.org; Mon, 29 Jun 2020 09:59:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:37466) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jpuJL-0002oR-9H for guix-patches@gnu.org; Mon, 29 Jun 2020 09:59:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jpuJL-0004l3-8v for guix-patches@gnu.org; Mon, 29 Jun 2020 09:59:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#42122] [PATCH 3/3] guix system: "describe" displays multiboot info. Resent-From: "Jan (janneke) Nieuwenhuizen" Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 29 Jun 2020 13:59:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 42122 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 42122@debbugs.gnu.org Received: via spool by 42122-submit@debbugs.gnu.org id=B42122.159343911018219 (code B ref 42122); Mon, 29 Jun 2020 13:59:03 +0000 Received: (at 42122) by debbugs.gnu.org; 29 Jun 2020 13:58:30 +0000 Received: from localhost ([127.0.0.1]:49010 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jpuIn-0004jn-Rc for submit@debbugs.gnu.org; Mon, 29 Jun 2020 09:58:30 -0400 Received: from eggs.gnu.org ([209.51.188.92]:50214) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jpuIl-0004jA-UA for 42122@debbugs.gnu.org; Mon, 29 Jun 2020 09:58:28 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:59812) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jpuIg-0002lO-BU; Mon, 29 Jun 2020 09:58:22 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=50092 helo=dundal.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.82) (envelope-from ) id 1jpuIf-0000l9-B9; Mon, 29 Jun 2020 09:58:21 -0400 From: "Jan (janneke) Nieuwenhuizen" Date: Mon, 29 Jun 2020 15:58:17 +0200 Message-Id: <20200629135817.12784-3-janneke@gnu.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200629135817.12784-1-janneke@gnu.org> References: <20200629135817.12784-1-janneke@gnu.org> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * guix/scripts/system.scm (display-system-generation): Display multiboot-modules commands if set. --- guix/scripts/system.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index d9cf45da23..7f062452ac 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -480,6 +480,7 @@ list of services." (uuid->string root) root)) (kernel (boot-parameters-kernel params)) + (multiboot-modules (boot-parameters-multiboot-modules params)) (provenance (catch 'system-error (lambda () (call-with-input-file @@ -509,6 +510,10 @@ list of services." (format #t (G_ " kernel: ~a~%") kernel) + (when (pair? multiboot-modules) + (format #t (G_ " multiboot: ~a~%") + (string-join (map car multiboot-modules) "\n "))) + (match provenance (#f #t) (('provenance ('version 0)