You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Remove sources of non-determinism in the build process.
### Changes
- Add `-trimpath` to Go builds (strips file paths from binaries)
- Use commit timestamp for `BuildTime` ldflags instead of `$(date -u)`
- Use commit timestamp for VERSION string instead of `$(date +%s)`
- Set `SOURCE_DATE_EPOCH` environment variable
- Normalize timestamps in `.deb` packages
- Add reproducible tar options (`--mtime`, `--owner`, `--group`,
`--sort`)
### What this achieves
Builds on the **same OS/toolchain** now produce identical artifacts.
Verified by running try-release twice on the same commit—both produced
identical SHA256 checksums.
### What this does NOT address
Full reproducibility across different build environments would
additionally require:
- Pinning OS versions (CGO library linkage varies by OS)
- Potentially other factors
This PR addresses the low-hanging fruit; cross-environment
reproducibility is out of scope.
0 commit comments