!LemuOOvbWqRXodtSsw:nixos.org

NixOS Reproducible Builds

544 Members
Report: https://reproducible.nixos.org Project progress: https://github.com/orgs/NixOS/projects/30124 Servers

Load older messages


SenderMessageTime
26 May 2021
@zimbatm:numtide.comJonas ChevalierWhen you write a nix template and then find out that some parameters need to be filled in at runtime10:43:12
@zimbatm:numtide.comJonas ChevalierHow many times I had to tack on some sed to fill the runtime info. Or some mix between bash at runtime and nix as eval time.10:44:14
@andi:kack.itandi-In a way the language that you use to describe the build environment must also drive it.10:45:28
@andi:kack.itandi-Or you always end up with the split we are having right now.10:45:38
@zimbatm:numtide.comJonas ChevalierIt reminds me of terraform that has two languages into one10:46:45
@toonn:matrix.orgtoonn Though you kinda always have to bridge to shell eventually. Because that's what most build tools expect. 10:46:57
@andi:kack.itandi-Yes but usually you call a bash script and only care about the result. You never (or rarely?) consume the environment it created. You can just call another shell script from your clean shell env. Problem arises when you have to use the output of a previous phase.10:49:03
@andi:kack.itandi-

Gytis Ivaskevicius: btw: the gccgo9 build did finish with this line:

cycle detected in the references of '/nix/store/37msxfm5cil2m4cvn06yb7miv68j9pk5-gccgo9-9.3.0-lib' from '/nix/store/xdyzifmvys1gna6fcbmvc6wahd5cy0vn-gccgo9-9.3.0'

10:50:15
@andi:kack.itandi-but otherwise looked good :D10:50:21
@gytis-ivaskevicius:matrix.orgGytis Ivaskevicius:D10:51:12
@gytis-ivaskevicius:matrix.orgGytis Ivaskeviciusnice10:51:13
@andi:kack.itandi-So if you want to redo the Go bootstrap ping me for a review. I'd be very happy about it.10:52:16
@gytis-ivaskevicius:matrix.orgGytis IvaskeviciusIll think about it. Currently i got quite a bit on my hands10:53:36
@andi:kack.itandi-Another exercise related to bootstrapping that I would love to do: build a bootstrap tarball on x86_64-linux with nixpkgs, then substitute our bootstrap tarball with the equivalent files from a debian/fedora/... and rebuild that bootstrap tarball. Ideally the results should be identialca.10:54:06
@andi:kack.itandi- * Another exercise related to bootstrapping that I would love to do: build a bootstrap tarball on x86_64-linux with nixpkgs, then substitute our bootstrap tarball with the equivalent files from a debian/fedora/... and rebuild that bootstrap tarball. Ideally the results should be identialcal10:54:09
@gytis-ivaskevicius:matrix.orgGytis IvaskeviciusOh, actually thats pretty smart10:54:44
@andi:kack.itandi-If they are not we can see why and rule out those impurities. Once we can show that you can bootstrap nixpkgs from another distros sources (e.g. Guix MES bootstrapped toolchain) we have a bit more "trust" into those files.10:55:46
@linus.heckemann:matrix.mayflower.deLinux Hackermanthat's basically https://www.schneier.com/blog/archives/2006/01/countering_trus.html right?10:57:35
@andi:kack.itandi-perhaps a gentoo stage1 tarball would be a good starting point as those already exist10:57:39
@gytis-ivaskevicius:matrix.orgGytis Ivaskeviciuswell, currently its not going to be reproducible for sure11:00:07
@andi:kack.itandi-Well because our GCC isn't but otherwise?11:01:34
@andi:kack.itandi-Actually the slower GCC should be reproducible so not sure waht might be the issue11:02:44
@gytis-ivaskevicius:matrix.orgGytis IvaskeviciusDue to the issue that i sent earlier which is basically gcc/glibc and im not sure about all bin utils and stuff11:02:59
@gytis-ivaskevicius:matrix.orgGytis Ivaskeviciusshell/utils might be screwed as well.Not sure tho11:03:46
@andi:kack.itandi-But once we can reproduce the tarballs (even cross distro?) it might be a good idea to do "one final" toolchain rotation, no?11:04:03
@andi:kack.itandi-So that we have a clean slate from which we can start.11:04:13
@gytis-ivaskevicius:matrix.orgGytis Ivaskeviciusyou basically mean extra stdenv stage?11:04:34
@gytis-ivaskevicius:matrix.orgGytis Ivaskeviciusif so - boom https://github.com/NixOS/nixpkgs/issues/12346711:05:05
@andi:kack.itandi-No, lets say we put in the effort to fix your said impurties and then go the extra mile to show that we can now reproduce the tarball based on a) the previousy nixpkgs see and b) another distros toolchain we could then do one "final" swap of the bootstrap seeds. That would let us start from a well defined bootstrap seed instead of the wild mixture it is now.11:05:51
@andi:kack.itandi-And from there on we only add newer compiler versions to the bootstrap (until in 20y we decide that the 30d bootstrap time is getting too long and cut the chain)11:06:25

Show newer messages


Back to Room ListRoom Version: 6