gnu: Build tarballs deterministically.

* gnu/packages/make-bootstrap.scm (tarball-package)[arguments]: Build tarball
  deterministically.
* gnu/packages/admin.scm (isc-dhcp)[arguments]: In 'post-configure' phase,
  create bind.tar.gz deterministically.
* gnu/packages/video.scm (avidemux)[arguments]: In 'repack-ffmpeg' phase,
  create ffmpeg-1.2.1.tar.bz2 deterministically.
This commit is contained in:
Mark H Weaver 2015-07-14 19:44:38 -04:00
parent 2e9511dfbd
commit c09e6a5f5e
3 changed files with 11 additions and 3 deletions

View File

@ -412,7 +412,11 @@ connection alive.")
(for-each patch-shebang
(find-files "bind-9.9.5-P1" ".*"))
(zero? (system* "tar" "cf" "bind.tar.gz"
"bind-9.9.5-P1"))))
"bind-9.9.5-P1"
;; avoid non-determinism in the archive
"--mtime=@0"
"--owner=root:0"
"--group=root:0"))))
(alist-cons-after
'install 'post-install
(lambda* (#:key inputs outputs #:allow-other-keys)

View File

@ -629,7 +629,9 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
,(or (%current-target-system)
(%current-system))
".tar.xz")
"."))))))))))
"."
;; avoid non-determinism in the archive
"--mtime=@0" "--owner=root:0" "--group=root:0"))))))))))
(define %bootstrap-binaries-tarball
;; A tarball with the statically-linked bootstrap binaries.

View File

@ -1150,7 +1150,9 @@ for use with HTML5 video.")
(with-directory-excursion "avidemux_core/ffmpeg_package"
(substitute* "ffmpeg-1.2.1/configure"
(("#! /bin/sh") (string-append "#!" (which "bash"))))
(system* "tar" "cjf" "ffmpeg-1.2.1.tar.bz2" "ffmpeg-1.2.1")
(system* "tar" "cjf" "ffmpeg-1.2.1.tar.bz2" "ffmpeg-1.2.1"
;; avoid non-determinism in the archive
"--mtime=@0" "--owner=root:0" "--group=root:0")
(delete-file-recursively "ffmpeg-1.2.1")))
(alist-replace 'configure
(lambda _