bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#67292: emacs / emacs-transient collisions and bundling


From: Mekeor Melire
Subject: bug#67292: emacs / emacs-transient collisions and bundling
Date: Tue, 28 Nov 2023 11:15:04 +0000

2023-11-28 02:47 maximedevos@telenet.be:
Op 22-11-2023 om 21:53 schreef Simon Tournier:
> On mar., 21 nov. 2023 at 19:01, Maxime Devos > <maximedevos@telenet.be> wrote:

For widget and woman, sure, I'll take your word for it is fully merged in Emacs (both the literal code & development (& maintenance)). But I'm talking about emacs-transient (not widget or woman), and note, as I pointed out previously, emacs-transient development location appears to be <https://github.com/magit/transient> (which is not the Savannah Emacs Tree) -- there's even a new commit 8 hours ago, and it doesn't
seem to be disappearing anytime soon.

Note that transient.el from Emacs-master and from github.com/magit/transient 
actually have diverged. In particular, the following commit is present on 
Emacs-master while it is not present on magit/transient: 
https://git.savannah.gnu.org/cgit/emacs.git/commit/lisp/transient.el?id=7705bdfa5b89f78dab049f73f636b9680a3c12bc

The relation between the possibly-existing separate repository of an 
Emacs-core-package (e.g. github.com/magit/transient) to the Emacs-repository 
itself seems to depend on the concrete package. As we just saw, for 
transient.el, that its version in the separate repository and in the 
Emacs-repository may temporarily diverge. Tarsius, the transient-maintainer, 
merges changes into Emacs after version bumps.

Another example is eglot.el. It also has a separate repository but that 
repository is only occasionally synced with the more progressed version that is 
tracked in the Emacs repository itself.

--- (From: Mekeor Milere)

It's "Melire". Why did you respond to my mail in a separate thread?

If making emacs-mnimal more minimal is too complicated, don't do it
then, just replace the bundled copy with an up-to-date (source)
version, as I proposed previously.

Replacing the "bundled copy" could erase fixes, that are only present in Emacs, 
and not present in github.com/magit/transient.

> TANGENTIALLY: I'd like to mention that this topic becomes sort > of a
> problem when (1) you have installed Emacs with "guix install
> emacs-next --with-branch=emacs-next=master" or similar; and > (2) you > installed some Emacs-related package via Guix, which > propagates > another Emacs-related package that is also built into Emacs. > This > would cause a downgrade of that propagated, built-in, > Emacs-related > package. E.g. this happens with emacs-consult-eglot which > propagates > emacs-eglot which is also built into Emacs itself. A > work-around is
> to overwrite the input like this: "guix install emacs-next
> emacs-consult-eglot --with-input=emacs-eglot=emacs-next
> --with-branch=emacs-next=master".

No? Unless you do "--with-branch=emacs-next=something-old" or the like, you will never get a downgrade -- you will not get an automatic
upgrade to what's bundled in Emacs-next, but:

(a) you won't get anything older than what is currently packaged in
     Guix. (Hence, not a downgrade.)
 (b) and you asked for a latest emacs, not a latest emacs-eglot.

You might even get something newer than in the master branch of Emacs, if the Emacs maintainers haven't merged in the latest version yet.

As elaborated before, some packages (like Eglot) are primarily developed in the 
Emacs repository. (Unlike Transient.)

Also, I don't get what "--with-input=emacs-eglot=emacs-next" is
supposed to do.

It effectively removes emacs-eglot as input for the installed packages and 
their dependencies

> If you want to know which built-in packages are distributed
> separately via GNU Elpa, search the following file for > ":core". Note > that only a subset of those might be packaged separately in > Guix.
>     https://git.savannah.gnu.org/cgit/emacs/elpa.git/tree/elpa-packages

I don't want to know. I use Guix as package manager, not Emacs -- I don't really care whether a hypothetical package is distributed via
Elpa.

The point is that Guix downloads the source code of (some?) Elpa-distributed 
packages from Elpa. For example: 
https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/emacs-xyz.scm?h=60c97924e9519361494aaf0686e28eb831a42315#n1011





reply via email to

[Prev in Thread] Current Thread [Next in Thread]