Matthew Jordan <matthewjordandev...@yandex.com> writes: > Good Day everyone, > > After running the following commands I got some output at the end > indicating non-determinisim. > > ================================================================================ > > $ export GUIX_BUILD_OPTIONS="--keep-failed --verbosity=3" > $ ./pre-inst-env guix build --rounds=2 go@1.4 &>/dev/stdout &>${BUILD_LOG} > > ... > result of ‘/gnu/store/y89n1idbjpq0hhqjpg82mw6bd1llnl21-go-1.4.3.drv’ > differs from previous round; rejecting as non-deterministic > @ build-failed /gnu/store/y89n1idbjpq0hhqjpg82mw6bd1llnl21-go-1.4.3.drv > - 1 result of ‘/gnu/store/y89n1idbjpq0hhqjpg82mw6bd1llnl21-go-1.4.3.drv’ > differs from previous round; rejecting as non-deterministic > note: keeping build directory `/tmp/guix-build-go-1.4.3.drv-0' > guix build: error: build failed: build of > `/gnu/store/y89n1idbjpq0hhqjpg82mw6bd1llnl21-go-1.4.3.drv' failed > > ================================================================================ > > What I would like to know, is there a way to have two build/output directories > to compare (maybe with diff or some other tool). Basically I'm just > trying to identify the files causing the non-determinisim. > >From the manual <https://www.gnu.org/software/guix/manual/html_node/Invoking-guix-challenge.html>, you can use diffoscope as an 'advanced' diff.
>From this website <https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/golang.html>, it seems go is known to be non-reproducible. Description of the problem: The golang compiler embeds paths with a random component into object files. Example: DW_AT_name : (indirect string, offset: 0x1b1): /tmp/go-build175461345/github.com/docker/docker/pkg/term/_obj/tc_linux_cgo.cgo2.c People will be happy if you manage to fix it! > Any information would be appreciated. > Thanks in advance! > > Sincerely, > > -- > Matthew Jordan > Sent with my mu4e