[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Reproducible environments
From: |
Ludovic Courtès |
Subject: |
Re: Reproducible environments |
Date: |
Wed, 07 Oct 2015 14:11:51 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Konrad Hinsen <address@hidden> skribis:
> Here's an example (a simplified version of the real situation that motivated
> me to check out Guix):
>
> - I need to use Program X that depends on libraries A and B.
> - The current versions are A-1.1 and B-42.0.1.
> - X requires "1.0 or later" for A but "41.*" for B, because
> version 42.* of B is not fully backwards compatible.
>
> If there's no Guix commit that has both A and B in the required
> version range, then the easiest way to get what I need is to use an
> older Guix commit for installing B than I use for A.
That works if you use ‘guix package -i’ to incrementally build the
profile, using different Guix commits; but it prevents you from using
the declarative ‘--manifest’ approach.
> In fact, the only other alternative I see is to add a package definition
> for the old version of B to a later Guix commit. That's likely to be
> much more difficult.
It depends, but not necessarily. It’s particularly easy to maintain
different versions of leaf packages, as shown in Figure 4 of the paper.
Ludo’.