aboutsummaryrefslogtreecommitdiff
path: root/guix
diff options
context:
space:
mode:
authorLeo Famulari <leo@famulari.name>2017-03-30 03:10:48 -0400
committerLeo Famulari <leo@famulari.name>2017-04-15 18:34:59 -0400
commitc8a3dea847bb9f87fa1876d0c6c3356d6226f121 (patch)
tree9831c5fd2add6c9c08fde3693bd8ef8e66d59a3d /guix
parentdc4ebebd61896b1122fde97644325d06e3f46b47 (diff)
downloadgnu-guix-c8a3dea847bb9f87fa1876d0c6c3356d6226f121.tar
gnu-guix-c8a3dea847bb9f87fa1876d0c6c3356d6226f121.tar.gz
packages: Enable threaded compression of source tarballs.
This provides a ~2x speedup when using 4 threads. * guix/packages.scm (patch-and-repack)[build]: Invoke xz with '--threads=0' when re-packing tarballs.
Diffstat (limited to 'guix')
-rw-r--r--guix/packages.scm7
1 files changed, 6 insertions, 1 deletions
diff --git a/guix/packages.scm b/guix/packages.scm
index 61171b8342..29351ace1d 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -576,7 +576,12 @@ specifies modules in scope when evaluating SNIPPET."
#:fail-on-error? #t)))))
(zero? (apply system*
(string-append #+tar "/bin/tar")
- "cvfa" #$output
+ "cvf" #$output
+ ;; The bootstrap xz does not support
+ ;; threaded compression (introduced in
+ ;; 5.2.0), but it ignores the extra flag.
+ (string-append "--use-compress-program="
+ #+xz "/bin/xz --threads=0")
;; avoid non-determinism in the archive
"--mtime=@0"
"--owner=root:0"