From c09e6a5f5e2a77beff89d68069f3037c1b6310e5 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Tue, 14 Jul 2015 19:44:38 -0400 Subject: [PATCH] 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. --- gnu/packages/admin.scm | 6 +++++- gnu/packages/make-bootstrap.scm | 4 +++- gnu/packages/video.scm | 4 +++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index c96e11635b..ee255b0c15 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -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) diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm index e140582a4a..07e8b5160b 100644 --- a/gnu/packages/make-bootstrap.scm +++ b/gnu/packages/make-bootstrap.scm @@ -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. diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 99cdd1ae09..0af5a3e13e 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -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 _