From 20d9535e1bf981a37f39f171ad72f67cdb1e6919 Mon Sep 17 00:00:00 2001 From: Carl Dong Date: Sat, 29 May 2021 01:28:10 -0400 Subject: [PATCH] gnu: nsis: Respect SOURCE-DATE-EPOCH for reproducibility * gnu/packages/patches/nsis-source-date-epoch.patch: New patch. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/installers.scm (make-nsis)[source]: Apply it. --- gnu/local.mk | 1 + gnu/packages/installers.scm | 3 ++- .../patches/nsis-source-date-epoch.patch | 23 +++++++++++++++++++ 3 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/nsis-source-date-epoch.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8c235f50c8..870769cffc 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1468,6 +1468,7 @@ dist_patch_DATA = \ %D%/packages/patches/network-manager-plugin-path.patch \ %D%/packages/patches/nginx-socket-cloexec.patch \ %D%/packages/patches/nsis-env-passthru.patch \ + %D%/packages/patches/nsis-source-date-epoch.patch \ %D%/packages/patches/nss-increase-test-timeout.patch \ %D%/packages/patches/nss-3.56-pkgconfig.patch \ %D%/packages/patches/ntfs-3g-CVE-2019-9755.patch \ diff --git a/gnu/packages/installers.scm b/gnu/packages/installers.scm index 775b91f0f7..c768a367aa 100644 --- a/gnu/packages/installers.scm +++ b/gnu/packages/installers.scm @@ -42,7 +42,8 @@ (sha256 (base32 "1sbwx5vzpddharkb7nj4q5z3i5fbg4lan63ng738cw4hmc4v7qdn")) - (patches (search-patches "nsis-env-passthru.patch")))) + (patches (search-patches "nsis-env-passthru.patch" + "nsis-source-date-epoch.patch")))) (build-system scons-build-system) (native-inputs `(("xgcc" ,xgcc) ("xbinutils" ,xbinutils) diff --git a/gnu/packages/patches/nsis-source-date-epoch.patch b/gnu/packages/patches/nsis-source-date-epoch.patch new file mode 100644 index 0000000000..744c2a8011 --- /dev/null +++ b/gnu/packages/patches/nsis-source-date-epoch.patch @@ -0,0 +1,23 @@ +Honour SOURCE_DATE_EPOCH for VERSION default + +Merged upstream as cd3f1024a37a332f1d4fa96a817ca80dfa2a478c, but not yet in a +release. GitHub PR: https://github.com/kichik/nsis/pull/13 + +Python snippet from: https://reproducible-builds.org/docs/source-date-epoch/#python + + +diff --git a/SConstruct b/SConstruct +index e8252c9..41786f2 100755 +--- a/SConstruct ++++ b/SConstruct +@@ -95,8 +95,8 @@ default_doctype = 'html' + if defenv.WhereIs('hhc', os.environ['PATH']): + default_doctype = 'chm' + +-from time import strftime, gmtime +-cvs_version = strftime('%d-%b-%Y.cvs', gmtime()) ++import time ++cvs_version = time.strftime('%d-%b-%Y.cvs', time.gmtime(int(os.environ.get('SOURCE_DATE_EPOCH', time.time())))) + + opts = Variables() + -- 2.20.1