From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Reproducible environments Date: Wed, 07 Oct 2015 14:11:51 +0200 Message-ID: <87d1wq7u9k.fsf@gnu.org> References: <22035.42892.444833.212704@Konrad-Hinsens-MacBook-Pro-2.local> <20151006120043.GB11759@thebird.nl> <22035.65024.910687.992427@Konrad-Hinsens-MacBook-Pro-2.local> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:54625) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZjnZd-0000R3-Sd for guix-devel@gnu.org; Wed, 07 Oct 2015 08:12:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZjnZa-0003Cj-6r for guix-devel@gnu.org; Wed, 07 Oct 2015 08:11:57 -0400 In-Reply-To: <22035.65024.910687.992427@Konrad-Hinsens-MacBook-Pro-2.local> (Konrad Hinsen's message of "Tue, 6 Oct 2015 18:59:44 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Konrad Hinsen Cc: guix-devel@gnu.org Konrad Hinsen skribis: > Here's an example (a simplified version of the real situation that motiva= ted > 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 =E2=80=98guix package -i=E2=80=99 to incrementally bu= ild the profile, using different Guix commits; but it prevents you from using the declarative =E2=80=98--manifest=E2=80=99 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=E2=80=99s particularly easy to maintain different versions of leaf packages, as shown in Figure 4 of the paper. Ludo=E2=80=99.