summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-12-10 13:37:59 +0100
committerLudovic Courtès <ludo@gnu.org>2020-12-15 17:32:10 +0100
commit7b8d239ec241b9663820fed3bfde4344366f9d19 (patch)
treed917ac857cb7224b6374730b205afc6f1e7c51bc /gnu
parent2718c29c3fb9f9de2ec897248ad49ae11ca39b7a (diff)
store-copy: 'populate-store' resets timestamps.
Until now, 'populate-store' would reset permissions but not timestamps, so callers would resort to going through an extra directory traversal to reset timestamps. * guix/build/store-copy.scm (reset-permissions): Remove. (copy-recursively): New procedure. (populate-store): Pass #:keep-permissions? to 'copy-recursively'. Remove call to 'reset-permissions'. * tests/gexp.scm ("gexp->derivation, store copy"): In BUILD-DRV, check whether 'populate-store' canonicalizes permissions and timestamps. * gnu/build/image.scm (initialize-root-partition): Pass #:reset-timestamps? #f to 'register-closure'. * gnu/build/vm.scm (root-partition-initializer): Likewise.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/build/image.scm5
-rw-r--r--gnu/build/vm.scm2
2 files changed, 3 insertions, 4 deletions
diff --git a/gnu/build/image.scm b/gnu/build/image.scm
index 640a784204..2857362914 100644
--- a/gnu/build/image.scm
+++ b/gnu/build/image.scm
@@ -196,9 +196,8 @@ register-closure."
(when register-closures?
(for-each (lambda (closure)
- (register-closure root
- closure
- #:reset-timestamps? #t
+ (register-closure root closure
+ #:reset-timestamps? #f
#:deduplicate? deduplicate?
#:wal-mode? wal-mode?))
references-graphs))
diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm
index 287d099f79..30feaf800f 100644
--- a/gnu/build/vm.scm
+++ b/gnu/build/vm.scm
@@ -414,7 +414,7 @@ system that is passed to 'populate-root-file-system'."
(for-each (lambda (closure)
(register-closure target
(string-append "/xchg/" closure)
- #:reset-timestamps? copy-closures?
+ #:reset-timestamps? #f
#:deduplicate? deduplicate?))
closures)
(unless copy-closures?