summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-05-24 17:20:24 +0200
committerLudovic Courtès <ludo@gnu.org>2015-05-24 17:20:24 +0200
commitf245b03debfa05fa692e95769a9b7116200bf191 (patch)
treeb8dac4492cab5bdee2a3d1551512fa3cff95cf7e
parent328639e48f7ccb8e32fa42a8a0fbc2097fac38e3 (diff)
downloadguix-f245b03debfa05fa692e95769a9b7116200bf191.tar.gz
guix system: init: Copy the closure of 'grub.cfg', not that of the system.
Fixes <http://bugs.gnu.org/20591>.
Reported by Daniel Pimentel <d4n1@openmailbox.org>.

* guix/scripts/system.scm (install): Copy the closure of GRUB.CFG rather than
  that of OS-DIR.
-rw-r--r--guix/scripts/system.scm9
1 files changed, 6 insertions, 3 deletions
diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm
index 5a2bf7b4b7..277f31f6f4 100644
--- a/guix/scripts/system.scm
+++ b/guix/scripts/system.scm
@@ -128,8 +128,9 @@ TARGET, and register them."
 (define* (install os-drv target
                   #:key (log-port (current-output-port))
                   grub? grub.cfg device)
-  "Copy the output of OS-DRV and its dependencies to directory TARGET.  TARGET
-must be an absolute directory name since that's what 'guix-register' expects.
+  "Copy the closure of GRUB.CFG, which includes the output of OS-DRV, to
+directory TARGET.  TARGET must be an absolute directory name since that's what
+'guix-register' expects.
 
 When GRUB? is true, install GRUB on DEVICE, using GRUB.CFG."
   (define (maybe-copy to-copy)
@@ -160,7 +161,9 @@ the ownership of '~a' may be incorrect!~%")
         (populate (lift2 populate-root-file-system %store-monad)))
 
     (mbegin %store-monad
-      (maybe-copy os-dir)
+      ;; Copy the closure of GRUB.CFG, which includes OS-DIR, GRUB's
+      ;; background image and so on.
+      (maybe-copy grub.cfg)
 
       ;; Create a bunch of additional files.
       (format log-port "populating '~a'...~%" target)