guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/12: linux-initrd: raw-initrd: Add keyword argument #:pre-mount.


From: guix-commits
Subject: 01/12: linux-initrd: raw-initrd: Add keyword argument #:pre-mount.
Date: Fri, 18 Nov 2022 09:49:12 -0500 (EST)

civodul pushed a commit to branch master
in repository guix.

commit a6da50d60a2cc3d0f218e38cbc197011b8151554
Author: Hilton Chain <hako@ultrarare.space>
AuthorDate: Sat Nov 12 21:59:26 2022 +0800

    linux-initrd: raw-initrd: Add keyword argument #:pre-mount.
    
    * gnu/system/linux-initrd.scm (raw-initrd): Add keyword argument 
#:pre-mount.
    Document it.
    * doc/guix.texi (initial RAM disk): Likewise.
    
    Signed-off-by: Ludovic Courtès <ludo@gnu.org>
---
 doc/guix.texi               | 8 +++++---
 gnu/system/linux-initrd.scm | 7 +++++--
 2 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index ef3b8e127e..2d4f7d960e 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -37869,15 +37869,17 @@ here is how to use it and customize it further.
 @cindex initrd
 @cindex initial RAM disk
 @deffn {Scheme Procedure} raw-initrd @var{file-systems} @
-       [#:linux-modules '()] [#:mapped-devices '()] @
-       [#:keyboard-layout #f] @
-       [#:helper-packages '()] [#:qemu-networking? #f] [#:volatile-root? #f]
+       [#:linux-modules '()] [#:pre-mount #t] [#:mapped-devices '()] @
+       [#:keyboard-layout #f] [#:helper-packages '()] @
+       [#:qemu-networking? #f] [#:volatile-root? #f]
 Return a derivation that builds a raw initrd.  @var{file-systems} is
 a list of file systems to be mounted by the initrd, possibly in addition to
 the root file system specified on the kernel command line via @option{root}.
 @var{linux-modules} is a list of kernel modules to be loaded at boot time.
 @var{mapped-devices} is a list of device mappings to realize before
 @var{file-systems} are mounted (@pxref{Mapped Devices}).
+@var{pre-mount} is a G-expression to evaluate before realizing
+@var{mapped-devices}.
 @var{helper-packages} is a list of packages to be copied in the initrd.
        It may
 include @code{e2fsck/static} or other packages needed by the initrd to check
diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm
index 4c4c78e444..58e95a1312 100644
--- a/gnu/system/linux-initrd.scm
+++ b/gnu/system/linux-initrd.scm
@@ -172,6 +172,7 @@ MODULES and taken from LINUX."
                       #:key
                       (linux linux-libre)
                       (linux-modules '())
+                      (pre-mount #t)
                       (mapped-devices '())
                       (keyboard-layout #f)
                       (helper-packages '())
@@ -183,7 +184,8 @@ modules taken from LINUX.  FILE-SYSTEMS is a list of 
file-systems to be
 mounted by the initrd, possibly in addition to the root file system specified
 on the kernel command line via 'root'.  LINUX-MODULES is a list of kernel
 modules to be loaded at boot time. MAPPED-DEVICES is a list of device
-mappings to realize before FILE-SYSTEMS are mounted.
+mappings to realize before FILE-SYSTEMS are mounted. PRE-MOUNT is a
+G-expression to evaluate before realizing MAPPED-DEVICES.
 HELPER-PACKAGES is a list of packages to be copied in the initrd. It may 
include
 e2fsck/static or other packages needed by the initrd to check root partition.
 
@@ -255,7 +257,8 @@ upon error."
                         (map spec->file-system
                              '#$(map file-system->spec file-systems))
                         #:pre-mount (lambda ()
-                                      (and #$@device-mapping-commands
+                                      (and #$pre-mount
+                                           #$@device-mapping-commands
                                            #$@file-system-scan-commands))
                         #:linux-modules '#$linux-modules
                         #:linux-module-directory '#$kodir



reply via email to

[Prev in Thread] Current Thread [Next in Thread]