| 19 Aug 2021 |
andi- | It would but it shouldn't. Packages should have a build system that doesn't care about specific times. There is already a somewhat standard env var to signal the time that should be used in e.g. binaries to display build time. | 16:59:14 |
andi- | If we start changing the sandbox it is a quick win and it is nice to find impurities but really the builds need to be fixed. | 16:59:45 |
nrdxp | Maybe we could use datefudge to help find impure builds then at least | 17:02:02 |
chreekat | Y not both 🙂 | 17:02:11 |
nrdxp | I agree with you andi-, but I also feel like trying to change the world is always an uphill and losing battle. So if upstream builders won't do anything maybe we should take the initiative? | 17:06:53 |
andi- | Have we ever actually had an upstream that rejected non-nix specific reproducibility patches? | 17:14:18 |
andi- | Given that Debian is leading this I don't see much of a battle | 17:14:33 |
chreekat | I mean, there are approximately 20 hojillion software packages present and future that are yet to be made reproducible | 17:18:14 |
andi- | Isn't it mostly about the build system anyway? | 17:29:47 |
nrdxp | It's great to submit patches upstream, I certainly wouldn't argue against that. I just think it'd be nice behavior to have by default, since there will always be some build system somewhere that doesn't act the way we'd like. And even if we patched them all someday. Then a new one would come out shortly after and break everything again 😅 | 17:42:49 |
nrdxp | * It's great to submit patches upstream, I certainly wouldn't argue against that. I just think it'd be nice behavior to have by default, since there will always be some build system somewhere that doesn't act the way we'd like. And even if we patched them all someday, Then a new one would come out shortly after and break everything again 😅 | 17:43:10 |
nrdxp | * It's great to submit patches upstream, I certainly wouldn't argue against that. I just think it'd be nice behavior to have by default, since there will always be some build system somewhere that doesn't act the way we'd like. And even if we patched them all someday, then a new one would come out shortly after and break everything again 😅 | 17:43:21 |
nrdxp | If I find some time, maybe I'll try to replicate the behavior in a small PR and see how it works | 17:44:22 |
nrdxp | For the time being, we could probably automatically run datefudge -s against known non-reproducible derivations and see if it fixes any of them. Do we have a reproducible test suite? | 17:54:18 |
tomberek | nrdxp: you can run ./check.sh from https://github.com/grahamc/r13y.com#how-can-i-run-this | 18:31:42 |
tomberek | point it to a custom Nixpkgs with datefudge somewhere in mkDerivation and you can get a rough estimate of what is "fixed" by it | 18:32:31 |
baloo | In reply to @andi:kack.it Isn't it mostly about the build system anyway? most of them, or mis-use of build system, for which contributions are always welcomed in my experience. | 18:33:15 |
nrdxp | well there is also just nix build --rebuild flag, I just didn't know if we were already doing this en masse somewhere | 18:33:31 |
baloo | the r13y builders kind of do that. | 18:33:57 |
baloo | they list the references of the iso_minimal recursively, and rebuilds each derivation and compare with what's made available on the mirrors/cache | 18:34:45 |
baloo | https://github.com/grahamc/r13y.com/blob/master/src/eval/mod.rs | 18:35:39 |
baloo | * they list the requisites of the iso_minimal recursively, and rebuilds each derivation and compare with what's made available on the mirrors/cache | 18:36:05 |
tomberek | it's not well exposed and the HTML is wrong, but iso_gnome is also built (my latest build of that is here: https://tomberek.info/r13y.com/) | 18:37:04 |
baloo | it fails to build because of lack of disk space | 18:37:57 |
tomberek | i ran it on my own buildkite builder with more space, yay! It'd be good to fix graham's | 18:38:54 |
baloo | (on r13y, otherwise it would be shown) | 18:39:00 |
tomberek | old version here: https://r13y.com/iso_gnome/index.html | 18:39:20 |
nrdxp | does r13y have any parameters to modify a derivation if it is not reproducible, to try and make it so? | 18:41:18 |
baloo | it only builds from nixpkgs master afaik | 18:42:14 |
baloo | but I usually can reproduce (haha) the non-reproducible builds on my desktop | 18:42:33 |