summary refs log tree commit diff
path: root/gnu/system
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-06-17 09:49:22 +0200
committerLudovic Courtès <ludo@gnu.org>2015-06-18 00:25:48 +0200
commit08fa76131e71dc12f5d669480d74e9183008d71a (patch)
tree0c244e118c960161e2dcd645306bd663e0a9e7ef /gnu/system
parent2f6d3e417fb99d264f0147a81771874860dcaf10 (diff)
downloadguix-08fa76131e71dc12f5d669480d74e9183008d71a.tar.gz
install: Turn off deduplication for the binary tarball.
* gnu/build/install.scm (register-closure): Add #:deduplicate? parameter and
  honor it.
  (populate-single-profile-directory): Likewise.
* gnu/system/install.scm (self-contained-tarball): Pass #:deduplicate? #f.
  Invoke tar with --check-links.
Diffstat (limited to 'gnu/system')
-rw-r--r--gnu/system/install.scm6
1 files changed, 5 insertions, 1 deletions
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index e8a36b3def..6f4116ef9b 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -63,15 +63,19 @@ under /root/.guix-profile where GUIX is installed."
           (setenv "PATH"
                   (string-append #$guix "/sbin:" #$tar "/bin:" #$xz "/bin"))
 
+          ;; Note: there is not much to gain here with deduplication and there
+          ;; is the overhead of the '.links' directory, so turn it off.
           (populate-single-profile-directory %root
                                              #:profile #$profile
-                                             #:closure "profile")
+                                             #:closure "profile"
+                                             #:deduplicate? #f)
 
           ;; Create the tarball.  Use GNU format so there's no file name
           ;; length limitation.
           (with-directory-excursion %root
             (zero? (system* "tar" "--xz" "--format=gnu"
                             "--owner=root:0" "--group=root:0"
+                            "--check-links"
                             "-cvf" #$output
                             ;; Avoid adding / and /var to the tarball,
                             ;; so that the ownership and permissions of those