Bug 2406058

Summary: emacs binary gone after upgrade
Product: [Fedora] Fedora Reporter: Zbigniew Jędrzejewski-Szmek <zbyszek>
Component: emacsAssignee: Peter Oliver <mavit>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 43CC: benson_muite, dan.cermak, dueno, gordon.messmer, marcandre.lureau, mavit, msekleta, phracek
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: emacs-30.2-4.fc43 Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-10-29 01:24:16 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
dnf transaction info none

Description Zbigniew Jędrzejewski-Szmek 2025-10-23 16:49:45 UTC
I just did an upgrade from f42 to f43, and after the upgrade /usr/bin/emacs is a dangling symlink: /usr/bin/emacs points to /etc/alternatives/emacs, and that in turn points to /usr/bin/emacs-pgtk, which was provided by emacs package in f42.
I now installed emacs-pgtk package and the issue is fixed.

It seems that the package was split and this wasn't handled properly in the upgrade. Please see https://docs.fedoraproject.org/en-US/packaging-guidelines/#_one_to_many_replacement.

Reproducible: Always

Comment 1 Zbigniew Jędrzejewski-Szmek 2025-10-23 16:51:59 UTC
Created attachment 2110626 [details]
dnf transaction info

Comment 2 Peter Oliver 2025-10-24 00:28:51 UTC
I think there are two things going wrong, here:

1.  The emacs-nw package got pulled in instead of the expected emacs-pgtk package.
2.  The preuninstall scriptlet for package emacs thinks it isn’t being uninstalled, so doesn’t update alternatives to remove the symlink to /usr/bin/emacs-pgtk, which would allow it to be repointed at /usr/bin/emacs-nw.

I’m not sure why problem 1 is happening; it doesn’t on my test VM.  In any case, I think the fix for problem 2 is to make sure we always replace emacs with emacs-pgtk regardless of whether that’s the most appropriate thing for this system, and for that, Obsoletes is the answer as you suggest.

The trouble is, what version to obsolete?  As I see it, our choices are:
1.  Obsoletes: emacs < 1:30.2-2
    This should solve the problem when upgrading from Fedora 42, but sadly, Fedora 41 is ahead of us at 1:30.2-3.
2.  Obsoletes: emacs < 1:30.2-4
    This covers upgrades from Fedora 41, but will also cause emacs users already happily on Fedora 43 to get emacs-pgtk whether they wanted it or not.

I think option 2 is the least worst, here, since if we can get the update out quickly enough it should affect fewer people.

Comment 3 Fedora Update System 2025-10-24 03:14:25 UTC
FEDORA-2025-4c2b0ee418 (emacs-30.2-4.fc43) has been submitted as an update to Fedora 43.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-4c2b0ee418

Comment 4 Fedora Update System 2025-10-25 02:16:21 UTC
FEDORA-2025-4c2b0ee418 has been pushed to the Fedora 43 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-4c2b0ee418`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-4c2b0ee418

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 5 Peter Oliver 2025-10-25 12:41:50 UTC
It would be helpful if we could get one more karma on this update over the weekend, in time for Tuesday's release of Fedora 43.

Comment 6 Fedora Update System 2025-10-29 01:24:16 UTC
FEDORA-2025-4c2b0ee418 (emacs-30.2-4.fc43) has been pushed to the Fedora 43 stable repository.
If problem still persists, please make note of it in this bug report.