Hi,
On Mon, 2 Dec 2019 at 18:28, zimoun <zimon.toutoune@gmail.com> wrote:
Toggle quote (2 lines)
> If I understand well [1], the file .ji are "precompiled" (analogy: .pyc). Hum?!
The non-determinism seems coming from these "precompiled" .ji filesand 2 bugs are opened upstream.https://github.com/JuliaLang/julia/issues/25900https://github.com/JuliaLang/julia/issues/34115Thanks to Nicolò to pointing out these [1] when working on the version update.[1] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=38546#80With lengthy and clear details. :-)Let start the container with everything useful. Toggle snippet (8 lines)
mkdir -p /tmp/test-julia && cd /tmp/test-julia
guix time-machine --commit=b5d4d5b \ environment -u nixbld --no-cwd --container --network \ --expose=$(realpath determinism) --share=/tmp/test-julia \ --ad-hoc julia coreutils nss-certs curl tar gzip
Then, the path to reproduce is odd because there is no Julia packagesin Guix. So we need to use 'Pkg' from Julia which downloads fromelsewhere and the reproducibility of such is not well controlled butit gives an idea. :-)
Toggle snippet (18 lines)
export SSL_CERT_DIR="$GUIX_ENVIRONMENT/etc/ssl/certs"export SSL_CERT_FILE="$SSL_CERT_DIR/ca-certificates.crt"export GIT_SSL_CAINFO="$SSL_CERT_FILE"
# populate the Julia package managerjulia --startup-file=no -q -e 'using Pkg; Pkg.instantiate()'
# install somethingjulia --startup-file=no -q -e 'using Pkg; Pkg.add("Compat")'
# use something / precompiled itjulia --startup-file=no -q -e 'using Compat'
# check the .ji filemd5sum ~/.julia/compiled/v1.1/Compat/*
Then each time one runs this block, one gets different hash.
All the best,simon