Build tarballs with deterministic file ordering.

* guix/packages.scm (patch-and-repack)[build],
  gnu/system/install.scm (self-contained-tarball)[build],
  gnu/packages/make-bootstrap.scm (tarball-package),
  gnu/packages/admin.scm (isc-dhcp),
  gnu/packages/video.scm (avidemux): Pass "--sort=name" to 'tar'.
This commit is contained in:
Mark H Weaver 2015-09-03 12:51:47 -04:00
parent 52c20d8e15
commit 92226a470d
5 changed files with 12 additions and 3 deletions

View file

@ -428,6 +428,7 @@ (define-public isc-dhcp
(zero? (system* "tar" "cf" "bind.tar.gz"
"bind-9.9.5-P1"
;; avoid non-determinism in the archive
"--sort=name"
"--mtime=@0"
"--owner=root:0"
"--group=root:0"))))

View file

@ -629,7 +629,8 @@ (define (tarball-package pkg)
".tar.xz")
"."
;; avoid non-determinism in the archive
"--mtime=@0" "--owner=root:0" "--group=root:0"))))))))))
"--sort=name" "--mtime=@0"
"--owner=root:0" "--group=root:0"))))))))))
(define %bootstrap-binaries-tarball
;; A tarball with the statically-linked bootstrap binaries.

View file

@ -1015,7 +1015,8 @@ (define-public avidemux
(("#! /bin/sh") (string-append "#!" (which "bash"))))
(system* "tar" "cjf" "ffmpeg-2.6.1.tar.bz2" "ffmpeg-2.6.1"
;; avoid non-determinism in the archive
"--mtime=@0" "--owner=root:0" "--group=root:0")
"--sort=name" "--mtime=@0"
"--owner=root:0" "--group=root:0")
(delete-file-recursively "ffmpeg-2.6.1")))
(alist-replace 'configure
(lambda _

View file

@ -74,8 +74,13 @@ (define %root "root")
;; length limitation.
(with-directory-excursion %root
(zero? (system* "tar" "--xz" "--format=gnu"
"--owner=root:0" "--group=root:0"
;; avoid non-determinism in the archive
"--sort=name"
"--mtime=@0" ;for files in /var/guix
"--owner=root:0"
"--group=root:0"
"--check-links"
"-cvf" #$output
;; Avoid adding / and /var to the tarball,

View file

@ -482,6 +482,7 @@ (define (first-file directory)
(zero? (system* (string-append #+tar "/bin/tar")
"cvfa" #$output directory
;; avoid non-determinism in the archive
"--sort=name"
"--mtime=@0"
"--owner=root:0"
"--group=root:0")))))))