Subject: [bug#48325] [PATCH v5 5/5] DRAFT gnu: julia: Update to 1.6.1.

From: Jean-Baptiste Volatier <[email-masked]>
Date: Sun, 04 Jul 2021 17:47:25 +0000

On Sunday, July 4th, 2021 at 1:43 PM, Maxime Devos <[email-masked]> wrote:

> So perhaps you could define a "nss-certs-for-tests" variable
> (currently just pointing to nss-certs), and add "nss-certs-for-tests" to
> #:disallowed-references to prevent "nss-certs-for-tests" being used at
> run-time?

Ok, I did not know about #:disallowed-references.

> I don't quite see why Julia needs certificates at build time though ...

I can only speculate, but my guess is: julia is compiled just-in-time, functions
are compiled first time they are run. For some common function the build
procedure runs some sample code in order to compile them ahead of time. If
certificates are not present there are some functions that do not get compiled
ahead of time and then the build procedure fails.

> Also, I wonder if this causes reproducibility issues --- if we try to rebuild
> julia after, say, 50 years, e.g. by using "guix time-machine", wouldn't the
> certificates become invalid, and would therefore the build of Julia fail?

I thought that guix build was running with time set 1st January 1970 so that
should not happen? Or am I mistaken?

Also current julia package is also not reproducible it seems. [1]

[1] https://issues.guix.gnu.org/22304

Cheers,
JB.