Bug 2329979

Summary: systemd-container-256.9-2.fc41 pulls in a lot of desktop packages
Product: [Fedora] Fedora Reporter: strom <cofho3nzqie>
Component: systemdAssignee: systemd-maint
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 41CC: agurenko, berrange, cfergeau, crobinso, daan.j.demeyer, dtardon, ethan.bergstrom, fedoraproject, lnykryn, mcascell, msekleta, pbonzini, philmd, rjones, ryncsn, suraj.ghimire7, systemd-maint, virt-maint, wally, yuwatana, zbyszek
Target Milestone: ---Keywords: Regression, Upgrades
Target Release: ---   
Hardware: aarch64   
OS: Linux   
URL: https://paste.centos.org/view/f243d5b3
Whiteboard:
Fixed In Version: systemd-257-1.fc42 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-12-10 22:31:45 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 output none

Description strom 2024-12-02 16:00:37 UTC
The upgrade to systemd-256.9-2.fc41 on Fedora Server pulls in 289 new package, many of them related to desktop (https://paste.centos.org/view/f243d5b3). When excluding qemu-kvm via dnf5 versionlock exclude, the upgrade works as expected.

Reproducible: Always

Steps to Reproduce:
dnf5 config-manager setopt updates-testing.enabled=true
dnf5 upgrade --refresh
Actual Results:  
289 new packages installed

Expected Results:  
upgrade existing packages only

Comment 1 strom 2024-12-02 18:28:43 UTC
Created attachment 2060850 [details]
dnf output

Comment 2 Walter Francis 2024-12-02 18:47:32 UTC
I attempted to reproduce this in a VM from a fresh netinst F41 on x86_64 and I do not see the same issue, so this may be aarch64 specific.

Comment 3 David Tardon 2024-12-03 12:24:05 UTC
(In reply to uqlcwafm5xl from comment #0)
> The upgrade to systemd-256.9-2.fc41 on Fedora Server pulls in 289 new
> package, many of them related to desktop
> (https://paste.centos.org/view/f243d5b3). When excluding qemu-kvm via dnf5
> versionlock exclude, the upgrade works as expected.

This suggests that the extra packages are pulled in by qemu-kvm update.

Comment 4 Daniel Berrangé 2024-12-03 12:38:15 UTC
(In reply to David Tardon from comment #3)
> (In reply to uqlcwafm5xl from comment #0)
> > The upgrade to systemd-256.9-2.fc41 on Fedora Server pulls in 289 new
> > package, many of them related to desktop
> > (https://paste.centos.org/view/f243d5b3). When excluding qemu-kvm via dnf5
> > versionlock exclude, the upgrade works as expected.
> 
> This suggests that the extra packages are pulled in by qemu-kvm update.

It isn't really a QEMU bug that systemd decided to add a dep on qemu-kvm.

qemu-kvm is a meta package *intended* to pull in packages for every single feature QEMU supports, which is a large set.

$ rpm -q qemu-system-x86 --requires | grep qemu
qemu-audio-alsa = 2:8.2.7-1.fc40
qemu-audio-dbus = 2:8.2.7-1.fc40
qemu-audio-jack = 2:8.2.7-1.fc40
qemu-audio-oss = 2:8.2.7-1.fc40
qemu-audio-pa = 2:8.2.7-1.fc40
qemu-audio-pipewire = 2:8.2.7-1.fc40
qemu-audio-sdl = 2:8.2.7-1.fc40
qemu-audio-spice = 2:8.2.7-1.fc40
qemu-block-blkio = 2:8.2.7-1.fc40
qemu-block-curl = 2:8.2.7-1.fc40
qemu-block-dmg = 2:8.2.7-1.fc40
qemu-block-gluster = 2:8.2.7-1.fc40
qemu-block-iscsi = 2:8.2.7-1.fc40
qemu-block-nfs = 2:8.2.7-1.fc40
qemu-block-rbd = 2:8.2.7-1.fc40
qemu-block-ssh = 2:8.2.7-1.fc40
qemu-char-baum = 2:8.2.7-1.fc40
qemu-char-spice = 2:8.2.7-1.fc40
qemu-device-display-qxl = 2:8.2.7-1.fc40
qemu-device-display-vhost-user-gpu = 2:8.2.7-1.fc40
qemu-device-display-virtio-gpu = 2:8.2.7-1.fc40
qemu-device-display-virtio-gpu-ccw = 2:8.2.7-1.fc40
qemu-device-display-virtio-gpu-gl = 2:8.2.7-1.fc40
qemu-device-display-virtio-gpu-pci = 2:8.2.7-1.fc40
qemu-device-display-virtio-gpu-pci-gl = 2:8.2.7-1.fc40
qemu-device-display-virtio-gpu-pci-rutabaga = 2:8.2.7-1.fc40
qemu-device-display-virtio-gpu-rutabaga = 2:8.2.7-1.fc40
qemu-device-display-virtio-vga = 2:8.2.7-1.fc40
qemu-device-display-virtio-vga-gl = 2:8.2.7-1.fc40
qemu-device-display-virtio-vga-rutabaga = 2:8.2.7-1.fc40
qemu-device-usb-host = 2:8.2.7-1.fc40
qemu-device-usb-redirect = 2:8.2.7-1.fc40
qemu-device-usb-smartcard = 2:8.2.7-1.fc40
qemu-pr-helper
qemu-system-x86-core = 2:8.2.7-1.fc40
qemu-ui-curses = 2:8.2.7-1.fc40
qemu-ui-egl-headless = 2:8.2.7-1.fc40
qemu-ui-gtk = 2:8.2.7-1.fc40
qemu-ui-opengl = 2:8.2.7-1.fc40
qemu-ui-sdl = 2:8.2.7-1.fc40
qemu-ui-spice-app = 2:8.2.7-1.fc40
qemu-ui-spice-core = 2:8.2.7-1.fc40

If these deps are undesirable for systemd, then it should pick a different set of deps - 'qemu-kvm-core', plus whatever handful of QEMU modular addons systemd requires the functionality of.  eg if systemd doesn't need the UI features of QEMU, then don't add any deps on 'qemu-ui-*' and that'll avoid most desktop package deps.

Comment 5 Zbigniew Jędrzejewski-Szmek 2024-12-03 13:10:50 UTC
Yeah, we added Recommends:qemu-kvm because systemd-vmspawn in systemd-container.rpm uses it.

As as a workaround, if you don't need systemd-nspawn or systemd-vmspawn, it should be fine to uninstall systemd-container.

I'll change the dep in systemd to Recommends:qemu-kvm-core.

Comment 6 Fedora Update System 2024-12-10 20:41:56 UTC
FEDORA-2024-1a62af46cd (systemd-257-1.fc42) has been submitted as an update to Fedora 42.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-1a62af46cd

Comment 7 Fedora Update System 2024-12-10 22:31:45 UTC
FEDORA-2024-1a62af46cd (systemd-257-1.fc42) has been pushed to the Fedora 42 stable repository.
If problem still persists, please make note of it in this bug report.