Re:Nixos-unstable’s ISO_minimal.x86_64-Linux is 100% reprodu...
by raziel2p on Monday June 21, 2021 @02:13AM
(#27576748)
The ratio of reproducible to non-reproducible packages doesn't seem to have changed that much in the last 5 years.
[ Parent
| on HN ]
Re:Nixos-unstable’s ISO_minimal.x86_64-Linux is 100% reprodu...
by kzrdude on Monday June 21, 2021 @03:20AM
(#27577039)
They have new challenges with new packages. In the last 5 years there entered a lot of rust packages for example, a new compiler to tackle reproducibility with (and not trivial, even if upstream has worked on it a lot).
Re:Nixos-unstable’s ISO_minimal.x86_64-Linux is 100% reprodu...
by stavros on Monday June 21, 2021 @04:17AM
(#27577273)
In my experience, rustc builds are reproducible if you build on the same path. They come out byte for byte identical.
Re:Nixos-unstable’s ISO_minimal.x86_64-Linux is 100% reprodu...
by kungito on Monday June 21, 2021 @04:26AM
(#27577317)
Yeah I remember there was some drama regarding build machine path leaking into the release binaries
Re:Nixos-unstable’s ISO_minimal.x86_64-Linux is 100% reprodu...
by kzrdude on Monday June 21, 2021 @05:26AM
(#27577583)
Aha.. don't all compilers behave the same way, with debug info?
I mean it's worthwhile to fix, but that behaviour seems so standard.
Re:Nixos-unstable’s ISO_minimal.x86_64-Linux is 100% reprodu...
by KirillPanov on Monday June 21, 2021 @06:46AM
(#27577954)
No, rust leaks the path to the source code on the build machine. This path likely does not even exist on the execution machine, so there's absolutely no good reason for this leakage. It is very nonstandard.
It is really, really annoying that the Rust team is not taking this problem seriously.
Re:Nixos-unstable’s ISO_minimal.x86_64-Linux is 100% reprodu...
by shawnz on Monday June 21, 2021 @07:38AM
(#27578220)
I don't think this is correct. Most compilers include the path to the source code on the build machine in the debug info, and it's a common problem for reproducible builds. This is not a rust-specific issue.
Obviously the binary can't contain paths from the execution machine because it doesn't know what the execution machine will be at compile time, and the source code isn't stored on the execution machine anyway. The point of including the source path in the debug info is for the developer to locate the code responsible if there's a crash.
Re:Nixos-unstable’s ISO_minimal.x86_64-Linux is 100% reprodu...
by colejohnson66 on Monday June 21, 2021 @06:59AM
(#27578017)
But is it only on debug builds? Or are release builds affected? Because if it’s the latter, that’s a big issue. But for the former, does it really matter?
Re:Nixos-unstable’s ISO_minimal.x86_64-Linux is 100% reprodu...
by bmwiedemann on Tuesday June 29, 2021 @12:18PM
(#27678029)
At least in openSUSE, we always build with gcc -g and then later strip debug symbols into separate debuginfo files. This leaves a unique hash in the original file and that makes them vary if the build path changes.