[tor-commits] [tor-browser-bundle/hardened-builds] Bug 18845: generate reproducible archives without relying on libfaketime

gk at torproject.org gk at torproject.org
Sun Jun 5 21:07:35 UTC 2016


commit 5eacf7266cd60d8b3f6bca63ca427c326a916c16
Author: Nicolas Vigier <boklm at torproject.org>
Date:   Mon May 16 19:26:26 2016 +0200

    Bug 18845: generate reproducible archives without relying on libfaketime
---
 gitian/build-helpers/ddmg.sh    | 3 +++
 gitian/build-helpers/dtar.sh    | 3 +++
 gitian/build-helpers/dzip.sh    | 3 +++
 gitian/build-helpers/re-dzip.sh | 2 ++
 4 files changed, 11 insertions(+)

diff --git a/gitian/build-helpers/ddmg.sh b/gitian/build-helpers/ddmg.sh
index c37a1fd..f956aa6 100755
--- a/gitian/build-helpers/ddmg.sh
+++ b/gitian/build-helpers/ddmg.sh
@@ -11,6 +11,9 @@ shift
 find $@ -executable -exec chmod 750 {} \;
 find $@ ! -executable -exec chmod 640 {} \;
 
+[ -n "$REFERENCE_DATETIME" ] && \
+        find $@ -exec touch --date="$REFERENCE_DATETIME" {} \;
+
 cd $@
 find . -type f | sed -e 's/^\.\///' | sort | xargs -i echo "{}={}" > ~/build/filelist.txt
 find . -type l | sed -e 's/^\.\///' | sort | xargs -i echo "{}={}" >> ~/build/filelist.txt
diff --git a/gitian/build-helpers/dtar.sh b/gitian/build-helpers/dtar.sh
index e8ec340..3aa6f0c 100755
--- a/gitian/build-helpers/dtar.sh
+++ b/gitian/build-helpers/dtar.sh
@@ -5,6 +5,9 @@ export LC_ALL=C
 TARFILE=$1
 shift
 
+[ -n "$REFERENCE_DATETIME" ] && \
+	find $@ -exec touch --date="$REFERENCE_DATETIME" {} \;
+
 # No need to execute chmod on (possibly) dangling symlinks.
 find $@ ! -type l -executable -exec chmod 700 {} \;
 find $@ ! -type l ! -executable -exec chmod 600 {} \;
diff --git a/gitian/build-helpers/dzip.sh b/gitian/build-helpers/dzip.sh
index 2f7dc54..5772c8b 100755
--- a/gitian/build-helpers/dzip.sh
+++ b/gitian/build-helpers/dzip.sh
@@ -5,6 +5,9 @@ export LC_ALL=C
 ZIPFILE=$1
 shift
 
+[ -n "$REFERENCE_DATETIME" ] && \
+	find $@ -exec touch --date="$REFERENCE_DATETIME" {} \;
+
 find $@ -executable -exec chmod 700 {} \;
 find $@ ! -executable -exec chmod 600 {} \;
 
diff --git a/gitian/build-helpers/re-dzip.sh b/gitian/build-helpers/re-dzip.sh
index 656e225..27828e9 100755
--- a/gitian/build-helpers/re-dzip.sh
+++ b/gitian/build-helpers/re-dzip.sh
@@ -7,6 +7,8 @@ ZIPFILE=`basename $1`
 mkdir tmp_dzip
 cd tmp_dzip
 unzip ../$1
+[ -n "$REFERENCE_DATETIME" ] && \
+	find . -exec touch --date="$REFERENCE_DATETIME" {} \;
 find . -executable -exec chmod 700 {} \;
 find . ! -executable -exec chmod 600 {} \;
 find . | sort | zip $ZIPOPTS -X -@ $ZIPFILE





More information about the tor-commits mailing list