summaryrefslogtreecommitdiff
path: root/gnu/system/linux-initrd.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/system/linux-initrd.scm')
-rw-r--r--gnu/system/linux-initrd.scm9
1 files changed, 8 insertions, 1 deletions
diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm
index 99df8cd185..afbfc692d3 100644
--- a/gnu/system/linux-initrd.scm
+++ b/gnu/system/linux-initrd.scm
@@ -206,6 +206,7 @@ initrd code."
qemu-networking?
virtio?
volatile-root?
+ (extra-modules '())
guile-modules-in-chroot?)
"Return a monadic derivation that builds a generic initrd. FILE-SYSTEMS is
a list of file-systems to be mounted by the initrd, possibly in addition to
@@ -218,6 +219,11 @@ be used as a QEMU guest with para-virtualized I/O drivers.
When VOLATILE-ROOT? is true, the root file system is writable but any changes
to it are lost.
+The initrd is automatically populated with all the kernel modules necessary
+for FILE-SYSTEMS and for the given options. However, additional kernel
+modules can be listed in EXTRA-MODULES. They will be added to the initrd, and
+loaded at boot time in the order in which they appear.
+
When GUILE-MODULES-IN-CHROOT? is true, make core Guile modules available in
the new root. This is necessary is the file specified as '--load' needs
access to these modules (which is the case if it wants to even just print an
@@ -252,7 +258,8 @@ exception and backtrace!)."
'())
,@(if volatile-root?
'("fuse.ko")
- '())))
+ '())
+ ,@extra-modules))
(define helper-packages
;; Packages to be copied on the initrd.