diff --git a/0008-Reproducible-builds-constant-timestamp-for-pom.prope.patch b/0008-Reproducible-builds-constant-timestamp-for-pom.prope.patch index fbd0156..9c8510d 100644 --- a/0008-Reproducible-builds-constant-timestamp-for-pom.prope.patch +++ b/0008-Reproducible-builds-constant-timestamp-for-pom.prope.patch @@ -1,23 +1,39 @@ -From 29b0286576c0a1fe506c43e7e7b4a44804ae2a1b Mon Sep 17 00:00:00 2001 +From 675aa30a8a763e1a964282937267a63f2594a7e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fridrich=20=C5=A0trba?= Date: Tue, 16 Jul 2024 06:56:39 +0200 Subject: [PATCH 8/8] Reproducible builds: constant timestamp for pom.properties --- - java-utils/maven_depmap.py | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) + java-utils/maven_depmap.py | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/java-utils/maven_depmap.py b/java-utils/maven_depmap.py -index 4bfb877d..1a46d337 100644 +index 4bfb877d..40cedd34 100644 --- a/java-utils/maven_depmap.py +++ b/java-utils/maven_depmap.py -@@ -172,7 +172,8 @@ def append_if_missing(archive_name, file_name, file_contents): +@@ -43,8 +43,9 @@ import sys + + from os.path import basename, dirname + import zipfile +-from time import gmtime, strftime ++import time + from copy import deepcopy ++from datetime import datetime + + from javapackages.maven.pom import POM + from javapackages.metadata.artifact import MetadataArtifact +@@ -172,7 +173,13 @@ def append_if_missing(archive_name, file_name, file_contents): archive = zipfile.ZipFile(archive_name, 'a') try: if file_name not in archive.namelist(): - archive.writestr(file_name, file_contents) -+ file_zipinfo = zipfile.ZipInfo(file_name, date_time=(1980, 1, 1, 0, 0, 0)) ++ date_time = datetime.fromtimestamp(int(os.environ.get('SOURCE_DATE_EPOCH', time.time()))).timetuple() ++ if date_time[0] < 1980: ++ date_time = (1980, 1, 1, 0, 0, 0) ++ elif date_time[0] > 2107: ++ date_time = (2107, 12, 31, 23, 59, 59) ++ file_zipinfo = zipfile.ZipInfo(file_name, date_time=date_time) + archive.writestr(file_zipinfo, file_contents) finally: archive.close()