packages: patch-and-repack: Build tarballs deterministically.

* guix/packages.scm (patch-and-repack)[build]: When invoking 'tar' to repack
  the archive, pass "--mtime=@0", "--owner=root:0", and "--group=root:0".
This commit is contained in:
Mark H Weaver 2015-07-14 19:41:20 -04:00
parent c6d33a9d9c
commit 2e9511dfbd

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -480,7 +480,11 @@ (define (first-file directory)
(begin (chdir "..") #t)
(zero? (system* (string-append #+tar "/bin/tar")
"cvfa" #$output directory)))))))
"cvfa" #$output directory
;; avoid non-determinism in the archive
"--mtime=@0"
"--owner=root:0"
"--group=root:0")))))))
(let ((name (tarxz-name original-file-name))
(modules (delete-duplicates (cons '(guix build utils) modules))))