[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#50077] Separate ‘emacs’ output vs separate ‘emacs-’ package (was Re
From: |
zimoun |
Subject: |
[bug#50077] Separate ‘emacs’ output vs separate ‘emacs-’ package (was Re: [bug#50077] [PATCH 1/3] gnu: notmuch: Add separate 'emacs' output.) |
Date: |
Wed, 01 Sep 2021 15:52:01 +0200 |
Hi,
On Wed, 01 Sep 2021 at 14:05, Xinglu Chen <public@yoctocell.xyz> wrote:
> Cc’ing guix-devel to see what other people think before we start
> breaking people’s setups. :-)
I agree with this Andrew’s comment:
P.S. I know that there are some emacs packages in Guix already, which
doesn't use emacs-build-system, but I think we should keep that number
as low as possible and ideally to make it equal to 0 =)
<http://issues.guix.gnu.org/issue/50077#5>
If I do:
guix install emacs-next notmuch
then there is no guarantee that “M-x notmuch” will work. Because
’notmuch.el’ is byte-compiled using ’emacs-no-x’. The issue is that
some Emacs packages rely on ’emacs-minimal’, others on ’emacs-no-x’ as
input, others on other Emacs VM variant, therefore the transformation
guix build -m manifest.scm --with-input=emacs-minimal=emacs-next
will not work, as pointed by Nicolas here [1]. Well, you will tell me
that ’outputs’ does not change much the issue. :-) For sure, but IMHO
having Emacs packages using ’emacs-build-system’ eases the write of
generic transformation. Well, there is enough corner cases with Emacs
packages using ’emacs-build-system’ which rewriting their ’#:emacs’
argument. Other speaking about Emacs packages using other build
systems.
Another point is, if I want to build ’notmuch’ but I am not an Emacs
user, then:
guix environment notmuch
will download ’emacs-no-x’ for nothing. When my network is poor, I am
unhappy. Although, it is already the case. :-) Well, this is something
known, see:
<https://git.savannah.gnu.org/cgit/guix.git/tree/TODO#n37>
I am not convinced that several outputs help. And generally speaking,
personally, I tend to prefer package inherit over several outputs.
Matter of taste I guess. :-)
Without speaking about cross-compilation. ;-)
>From my point of view, I would split the package ’notmuch’ and propagate
this new ’notmuch’ package with a new ’emacs-notmuch’ (if ’notmuch.el’
requires it). Well, from my point of view, it would be how to improve
the situation. :-)
All the best,
simon
1: <http://issues.guix.gnu.org/41732#14>