attempt reproducible build

This commit is contained in:
4am 2025-03-30 13:52:21 -04:00
parent a05064f633
commit 5ae525aa72
2 changed files with 15 additions and 0 deletions

View File

@ -108,6 +108,8 @@ FINDER.ROOT=res/Finder.Root
HELP=res/HELP
JOYSTICK=res/JOYSTICK
TITLE=res/TITLE
SOURCE_DATE := $(shell git log -1 --format=%cD | bin/rfc2822_to_touch.py)
export SOURCE_DATE_EPOCH = $(shell git log -1 --format=%ct)
.PHONY: compress attract cache clean mount all al
@ -115,11 +117,16 @@ TITLE=res/TITLE
$(HDV): $(PROBOOTHD) $(LAUNCHER.SYSTEM) $(PRELAUNCH) $(X) $(TOTAL.DATA) $(TITLE.ANIMATED.SOURCES) $(ICONS) $(FINDER.DATA) $(FINDER.ROOT) $(PREFS.CONF)
cp res/blank.hdv "$@"
cp res/_FileInformation.txt "$(BUILDDIR)"/
touch -d"$(SOURCE_DATE)" "$(LAUNCHER.SYSTEM)"
$(CADIUS) ADDFILE "$@" "/$(VOLUME)/" "$(LAUNCHER.SYSTEM)" -C >> "$(CADIUS.LOG)"
for f in "$(TOTAL.DATA)" "$(PREFS.CONF)" "$(FINDER.DATA)" "$(FINDER.ROOT)"; do \
touch -d"$(SOURCE_DATE)" "$$f"; \
$(CADIUS) ADDFILE "$@" "/$(VOLUME)/" "$$f" -C >> "$(CADIUS.LOG)"; \
done
cp src/prelaunch/_FileInformation.txt "$(PRELAUNCH)"/
for f in "$(PRELAUNCH)"/*; do \
touch -d"$(SOURCE_DATE)" "$$f"; \
done
for f in res/TITLE.ANIMATED "$(ICONS.SOURCE.DIR)" "$(PRELAUNCH)" "$(X)"; do \
rm -f "$$f"/.DS_Store; \
$(CADIUS) ADDFOLDER "$@" "/$(VOLUME)/$$(basename $$f)" "$$f" -C >> "$(CADIUS.LOG)"; \

8
bin/rfc2822_to_touch.py Executable file
View File

@ -0,0 +1,8 @@
#!/usr/bin/env python3
from email.utils import parsedate_to_datetime
from datetime import UTC
from sys import stdin, stdout
d = parsedate_to_datetime(stdin.readline())
stdout.write(d.astimezone(UTC).strftime("%Y-%m-%dT%H:%M:%SZ\n"))