Maxim Cournoyer (2017-09-01 10:49 -0400) wrote: > Hi Alex! > > Alex Kost <[email protected]> writes: > >> Maxim Cournoyer (2017-08-15 12:08 -0400) wrote: >> >>> On Tue, Jul 18, 2017 at 9:52 AM, Alex Kost <[email protected]> wrote: >> [...] >>> A side note: this is one of the reasons why I don't like "guix.d" >>> sub-directory. I think it is a useless extra level in the file >>> hierarchy. If we used: >>> >>> .../share/emacs/site-lisp/<package> >>> >>> 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. > > I should have researched what I said beforehand; I just looked at how > Debian does it, and it seems they are also isolating package files in > their own subdir under an elpa-src diretory[0], or at least going into > that direction. Their approach is a bit different; they make use of > package.el which ships with Emacs, so they do not need any custom code > in site-start.
I think it would be good to reduce the size of our "site-start" code by re-using "package.el" facilities, although removing it completely will probably not be possible since we use non-standard directories, where Emacs does not look for packages (I mean the user and system Guix profiles). > Gentoo is also using a <package> subdirectory[1]: > /usr/share/emacs/site-lisp/package/ and rely on some custom site-start > elisp glue for packages discovery. So, I'm not sure if there are any > distribution actually packaging their elisp libraries directly under the > share/emacs/site-lisp like I thought was the case. Sorry for the > misinformation! No problem! > [0] > https://anonscm.debian.org/cgit/pkg-emacsen/pkg/dh-elpa.git/tree/README.org > [1] https://wiki.gentoo.org/wiki/Project:GNU_Emacs/Developer_guide Thanks for the pointers! -- Alex
