←back to thread

764 points bertman | 1 comments | | HN request time: 0.378s | source
Show context
imcritic ◴[] No.43484638[source]
I don't get how someone achieves reproducibility of builds: what about files metadata like creation/modification timestamps? Do they forge them? Or are these data treated as not important enough (like it 2 files with different metadata but identical contents should have the same checksum when hashed)?
replies(10): >>43484658 #>>43484661 #>>43484682 #>>43484689 #>>43484705 #>>43484760 #>>43485346 #>>43485379 #>>43486079 #>>43488794 #
jzb ◴[] No.43485346[source]
Debian uses a tool called `strip-nondeterminism` to help with this in part: https://salsa.debian.org/reproducible-builds/strip-nondeterm...

There's lots of info on the Debian site about their reproducibility efforts, and there's a story from 2024's DebConf that may be of interest: https://lwn.net/Articles/985739/

replies(1): >>43489144 #
frakkingcylons ◴[] No.43489144[source]
I see this is written in Perl, is that the case with most Debian tooling?
replies(6): >>43489677 #>>43490179 #>>43490769 #>>43490826 #>>43491933 #>>43492219 #
fooker ◴[] No.43490179[source]
It’s helpful to think of Perl as a superior bash, rather than a worse python, when it comes to scripting.
replies(3): >>43491457 #>>43491620 #>>43492020 #
1. gjvc ◴[] No.43491457[source]
stealing this, thank you