From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Kost Subject: bug#27686: emacs-ess: Not installed in "${output}/share/emacs/site-lisp/guix.d" Date: Sat, 19 Aug 2017 21:32:05 +0300 Message-ID: <87lgmfmmsa.fsf@gmail.com> References: <87k23c34vj.fsf@openmailbox.org> <87h8y9ua1n.fsf@gmail.com> 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]:53241) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dj8YW-0004Ub-8m for bug-guix@gnu.org; Sat, 19 Aug 2017 14:33:09 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dj8YR-00019d-An for bug-guix@gnu.org; Sat, 19 Aug 2017 14:33:08 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:37141) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dj8YR-00019J-6Y for bug-guix@gnu.org; Sat, 19 Aug 2017 14:33:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dj8YP-0008TM-Px for bug-guix@gnu.org; Sat, 19 Aug 2017 14:33:01 -0400 In-Reply-To: <87k23c34vj.fsf@openmailbox.org> Sender: "Debbugs-submit" Resent-Message-ID: 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: Maxim Cournoyer Cc: 27686@debbugs.gnu.org Maxim Cournoyer (2017-08-15 12:08 -0400) wrote: > On Tue, Jul 18, 2017 at 9:52 AM, Alex Kost wrote: [...] > A side note: this is one of the reasons why I don't like "guix.d" > sub-directory.=C2=A0 I think it is a useless extra level in the file > hierarchy.=C2=A0 If we used: > > =C2=A0 .../share/emacs/site-lisp/ > > While I agree that packaging elisp files in their own folder is > cleaner, it also introduces some complexity such as the requirement > to add some glue code in the Emacs site-start.el for packages > discovery. > > This mechanism is only valid when working with a profile; > at build time (say, you want to run tests which depend on other Emacs > packages), another hack is required + manual fiddling. > > By contrast, if all of our Emacs packages were laid out flat under > the usual share/emacs/site-lisp/ like it's done on other > distributions, I wonder how many emacs packages these distributions provide and whether they have any name conflicts in "site-lisp" or not. > we could simply define the EMACSLOADPATH `search-path' > at the Emacs package definition level, and the rest would be taken > care of by Guix native mechanisms (no hacks required). > > IMHO, this would be more "Guixy". The only problem with this flat structure I see is the potential name conflicts. Federico (the author of the 'emacs-build-system') explained it here: http://lists.gnu.org/archive/html/guix-devel/2015-06/msg00398.html Although emacs-build-system removes such files as README or .gitignore nowadays, name conflicts are still possible, especially for "complex" emacs packages that provide additional non-elisp files, often placed in sub-directories. For example, 'emacs-slime' provides 'lib' and 'contrib' subdirs. There may be other packages that have dirs with the same names, and since there are thousands of Emacs packages out there, name conflicts are possible in this case. Otherwise, I agree that flat structure is much easier to use and handle. > Alternatively, we would need to extend the seacrh-path facility to be > able to deal with our own added complexity. I'm not sure if it's > worth it. --=20 Alex