From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Kost Subject: Re: Subdirectories in GUIX_PACKAGE_PATH Date: Mon, 03 Jul 2017 21:15:52 +0300 Message-ID: <87bmp1e693.fsf@gmail.com> References: <20170623212058.638c6de8@cbaines.net> <87h8z3kn7j.fsf@elephly.net> <8737ahq0lh.fsf@gnu.org> 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]:47017) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dS5tC-0008U4-9t for guix-devel@gnu.org; Mon, 03 Jul 2017 14:16:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dS5t7-0002lX-KX for guix-devel@gnu.org; Mon, 03 Jul 2017 14:16:02 -0400 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: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel@gnu.org Ludovic Court=C3=A8s (2017-06-30 11:35 +0200) wrote: > Hello, > > Ricardo Wurmus skribis: > >> Christopher Baines writes: >> >>> Recently I had problems with the way GUIX_PACKAGE_PATH was working with >>> govuk-guix [1]. Currently, I'm using a separate directory for the >>> GUIX_PACKAGE_PATH that contains symlinks to a subset of the Guile >>> modules necessary for the packages in the repository. >>> >>> I think support (whether intentional or otherwise) for this approach was >>> removed in [2]. >> >> Looks like this was removed in an attempt to improve performance over >> NFS. The =E2=80=9Cscheme-files=E2=80=9D procedure now includes a commen= t: >> >> ;; XXX: We don't recurse if we find a symlink. >> >> Would it not be better to fix this instead of adding support for special >> syntax in GUIX_PACKAGE_PATH? > > Indeed, apologies for the breakage. > > I think the patch below fixes it. It incurs overhead only when a > symlink is encountered, which is reasonable I think. > > Chris & Alex: could you give it a try and report back? I confirm that the patch you attached fixes this problem, thanks! I have a (probably not related) question though: in the past, package 'location' contained an *absolute* file name for the packages from GUIX_PACKAGE_PATH. Now these locations are *relative* file names. Is this intended? If so, this is a problem for Emacs-Guix: you see, when you try to open a package location (for example, by pressing an according button in *Guix Package Info* buffer), it is expanded against 'guix-directory' variable. So if you open "gnu/packages/guile.scm" location, it works, but now if it is your location like "my-guix-packages/foo.scm", the wrong (non-existent) file will be opened. Previously it worked, because that location was absolute, like "/home/me/my-guix-packages/foo.scm". I hope it was clear, let me know, if it's not :-) --=20 Alex