Most active commenters
  • eviks(3)

←back to thread

764 points bertman | 14 comments | | HN request time: 0s | source | bottom
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 #
1. 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 #
2. gjvc ◴[] No.43491457[source]
stealing this, thank you
3. eviks ◴[] No.43491620[source]
How is that helpful to ignore a better alternative just because a worse one exists?
replies(2): >>43491767 #>>43501196 #
4. palata ◴[] No.43491767[source]
They precisely say they use it as a better alternative to bash. Obviously they don't think that Python is a better alternative here... or did I misunderstand the question?
replies(1): >>43491793 #
5. eviks ◴[] No.43491793{3}[source]
Not obvious to me that they think Python is worse than Perl, and make the phrase even less sensible.
replies(2): >>43491988 #>>43491994 #
6. dizhn ◴[] No.43491988{4}[source]
Weird wording yes. I read it as "yes perl is better than bash" (I assume for tasks that need actual programming languages), "no it's not worse than python".
replies(1): >>43492687 #
7. palata ◴[] No.43491994{4}[source]
So you genuinely believe that they think Python is a better choice in this case, but still chose to go for Perl because they believe it's worse? How does that work?
replies(1): >>43492023 #
8. nukem222 ◴[] No.43492020[source]
Notably, they forgot to improve on readability and maintability, both of which are markedly worse with perl.

Look I get people use the tools they use and perl is fine, i guess, it does its job, but if you use it you can safely expect to be mocked for prioritizing string operations or whatever perl offers over writing code anyone born after 1980 can read, let alone is willing to modify.

For such a social enterprise, open source orgs can be surprisingly daft when it comes to the social side of tool selection.

Would this tool be harder to write in python? Probably. Is it a smart idea to use it regardless? Absolutely. The aesthetics of perl are an absolute dumpster fire. Larry Wall deserves persecution for his crimes.

replies(1): >>43493083 #
9. eviks ◴[] No.43492023{5}[source]
It works by not mixing two different people: the commenter and the implementer.

Also, it works trivially even in the case of the implementer - he might believe Python is better, but chose Perl because he likes it more

10. ben0x539 ◴[] No.43492687{5}[source]
I'm not reading it as "it's not worse than python", I am reading it as "the choice was between bash and perl, python was not an option for reasons unrelated to its merits"
11. sgarland ◴[] No.43493083[source]
Did you miss the post a few above yours, where an author of this tool explained why it’s written in Perl? Introducing a new language dependency for a build, especially of an OS, is not something you undertake lightly.
replies(1): >>43494118 #
12. nukem222 ◴[] No.43494118{3}[source]
Right. Good luck finding people who want to maintain that. It just seems incredibly short-sighted unless the current batch of maintainers intend to live forever.
replies(1): >>43495073 #
13. sgarland ◴[] No.43495073{4}[source]
Counterpoint: if someone knows Perl, they are much more likely to have the requisite skills to be a maintainer for a distro. It’s self-selection.

Imagine the filtering required for potential maintainers if they rewrote the packaging to JS.

14. fooker ◴[] No.43501196[source]
The same reason people write C++ instead of better^TM alternatives.

Pick the tool you already know and focus on solving the problem.