From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Subject: bug#34590: Effects of GUIX_PACKAGE_PATH and --load-path differ Date: Wed, 06 Mar 2019 14:38:11 +0100 Message-ID: <87lg1si0n0.fsf@gnu.org> References: <8736oivj6s.fsf@atufi.org> 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]:37145) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h1WlC-0000f2-RP for bug-guix@gnu.org; Wed, 06 Mar 2019 08:39:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h1WlC-0002Je-4b for bug-guix@gnu.org; Wed, 06 Mar 2019 08:39:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:48523) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1h1WlB-0002JR-WB for bug-guix@gnu.org; Wed, 06 Mar 2019 08:39:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1h1WlB-00059c-Nh for bug-guix@gnu.org; Wed, 06 Mar 2019 08:39:01 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <8736oivj6s.fsf@atufi.org> (Daniel Gerber's message of "Wed, 20 Feb 2019 11:38:19 +0100") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Daniel Gerber Cc: 34590@debbugs.gnu.org Hi Daniel, Daniel Gerber skribis: > From reading the doc on `guix environment`: > > -L, --load-path=3DDIR prepend DIR to the package module search path > > I would expect these to be exactly equivalent: > > $ export GUIX_PACKAGE_PATH=3D; guix environment -L path ... > $ export GUIX_PACKAGE_PATH=3Dpath; guix environment ... > > Yet they differ. With libuv@1.24.0 in the guix channel (a37bdf4) and libu= v@1.26.0 in --and also node@11.10.0 only in--=20 > /gnu/guix-local-packages/: > > $ export GUIX_PACKAGE_PATH=3D/gnu/guix-local-packages/; guix environment > --no-grafts -C node@11.10.0 --ad-hoc strace gdb -- ls /gnu/store/ > |grep -o libuv-.* > libuv-1.26.0 > > $ export GUIX_PACKAGE_PATH=3D; guix environment -L=20 > /gnu/guix-local-packages/ --no-grafts -C node@11.10.0 --ad-hoc strace > gdb -- ls /gnu/store/ |grep -o libuv-.* > libuv-1.24.0 > > Is this the intended behaviour? Probably not. I experimented a bit and couldn=E2=80=99t find any evidence that the search= path order would differ. However, what do /gnu/guix-local-packages/ contain? I suppose it provides node@11.10.0? Then my guess is that =E2=80=9Cnode@11.10.0=E2=80=9D is ambiguous and that =E2=80=98specification->package=E2=80=99 chooses one of the two in a non-de= terministic fashion. Can you show the output of: guix package -A node guix package -A node -L /gnu/guix-local-packages GUIX_PACKAGE_PATH=3D/gnu/guix-local-packages guix package -A node ? TIA, Ludo=E2=80=99.