unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#59066] [PATCH 1/1] linux-initrd: raw-initrd: Add keyword argument #:pre-mount.
@ 2022-11-06  1:45 Hilton Chain via Guix-patches via
  2022-11-11 21:32 ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Hilton Chain via Guix-patches via @ 2022-11-06  1:45 UTC (permalink / raw)
  To: 59066

* gnu/system/linux-initrd.scm (raw-initrd): Add keyword argument #:pre-mount.
---
 gnu/system/linux-initrd.scm | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm
index 4c4c78e444..1e72aaee1c 100644
--- a/gnu/system/linux-initrd.scm
+++ b/gnu/system/linux-initrd.scm
@@ -172,6 +172,7 @@ (define* (raw-initrd file-systems
                       #:key
                       (linux linux-libre)
                       (linux-modules '())
+                      (pre-mount '())
                       (mapped-devices '())
                       (keyboard-layout #f)
                       (helper-packages '())
@@ -255,7 +256,8 @@ (define kodir
                         (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
-- 
2.38.0





^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [bug#59066] [PATCH 1/1] linux-initrd: raw-initrd: Add keyword argument #:pre-mount.
  2022-11-06  1:45 [bug#59066] [PATCH 1/1] linux-initrd: raw-initrd: Add keyword argument #:pre-mount Hilton Chain via Guix-patches via
@ 2022-11-11 21:32 ` Ludovic Courtès
  2022-11-12 13:59   ` [bug#59066] [PATCH v2] " Hilton Chain via Guix-patches via
  0 siblings, 1 reply; 4+ messages in thread
From: Ludovic Courtès @ 2022-11-11 21:32 UTC (permalink / raw)
  To: Hilton Chain; +Cc: 59066

Hi!

Hilton Chain <hako@ultrarare.space> skribis:

> * gnu/system/linux-initrd.scm (raw-initrd): Add keyword argument #:pre-mount.

[...]

> +                      (pre-mount '())
>                        (mapped-devices '())
>                        (keyboard-layout #f)
>                        (helper-packages '())
> @@ -255,7 +256,8 @@ (define kodir
>                          (map spec->file-system
>                               '#$(map file-system->spec file-systems))
>                          #:pre-mount (lambda ()
> -                                      (and #$@device-mapping-commands
> +                                      (and #$@pre-mount
> +                                           #$@device-mapping-commands

I think #:pre-mount should be a single gexp (instead of a list),
defaulting to #t.  So we’d do:

  (lambda () (and #$pre-mount #$@device-mapping-commands …))

WDYT?

Also could you update the docstring and ‘doc/guix.texi’ accordingly?

Thanks,
Ludo’.




^ permalink raw reply	[flat|nested] 4+ messages in thread

* [bug#59066] [PATCH v2] linux-initrd: raw-initrd: Add keyword argument #:pre-mount.
  2022-11-11 21:32 ` Ludovic Courtès
@ 2022-11-12 13:59   ` Hilton Chain via Guix-patches via
  2022-11-18 13:25     ` bug#59066: [PATCH 1/1] " Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Hilton Chain via Guix-patches via @ 2022-11-12 13:59 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 59066

* gnu/system/linux-initrd.scm (raw-initrd): Add keyword argument #:pre-mount.
Document it.
* doc/guix.texi (initial RAM disk): Likewise.
---
v1 -> v2:
1. Use gexp instead of a list.
2. Documentation.

Haven't begun my SSH test yet :P

 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 3f76184495..35eb128f6e 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -37844,15 +37844,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 @@ (define* (raw-initrd file-systems
                       #:key
                       (linux linux-libre)
                       (linux-modules '())
+                      (pre-mount #t)
                       (mapped-devices '())
                       (keyboard-layout #f)
                       (helper-packages '())
@@ -183,7 +184,8 @@ (define* (raw-initrd file-systems
 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 @@ (define kodir
                         (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

base-commit: 2757de2e2b271d87f6f72ba4161c2225fbdc9e78
--
2.38.1




^ permalink raw reply related	[flat|nested] 4+ messages in thread

* bug#59066: [PATCH 1/1] linux-initrd: raw-initrd: Add keyword argument #:pre-mount.
  2022-11-12 13:59   ` [bug#59066] [PATCH v2] " Hilton Chain via Guix-patches via
@ 2022-11-18 13:25     ` Ludovic Courtès
  0 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2022-11-18 13:25 UTC (permalink / raw)
  To: Hilton Chain; +Cc: 59066-done

Hi,

Hilton Chain <hako@ultrarare.space> skribis:

> * gnu/system/linux-initrd.scm (raw-initrd): Add keyword argument #:pre-mount.
> Document it.
> * doc/guix.texi (initial RAM disk): Likewise.
> ---
> v1 -> v2:
> 1. Use gexp instead of a list.
> 2. Documentation.

Applied, thanks!

> Haven't begun my SSH test yet :P

Heh, no rush.  :-)

Ludo’.




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-11-18 13:26 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-06  1:45 [bug#59066] [PATCH 1/1] linux-initrd: raw-initrd: Add keyword argument #:pre-mount Hilton Chain via Guix-patches via
2022-11-11 21:32 ` Ludovic Courtès
2022-11-12 13:59   ` [bug#59066] [PATCH v2] " Hilton Chain via Guix-patches via
2022-11-18 13:25     ` bug#59066: [PATCH 1/1] " Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).