summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-05-18 19:11:53 +0200
committerLudovic Courtès <ludo@gnu.org>2014-05-18 22:27:22 +0200
commit15d299874c635d14a84710005d0ed4b05968ff6f (patch)
treef3995eeb77879b8e47dd87b54d27bff81f720575
parent1691b4cdc619caf47700eef22023066985afb877 (diff)
downloadguix-15d299874c635d14a84710005d0ed4b05968ff6f.tar.gz
vm: Avoid resetting timestamps twice.
* guix/build/vm.scm (initialize-hard-disk): Don't call
  'reset-timestamps' when REGISTER-CLOSURES? is true.
* guix/build/install.scm (register-closure): Mention timestamps in
  docstring.
-rw-r--r--guix/build/install.scm2
-rw-r--r--guix/build/vm.scm5
2 files changed, 5 insertions, 2 deletions
diff --git a/guix/build/install.scm b/guix/build/install.scm
index a0be6e9d39..564735a7f6 100644
--- a/guix/build/install.scm
+++ b/guix/build/install.scm
@@ -103,7 +103,7 @@ as created and modified at the Epoch."
 (define (register-closure store closure)
   "Register CLOSURE in STORE, where STORE is the directory name of the target
 store and CLOSURE is the name of a file containing a reference graph as used
-by 'guix-register'."
+by 'guix-register'.  As a side effect, this resets timestamps on store files."
   (let ((status (system* "guix-register" "--prefix" store
                          closure)))
     (unless (zero? status)
diff --git a/guix/build/vm.scm b/guix/build/vm.scm
index b9bb66cdb7..e67b431b5a 100644
--- a/guix/build/vm.scm
+++ b/guix/build/vm.scm
@@ -211,7 +211,10 @@ further populate the partition."
   (unless (install-grub grub.cfg "/dev/sda" target-directory)
     (error "failed to install GRUB"))
 
-  (reset-timestamps target-directory)
+  ;; 'guix-register' resets timestamps and everything, so no need to do it
+  ;; once more in that case.
+  (unless register-closures?
+    (reset-timestamps target-directory))
 
   (zero? (system* "umount" target-directory)))