summary refs log tree commit diff
path: root/gnu/system
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-11-21 16:19:09 +0100
committerLudovic Courtès <ludo@gnu.org>2018-11-21 23:26:59 +0100
commitd422cbb3d6a1cc7e4553a2335b113475a05d68ad (patch)
treefce053b15b69cd3512187208302d2c72c9c77dbc /gnu/system
parenta29ce1f97dc8336e5a063f14d98d673b33b4bff4 (diff)
downloadguix-d422cbb3d6a1cc7e4553a2335b113475a05d68ad.tar.gz
linux-initrd: 'expression->initrd' returns the complete file name.
Previously 'expression->initrd' would return the directory that contains
the 'initrd' file; now it returns the complete file name for that file.

* gnu/system/linux-initrd.scm (expression->initrd)[builder]: Change
output file name to "initrd.cpio.gz".  Tail-call 'file-append' to return
the complete file name.
* gnu/system.scm (operating-system-initrd-file): Remove 'file-append'
call.
* gnu/build/linux-initrd.scm (write-cpio-archive): Check whether OUTPUT
already has the ".gz" suffix; rename if before invoking GZIP if it does,
and otherwise after.
* gnu/system/vm.scm (expression->derivation-in-linux-vm)[builder]: Do
not append "/initrd" to #$initrd.
Diffstat (limited to 'gnu/system')
-rw-r--r--gnu/system/linux-initrd.scm9
-rw-r--r--gnu/system/vm.scm2
2 files changed, 6 insertions, 5 deletions
diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm
index a53d3cb106..983c6d81c8 100644
--- a/gnu/system/linux-initrd.scm
+++ b/gnu/system/linux-initrd.scm
@@ -91,16 +91,17 @@ the derivations referenced by EXP are automatically copied to the initrd."
             (lambda (port)
               (simple-format port "~A\n" #$guile)))
 
-          (build-initrd (string-append #$output "/initrd")
+          (build-initrd (string-append #$output "/initrd.cpio.gz")
                         #:guile #$guile
                         #:init #$init
                         ;; Copy everything INIT refers to into the initrd.
                         #:references-graphs '("closure")
                         #:gzip (string-append #$gzip "/bin/gzip")))))
 
-  (computed-file name builder
-                 #:options
-                 `(#:references-graphs (("closure" ,init)))))
+  (file-append (computed-file name builder
+                              #:options
+                              `(#:references-graphs (("closure" ,init))))
+               "/initrd.cpio.gz"))
 
 (define (flat-linux-module-directory linux modules)
   "Return a flat directory containing the Linux kernel modules listed in
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
index 8e310a1607..9400e6310d 100644
--- a/gnu/system/vm.scm
+++ b/gnu/system/vm.scm
@@ -213,7 +213,7 @@ made available under the /xchg CIFS share."
               (let* ((inputs  '#$(list qemu (canonical-package coreutils)))
                      (linux   (string-append #$linux "/"
                                              #$(system-linux-image-file-name)))
-                     (initrd  (string-append #$initrd "/initrd"))
+                     (initrd  #$initrd)
                      (loader  #$loader)
                      (graphs  '#$(match references-graphs
                                    (((graph-files . _) ...) graph-files)