From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ivan Vilata i Balaguer Subject: Re: About conflicting entries in a profile Date: Fri, 10 May 2019 18:12:50 -0400 Message-ID: <20190510221250.GF11938@sax.terramar.selidor.net> References: <20190509235359.GK19928@sax.terramar.selidor.net> <92E9AA64-9502-481C-8E88-1A786CC45A0B@lepiller.eu> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([209.51.188.92]:54863) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hPDlD-0000xW-DA for help-guix@gnu.org; Fri, 10 May 2019 18:13:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hPDlC-00050H-DB for help-guix@gnu.org; Fri, 10 May 2019 18:12:59 -0400 Received: from lev.selidor.net ([66.246.138.156]:40059) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hPDlC-0004zd-9d for help-guix@gnu.org; Fri, 10 May 2019 18:12:58 -0400 Content-Disposition: inline In-Reply-To: <92E9AA64-9502-481C-8E88-1A786CC45A0B@lepiller.eu> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Julien Lepiller Cc: help-guix@gnu.org, Ivan Vilata i Balaguer Julien Lepiller (2019-05-10 08:23:22 +0200) wrote: > >[=E2=80=A6] What I don't get is *why* having two different versions of > >``python-attrs`` in the profile is considered an error. My understand= ing > >was that two different packages in the profile should be able to depen= d on > >different versions of the same library without problems, since they ar= e > >referred by its absolute path in the store so they don't conflict. I > >understand that I may not directly ``guix install`` two versions of th= e > >same package (because the may e.g. put the same entry under > >``$GUIX_PROFILE/bin``), but in my case ``python-attrs`` is just a > >dependency package which doesn't show up in ``guix package -I``. > > > >Can anybody shed some light on the issue? Thanks! [=E2=80=A6] >=20 > Hi, >=20 > With packages written in C for instance you're right: dependencies are > directly embeded into binaries. With python however, we cannot embed st= ore > paths by default, so we use propagated-inputs instad of regular > inputs. Propagated inputs are installed in the profile along with their > dependant, recursively, hence the conflict. >=20 > With executable packages, we could try and wrap packages to define a > PYTHONPATH, so we don't have to use propagated inputs, but that's not > possible with libraries. Aaah ok, it's clear now. Since you mentioned them, I looked for ``propagated-inputs`` in the fine Guix manual and got the extra details f= rom sections "Invoking =E2=80=98guix package=E2=80=99" (regarding the ``--ins= tall`` option) and "=E2=80=98package=E2=80=99 Reference" (regarding ``propagated-inputs``). Thank you very much! --=20 Ivan Vilata i Balaguer -- https://elvil.net/