From mboxrd@z Thu Jan 1 00:00:00 1970 From: Troy Sankey Subject: support for non-list search paths Date: Mon, 06 Mar 2017 11:08:29 -0500 Message-ID: <148881650998.9901.885151305016110036@what> Mime-Version: 1.0 Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg="pgp-sha256"; boundary="===============2107831543==" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:48927) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ckvBf-0004vQ-IB for guix-devel@gnu.org; Mon, 06 Mar 2017 11:08:40 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ckvBa-0004xi-ID for guix-devel@gnu.org; Mon, 06 Mar 2017 11:08:39 -0500 Received: from mail-yw0-x22b.google.com ([2607:f8b0:4002:c05::22b]:34332) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ckvBa-0004xN-CJ for guix-devel@gnu.org; Mon, 06 Mar 2017 11:08:34 -0500 Received: by mail-yw0-x22b.google.com with SMTP id p77so123758053ywg.1 for ; Mon, 06 Mar 2017 08:08:32 -0800 (PST) Received: from localhost ([98.217.8.51]) by smtp.gmail.com with ESMTPSA id z29sm670009qtz.67.2017.03.06.08.08.31 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 06 Mar 2017 08:08:31 -0800 (PST) Content-Disposition: inline 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" To: guix-devel@gnu.org --===============2107831543== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable The file "~/.guix-profile/etc/profile" treats all search paths as colon-separated lists. Some variables are not supposed to be lists, but treating them as such could confuse programs which read them. GIT_EXEC_PATH is one that has caused me trouble, so I'll be using it as an example below. The relevant line from "~/.guix-profile/etc/profile": % grep GIT_EXEC_PATH ~/.guix-profile/etc/profile export GIT_EXEC_PATH=3D"${GUIX_PROFILE:-/gnu/store/9wwv7rl8n6ydcpa0h22nd38a= mwssfrbh-profile}/libexec/git-core${GIT_EXEC_PATH:+:}$GIT_EXEC_PATH" Here's what my GIT_EXEC_PATH looks like from a terminal emulator: % echo $GIT_EXEC_PATH /home/sankey/.guix-profile/libexec/git-core:/home/sankey/.guix-profile/libe= xec/git-core Here's the error from git: % git rebase /home/sankey/.guix-profile/libexec/git-core/git-sh-setup: line 46: /home/sa= nkey/.guix-profile/libexec/git-core:/home/sankey/.guix-profile/libexec/git-= core/git-sh-i18n: No such file or directory Since my shell rcfile is sourced twice, GIT_EXEC_PATH becomes a colon-separated list. Double-sourcing the shell rcfile may not be the only way to surface this issue. If my rcfile simply set GIT_EXEC_PATH before sourcing "~/.guix-profile/etc/profile", then I would still end up with a corrupt GIT_EXEC_PATH. My workaround involves using `guix package --search-paths=3Dexact`, but this cost me some time debugging which I'd like to save the next person. I am not sure what the solution should be. Maybe just a clarification in documentation? What about an argument for search-path-specification to force the variable to always be "exact"? Troy --===============2107831543== MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Description: signature Content-Type: application/pgp-signature; name="signature.asc"; charset="us-ascii" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE0zLJ6STd4Cp+CgbIgs677ofYV8IFAli9iW8ACgkQgs677ofY V8K9fxAAqFIJMp5/NYbPpg34jnknFzqEiPyJDILV0blNn9h+Fy3JEBHYh29kQCCo Wgw/gAclSFt8ZOCvM7lqATwYF5vsEPfnXDHBij8eVwIPalx2Y6+crtRALMlt1aAa HAvMJ0JixkLAVap+LeGj1I5Me/Kxgcco1B7/tnviSqrQqnpr6DWoKfkT/XIPtQU0 dquFF5CMKlMzBSyGTYpN4RvMF/OVEJ09nVLJdg3GwYmDN7Hrknf4yupM/c6Dp18I KrAiW7ofMNXQMDR80lCuJPdd1F36d6HhkRtxSfEaxFNJxrjafldT5o4L+Xfg9xx6 G5MBFqX1N8Kj5YoDptszT1lE69t2lhll4+eKUogLbXsMrBkcaDV1LTk2Hif83QwD hOT4yr0qoLSVyidUA9PNPrJi/gJqVwiHE9dW/7WnAblI9xNNdItfu1fOdv5KURGM gbjDj5Ew2yZ32j/7cDLBedKTuh0Nf2PcFd703HIl8V2isZEuAEh7yewd2u6xxf1a 1bD/dMcdG6b8R6SUHQNCzP3gjC1VsJQKh/N/iBkDOUddPJya044UhmGUEDrX6k5l Y3Bi603N9Tr6cjw/eYqKAVA7s3o4gegiVg7t1CqXDM+7hBJZd8hxkQ05v4bIm2Dh j5yudWtRzwbUZbjhP0wb+iUkSc36bXkQx3hkoKT/h0TP+44NYfM= =h4xm -----END PGP SIGNATURE----- --===============2107831543==--