From: Paul Eggert <eggert@cs.ucla.edu>
To: Ulrich Mueller <ulm@gentoo.org>, emacs-devel@gnu.org
Cc: gnu-emacs@gentoo.org
Subject: Re: Where should dynamic modules be installed?
Date: Wed, 23 Oct 2019 17:31:30 -0700 [thread overview]
Message-ID: <b3085e6a-53aa-1b62-38bf-e2546eec0ce3@cs.ucla.edu> (raw)
In-Reply-To: <w6gtv8274y9.fsf@kph.uni-mainz.de>
On 10/21/19 3:45 AM, Ulrich Mueller wrote:
> We are going to include the first package with a dynamically loaded
> module (emacs-libvterm) in Gentoo. The question arose where the .so file
> should be installed? Since it is a system dependent binary, installing
> it under /usr/share/emacs/ looks wrong. I cannot find anything about a
> recommended install location in the documentation.
There isn't one. We haven't thought through the issues here. Thanks for
bringing up the topic.
> Would /usr/lib{,64}/emacs/site-modules/ be a reasonable place for this?
Where do you put executables like hexl, movemail, and profile? I suggest
puting .so files near there. In Fedora 30, this directory is
/usr/libexec/emacs/26.2/x86_64-redhat-linux-gnu (which is the value of
the exec-directory variable). Since modules can be version-specific, it
makes sense to have the Emacs version number somewhere in the directory
name. Do you do that with other Emacs directories?
Also, why have "site-" in the name? Do you have "site-" in other
Emacs-related directory names?
> Also, wouldn't it be cleaner if Emacs had a separate variable (analog to
> image-load-path, custom-theme-load-path, etc.) for loading of dynamic
> modules, instead of reusing load-path?
Emacs should do that, yes. How about if we use a variable named
'module-directory' for that? It would work like exec-directory, except
for modules.
I expect that the main reason Emacs doesn't have a variable like
module-directory now, is that packagers haven't yet encountered the
Emacs module system (it has been off by default, though that will change
in Emacs 27) and so haven't run into problems like the one you mention.
next prev parent reply other threads:[~2019-10-24 0:31 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-21 10:45 Where should dynamic modules be installed? Ulrich Mueller
2019-10-21 13:44 ` Eli Zaretskii
2019-10-21 14:36 ` Ulrich Mueller
2019-10-24 0:31 ` Paul Eggert [this message]
2019-10-24 12:02 ` Andy Moreton
2019-10-24 14:28 ` Stefan Monnier
2019-10-24 14:04 ` Eli Zaretskii
2019-10-24 15:39 ` Ulrich Mueller
[not found] <mailman.96.1571932821.13349.emacs-devel@gnu.org>
2019-10-24 16:24 ` Ulrich Mueller
2019-10-24 18:36 ` Stefan Monnier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b3085e6a-53aa-1b62-38bf-e2546eec0ce3@cs.ucla.edu \
--to=eggert@cs.ucla.edu \
--cc=emacs-devel@gnu.org \
--cc=gnu-emacs@gentoo.org \
--cc=ulm@gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).