Hi,

for questions, help-guix mailing list is preferred to this bug tracker.
I will close this issue (with hopefully useful answer below), feel free
to continue on the mailing list.

Dennis Bell <[email protected]> writes:

> We're looking into reproducible environments for our research and Guix
> seems promising. Could you point me to a good starting point on how it
> helps with that?

I think reading up on time-machine, shell (preferably with --container
or at least --pure) and manifests would be a good starting point (see
links below).  The idea is that you provide `channels.scm' file freezing
your Guix version, `manifest.scm' freezing your set of dependencies and
then run your tasks inside the resulting environment.

Still, some things leak through.  Time, file system, kernel and actual
hardware.  I remember there was an reproducibility issue tracked down to
difference in supported instruction sets on the CPU.  You can likely
overcome some of these with virtual machines (`guix system vm'?) if your
use case requires it.

https://guix.gnu.org/manual/devel/en/html_node/Invoking-guix-time_002dmachine.html

https://guix.gnu.org/manual/devel/en/html_node/Invoking-guix-shell.html

https://guix.gnu.org/manual/devel/en/html_node/Writing-Manifests.html

Hope this helps,
Tomas

-- 
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.



Reply via email to