Subject: bug#68807: 29.1; Can bindir used for emacsclient(-mail).desktop in Makefile.in be removed?

From: Lin Jian <[email-masked]>
Date: Tue, 30 Jan 2024 22:08:47 +0800

Eli Zaretskii <[email-masked]> writes:

> Yes, because the Emacs's upstream installation procedure installs
> emacsclient in ${bindir}.  So "our "make install" wants to make sure
> the desktop file will reference the correct emacsclient, not the one
> found first on PATH.

Since (I think) emacs and emacsclient are installed to the same
directory, why is not bindir used for emacs in *.desktop files?  Why are
emacs and emacsclient treated differently in *.desktop files?  Is this a
bug?  The related code is as follows:

sed -e "/^Exec=emacs/ s/emacs/${EMACS_NAME}/"

sed -e "/^Exec=/ s|emacsclient|${bindir}/$${client_name}|"

> My understanding is that you are asking this because some downstream
> distro will find it more convenient for its users.  If so, why cannot
> the distro modify the top-level Makefile.in according to what you
> prefer?  There's no need to propagate distro-specific solutions to the
> upstream project, is there?
>
> Since different distros can have different needs and preferences, I'd
> prefer not to make changes in the setup of the desktop files we
> distribut in favor of one particular distro.  We distribute these
> desktop files as a service to distros, and would not want to take
> responsibility for understanding the needs of the various distros and
> desktops, so as not to increase our maintenance burden in areas where
> we have no real domain expertise.

Makes senses.