reproduce-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Reproduce-devel] [task #15286] Using GNU Guix as template's package man


From: Mohammad Akhlaghi
Subject: [Reproduce-devel] [task #15286] Using GNU Guix as template's package manger
Date: Mon, 27 May 2019 08:13:22 -0400 (EDT)
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:67.0) Gecko/20100101 Firefox/67.0

URL:
  <https://savannah.nongnu.org/task/?15286>

                 Summary: Using GNU Guix as template's package manger
                 Project: Reproducible paper template
            Submitted by: makhlaghi
            Submitted on: Mon 27 May 2019 01:13:20 PM BST
         Should Start On: Mon 27 May 2019 12:00:00 AM BST
   Should be Finished on: Mon 27 May 2019 12:00:00 AM BST
                Category: Software
                Priority: 5 - Normal
                  Status: Need Info
                 Privacy: Public
        Percent Complete: 0%
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any
                  Effort: 0.00

    _______________________________________________________

Details:

So far, we have written a custom pipeline to install all the necessary
software for a research project. But it is growing fast and our current
solution will not easily scale up to address all the complexities that will
arise (and to maintain all those complexities).

But fortunately there is a very good system that is designed precisely for
this job: GNU Guix <https://www.gnu.org/software/guix/>. As a relatively
long-term project, I am defining this task to start migrating to GNU Guix as
the pipeline's package manager.

Guix has many advantages, the most important is that it keeps track of the
dependencies (with MD5 sums in the filenames!), producing a specialized
environment that can allow the coexistance of multiple versions of a software
without any conflict. In particular, this will allow us to share similar
software between different projects (for example not have to compile the same
GCC for different projects as we do now!).

But it does have some limitations compared to our current solution. Two of the
most prominent ones are these:

* It needs root access for installing Guix itself. Guix does have a proposed
solution
<https://guix-hpc.bordeaux.inria.fr/blog/2017/10/using-guix-without-being-root/>
for this.
* It won't work on Mac (because of macOS's poor/changing infra-structure that
hamper reproducibility). This can be solved with containers like Docker (which
we'll need to include anyway in the near future).

However, in my view, the benefits of using GNU Guix, far out-weight these
limitations.

Please share your thoughts and ideas about such a migration.

Of course, for the time being, we'll keep maintaining and working on the
current package manager. But work on migrating to GNU Guix will go ahead in
parallel until Guix is fully working within the pipeline and and robust
solutions to the draw-backs above have been found/implemented. 




    _______________________________________________________

Reply to this item at:

  <https://savannah.nongnu.org/task/?15286>

_______________________________________________
  Message sent via Savannah
  https://savannah.nongnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]