Subject: Re: [bug#50231] [PATCH] gnu: emacs-desktop-environment: Include runtime dependencies

From: zimoun <[email-masked]>
Date: Wed, 08 Sep 2021 11:33:32 +0200

Hi,

On Tue, 07 Sep 2021 at 22:15, Nicolas Goaziou <[email-masked]> wrote:

>> The emacs package can be configured to use other tools. However, unless
>> the package is specifically configured otherwise, it will not work when
>> installed. Without either these propagated inputs or special
>> configuration, this package cannot perform any of its functions. 

Indeed.  However, “guix install emacs-foo” does not install the package
’emacs’, i.e., ’emacs-foo’ cannot perform any of its functions. ;-)

> I know, but this Emacs library is not supposed to provide the features
> itself. I assume you use it on top of installed executables, as
> explained in the package description:
>
>   The package depends on the availability of shell commands to do the
>   hard work for us.
>
> Pulling all of them from an Emacs package sounds backward.

On the other side, I remember discussions about ’git’ as inputs in
’emacs-magit’.  Or ’the-silver-searcher’ for ’emacs-ag’.  Maybe it is
worth to improve section about Emacs packages in the manual.  Rough
draft:

«The external tools required by the package are not included as inputs,
except if they are required at compile or test time.»

Well, I am sure someone will find a better wording. ;-)

> Maybe Guix is missing a "suggested depedencies" flag, somehow.

Yeah, maybe.

One way should to add a ’properties’ as ’suggest’.  Well, from my
experience with Debian, I am not convinced that this suggest field
really helps.  Maybe for discovery.

The easiest way is to provide a sentence in the ’description’ field
about such.

Cheers,
simon