Announcing Fedora Linux 45 Beta

There’s no link to upgrade instructions for Silverblue on rpm-ostree, even though there is for dnf, and the nomal intsructions (rebase fedora:fedora/45/x86_64/silverblue --uninstall rpmfusion-free-release --uninstall rpmfusion-nonfree-release --install rpmfusion-free-release --install rpmfusion-nonfree-release) do not work with RPM Fusion packages installed even though the Fedora 45 rpmfusion-free and nonfree repo packages have been available):

$ rpm-ostree rebase fedora:fedora/45/x86_64/silverblue --uninstall rpmfusion-free-release --uninstall rpmfusion-nonfree-release --install rpmfusion-free-release --install rpmfusion-nonfree-release
2 metadata, 0 content objects fetched; 828 B transferred in 1 seconds; 0 bytes content written
Checking out tree e48e720... done
Enabled rpm-md repositories: fedora-cisco-openh264 updates fedora rpmfusion-free-updates rpmfusion-free rpmfusion-nonfree-updates rpmfusion-nonfree rpmfusion-free-updates-testing rpmfusion-nonfree-updates-testing copr:copr.fedorainfracloud.org:group_abrt:abrt-debuginfod virtio-win-stable copr:copr.fedorainfracloud.org:ycollet:audinux updates-archive
Updating metadata for 'rpmfusion-free-updates'... done
error: Updating rpm-md repo 'rpmfusion-free-updates': cannot update repo 'rpmfusion-free-updates': Cannot prepare internal mirrorlist: Status code: 404 for https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-45&arch=x86_64 (IP: 158.69.60.128); Last error: Status code: 404 for https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-45&arch=x86_64 (IP: 158.69.60.128)

It’s so painful to need to remove rpmfusion repos (rpm-ostree uninstall rpmfusion-free-release rpmfusion-nonfree-release), reboot, manually reset overrides, remove all rpmfusion packages and reinstall the repos, reboot again, then reinstall rpmfusion packages and redo overrides

$ rpm-ostree override reset libavdevice-free libavfilter-free libavformat-free ffmpeg-free libswresample-free libavutil-free libswscale-free libavcodec-free --uninstall ffmpeg
$ rpm-ostree rebase fedora:fedora/45/x86_64/silverblue --uninstall gstreamer-ffmpeg --uninstall gstreamer-plugins-bad --uninstall gstreamer-plugins-bad-nonfree --uninstall gstreamer-plugins-ugly --uninstall gstreamer1-plugins-bad-freeworld --uninstall gstreamer1-plugins-ugly --uninstall libavcodec-freeworld --uninstall mesa-va-drivers-freeworld --uninstall mesa-vulkan-drivers-freeworld --uninstall pipewire-codec-aptx --uninstall v4l2loopback --install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-45.noarch.rpm --install https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-45.noarch.rpm
$ rpm-ostree override remove libavdevice-free libavfilter-free libavformat-free ffmpeg-free libswresample-free libavutil-free libswscale-free libavcodec-free --install ffmpeg --install gstreamer-ffmpeg --install gstreamer-plugins-bad --install gstreamer-plugins-bad-nonfree --install gstreamer-plugins-ugly --install gstreamer1-plugins-bad-freeworld --install gstreamer1-plugins-ugly --install mesa-va-drivers-freeworld --install mesa-vulkan-drivers-freeworld --install pipewire-codec-aptx --install fontawesome-fonts-all --install vlc-plugin-ffmpeg --install libavcodec-freeworld --uninstall rpmfusion-free-release-45-0.2.noarch --install rpmfusion-free-release --uninstall rpmfusion-nonfree-release-45-0.2.noarch --install rpmfusion-nonfree-release

To make things even worse, it’s completely non-obvious that users must disable RPM Fusion free updates and nonfree updates in temporary favor of the free updates testing and nonfree updates testing repositories or your rebase can still mysteriously break after all of that, with an error like

Updating metadata for 'rpmfusion-free-updates-testing'... done
error: Updating rpm-md repo 'rpmfusion-free-updates-testing': Failed to download gpg key for repo 'rpmfusion-free-updates-testing': Curl error (37): Could not read a file:// file for file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-45 [Could not open file /etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-45]

…or…

Updating metadata for 'rpmfusion-nonfree-updates-testing'... done
error: Updating rpm-md repo 'rpmfusion-nonfree-updates-testing': Failed to download gpg key for repo 'rpmfusion-nonfree-updates-testing': Curl error (37): Could not read a file:// file for file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-45 \[Could not open file /etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-45\]

Even worse, because the repo files were created by an older version of the RPM Fusion release packages, but the fedora 45 packages moved repo definitions to /usr/share/dnf5/repos.d/ and keys to /usr/share/pki/rpm-gpg/, so they need to be in sync or the old ones deleted.

There needs to be a more graceful way to upgrade with a critical/common repo needed for most users, but the upstream bug report was rejected:

2 Likes