It seems that jack-audio-connection-kit-example-clients no longer exists in Fedora 38, but not package obsoletes it. That means a system upgrade attempt fails. $ sudo dnf system-upgrade download --releasever 38 ... Error: Problem: problem with installed package pipewire-jack-audio-connection-kit-0.3.70-1.fc37.x86_64 - package pipewire-jack-audio-connection-kit-0.3.67-1.fc38.x86_64 conflicts with jack-audio-connection-kit provided by jack-audio-connection-kit-1.9.22-1.fc38.x86_64 - package pipewire-jack-audio-connection-kit-0.3.70-1.fc38.x86_64 conflicts with jack-audio-connection-kit provided by jack-audio-connection-kit-1.9.22-1.fc38.x86_64 - problem with installed package jack-audio-connection-kit-example-clients-1.9.21-3.fc37.x86_64 - pipewire-jack-audio-connection-kit-0.3.70-1.fc37.x86_64 does not belong to a distupgrade repository - jack-audio-connection-kit-example-clients-1.9.21-3.fc37.x86_64 does not belong to a distupgrade repository (try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages) $ rpm -qa | grep pipewire | sort pipewire-0.3.70-1.fc37.i686 pipewire-0.3.70-1.fc37.x86_64 pipewire-alsa-0.3.70-1.fc37.i686 pipewire-alsa-0.3.70-1.fc37.x86_64 pipewire-codec-aptx-0.3.70-1.fc37.x86_64 pipewire-gstreamer-0.3.70-1.fc37.x86_64 pipewire-jack-audio-connection-kit-0.3.70-1.fc37.x86_64 pipewire-libs-0.3.70-1.fc37.i686 pipewire-libs-0.3.70-1.fc37.x86_64 pipewire-pulseaudio-0.3.70-1.fc37.x86_64 pipewire-utils-0.3.70-1.fc37.x86_64 $ rpm -qa | grep jack jack-audio-connection-kit-example-clients-1.9.21-3.fc37.x86_64 qemu-audio-jack-7.0.0-15.fc37.x86_64 pipewire-jack-audio-connection-kit-0.3.70-1.fc37.x86_64 $ sudo dnf list --showduplicates jack-audio-connection-kit-example-clients --releasever 38 Installed Packages jack-audio-connection-kit-example-clients.x86_64 1.9.21-3.fc37 @fedora Reproducible: Always
Actually, the problem seems to be that jack-audio-connections-kit-example-clients (installed by default in 2015 upgrade) gets obsoleted by jack-audio-connection-kit, but jack-audio-connection-kit conflicts with pipewire-jack-audio-connection-kit (installed by default in 2021 upgrade). This is non-trivial for sound-unaware users to resolve. If I use `dnf ... --allowerasing`, jack-audio-connection-kit gets installed and pipewire-jack-audio-connection-kit gets removed. That's the very opposite of a default Workstation install right now.
IMHO pipewire-jack-audio-connection-kit should obsolete jack-audio-connections-kit-example-clients ad jack-audio-connection-kit does
I opened a PR for this: https://src.fedoraproject.org/rpms/pipewire/pull-request/14
The Obsoletes don't quite work if you already have jack-audio-connection-kit installed instead. Since pipewire-jack-audio-connection-kit obsoletes a different version of the main versus the example-clients subpackage, you get a different conflict now: Problem 2: both package jack-audio-connection-kit-1.9.22-1.fc38.x86_64 and pipewire-jack-audio-connection-kit-0.3.71-2.fc38.x86_64 obsolete jack-audio-connection-kit-example-clients < 1.9.22 - package pipewire-jack-audio-connection-kit-0.3.71-2.fc38.x86_64 conflicts with jack-audio-connection-kit provided by jack-audio-connection-kit-1.9.22-1.fc38.x86_64 - problem with installed package jack-audio-connection-kit-1.9.21-3.fc37.x86_64 - jack-audio-connection-kit-1.9.21-3.fc37.x86_64 does not belong to a distupgrade repository
(In reply to Elliott Sales de Andrade from comment #4) > The Obsoletes don't quite work if you already have jack-audio-connection-kit > installed instead. Oh, even after swapping to pipewire-jack-audio-connection-kit, the conflict still occurs, probably because of the differing versions on the Obsoletes.
(In reply to Elliott Sales de Andrade from comment #5) > (In reply to Elliott Sales de Andrade from comment #4) > > The Obsoletes don't quite work if you already have jack-audio-connection-kit > > installed instead. > > Oh, even after swapping to pipewire-jack-audio-connection-kit, the conflict > still occurs, probably because of the differing versions on the Obsoletes. Hmm? They’re the same: --- 8< --- # dnf repoquery --obsoletes pipewire-jack-audio-connection-kit Last metadata expiration check: 0:36:23 ago on Wed 30 Aug 2023 09:46:53 CEST. jack-audio-connection-kit < 1.9.16-2 jack-audio-connection-kit-example-clients < 1.9.22 pipewire-libjack < 0.3.19-2 # dnf repoquery --obsoletes jack-audio-connection-kit Last metadata expiration check: 0:36:32 ago on Wed 30 Aug 2023 09:46:53 CEST. jack-audio-connection-kit-example-clients < 1.9.22 # --- >8 --- I guess this issue isn’t really solvable in either of jack or pipewire without breaking it for users of one or the other. I can only think of fixing this in the dependency resolution logic, i.e. if obsoletes compete, prefer the package that is installed already. Not sure how much effort this is though – and I don’t have enough spare cycles to dig into it myself. As a workaround, we could remove the obsoletes from both packages and move it to fedora-obsolete-packages. What do you think?
Please manually remove jack example clients before upgrading, they are deprecated upstream: dnf remove jack-audio-connection-kit-example-clients
This is probably the proper solution, then: (In reply to Nils Philippsen from comment #6) > As a workaround, we could remove the obsoletes from both packages and move it to fedora-obsolete-packages.
Fedora Linux 38 entered end-of-life (EOL) status on 2024-05-21. Fedora Linux 38 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora Linux please feel free to reopen this bug against that version. Note that the version field may be hidden. Click the "Show advanced fields" button if you do not see the version field. If you are unable to reopen this bug, please file a new report against an active release. Thank you for reporting this bug and we are sorry it could not be fixed.