aboutsummaryrefslogtreecommitdiff
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.scm8
1 files changed, 7 insertions, 1 deletions
diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm
index ea9d708dac..408fb9f211 100644
--- a/gnu/system/linux-initrd.scm
+++ b/gnu/system/linux-initrd.scm
@@ -27,6 +27,7 @@
#:use-module (gnu packages guile)
#:use-module ((gnu packages make-bootstrap)
#:select (%guile-static-stripped))
+ #:use-module (ice-9 regex)
#:export (expression->initrd
qemu-initrd
gnu-system-initrd))
@@ -58,6 +59,10 @@ list of Guile module names to be embedded in the initrd."
;; General Linux overview in `Documentation/early-userspace/README' and
;; `Documentation/filesystems/ramfs-rootfs-initramfs.txt'.
+ (define (string->regexp str)
+ ;; Return a regexp that matches STR exactly.
+ (string-append "^" (regexp-quote str) "$"))
+
(define builder
`(begin
(use-modules (guix build utils)
@@ -119,7 +124,8 @@ list of Guile module names to be embedded in the initrd."
(string-append linux "/lib/modules"))))
(mkdir "modules")
,@(map (lambda (module)
- `(match (find-files module-dir ,module)
+ `(match (find-files module-dir
+ ,(string->regexp module))
((file)
(format #t "copying '~a'...~%" file)
(copy-file file (string-append "modules/"