Distro-sync problems after upgrading to Fedora 36

I upgraded to Fedora 36 from Fedora 35 using the Software application GUI. When it completed after rebooting, I was greeted with a screen telling me that something went wrong and it can’t recover.
(it’s a GNOME screen, I would like to show you but I can’t have more than one image per post)

After some research, I ran dnf distro-sync as root in another tty, and it lists six problems.

I suspect that these problems are preventing GNOME from starting up my desktop environment, but I need help to solve them.

As I see it you should have used the upgrade process using dnf and not relying on gnome-software gui for that critical step.

  1. sudo dnf upgrade --refresh
  2. sudo dnf system-upgrade download --releasever=36
  3. sudo dnf system-upgrade reboot

This totally separates the download from the actual upgrade and I have never had a problem with an upgrade done in this manner.

Now for your recovery.

  1. uname -a
    to verify what kernel is running
    If it is a fedora 36 kernel then run
  2. sudo dnf upgrade --refresh
    This should bring everything up to date. If it gives similar errors then we need to tackle each one at a time.
  3. Most of those messages indicate a specific missing package, such as problem 1 appears to show that NetworkManager is missing. The first step to recover there would be to attempt installing the missing package. sudo dnf list installed NetworkManager* would show the actual installed packages and you can check what version is installed for each. Then if needed either install missing packages or upgrade the version of those needed with sudo dnf upgrade NetworkManager*

Please, if possible post your text using copy&paste with the </> Preformatted text tags on the toolbar above. That is easier to read and respond to than multiple images.

I don’t know.
Does the network work?
What is the result of this command?
dnf repolist

Thanks! I would love to copy paste, but my OS is currently broken and I’m typing this on my phone.

uname -a tells me (among other things) the version 5.18.13-100.fc35.x86_64, which sounds like a Fedora 35 kernel to me (because of the fc35 part).

Should I still run sudo dnf upgrade --refresh?

I pinged google.com with the command line and my network seems to be working just fine.

This is the result of running dnf repolist:

As far as I can see, you still have Fedora 35 repositories in place, and this could explain your issue.

You can try to install the F36 ones

sudo dnf install https://kojipkgs.fedoraproject.org//packages/fedora-repos/36/1/noarch/fedora-gpg-keys-36-1.noarch.rpm https://kojipkgs.fedoraproject.org//packages/fedora-repos/36/1/noarch/fedora-repos-36-1.noarch.rpm https://kojipkgs.fedoraproject.org//packages/fedora-repos/36/1/noarch/fedora-repos-modular-36-1.noarch.rpm

You should install also the RPMFusion ones (let’s handle that later).

But first of all, what is the result of this command?
cat /etc/redhat-release
or this one
rpm -q fedora-release-common

Since you seem to have the f35 repos and if the output of cat /etc/redhat-release shows f35 then it may be possible to start from scratch and use the dnf system-upgrade process to complete the upgrade.

  1. can you boot the system at all? It seems so.
  2. I suspect that since the upgrade using the software gui failed things may be somewhat inconsistent. That can be checked by running dnf list installed | grep fc35 and dnf list installed | grep -v fc35 and see what each command shows.
  3. I doubt that running sudo dnf upgrade --refresh will work if there are fc36 packages installed. You certainly should try that but it probably will give errors.

Before trying to install the fc36 repos I would run sudo dnf system-upgrade --releasever 36 download and see the output first. That may download what is needed to complete a clean upgrade.

cat /etc/redhat-release tells me I’m on Fedora 36. Same goes for the other command.

  1. I have it booted right now. I use the second tty to log in and type my commands.
  2. There are 1396 packages containing fc35 and 1925 other packages. Also I noticed that among these other ones, there were a couple called fedora-*, where duplicates with version numbers 35-* and 36-* were shown. This seems like an awful lot of duplicate packages to me, I am apparently kinda stuck between 35 and 36.
  3. sudo dnf upgrade --refresh did successfully do some things and downloaded some megabytes of updates, but didn’t fix the distro-sync issues.

Honestly, I have never had many issues with upgrading via Gnome Software, especially not for a number of Fedora Linux releases. I use either method, but primarily leave Gnome Software to notify me and handle the updates, works fine.

It seems as if you have a partially finished update. I think you should file an issue at Issues - fedora-workstation - Pagure.io to see if you can get some assistance from the workstation folks. I couldn’t find a recent similar issue, but maybe I missed something.

you may want to try,
sudo dnf remove --duplicates

You can also try dnf clean all and check dnf autoremove to see what can be removed.As has already been posted something didn’t upgrade right.

Folks, look here Distro-sync problems after upgrading to Fedora 36 - #5 by asterixxx

@asterixxx has the Fedora 35 repositories in place.
dnf update, remove duplicates and so on, will reason like the system is Fedora 35, while there are more recent version of a bunch of package installed.

Also sudo dnf system-upgrade download --releasever=36 probably will not work, since the system is already F36 (in part).

Error: Need a --releasever greater than the current system version.

I continue to suggest to install F36 repositories. Then retry distrosync.

With his output from the cat /etc/redhat-release I agree. Having the system think it is on Fedora 36 while many things are still at 35 likely will prevent the system-upgrade path.

One possibility that probably would allow the system-upgrade path to work would be to change the content of /etc/redhat-release back to what it was with fedora 35

$ cat /etc/fedora-release
Fedora release 35 (Thirty Five)

then do the system-upgrade procedure.
Having all the fedora 35 repos still there would not then be an issue since the system-upgrade procedure automatically would draw from the fedora 36 repos during the download.

I don’t know if this trick is sufficient.
Maybe there are other places where dnf will look in order to understand the current release…
(We have /etc/fedora-release, /etc/os-release, who knows what else)

I don’t “know” either. This is why I said “probably”. It is my understanding from looking at the .repo files with $releasever in the url lines that dnf selects it from that file, but I am not certain.

I just wanted to boot to type some commands that you suggested and it just works… the combination of the sudo dnf upgrade --refresh command with the reboot apparently fixed it, but I’m surprised. I’m gonna explore the new OS (GNOME 42, Fedora 36, according to the welcoming and friendly GUIs) for a minute and check back on the duplicate packages.

BTW, it appears that all point to a single file

# ls -l /etc/*release
lrwxrwxrwx. 1 root root 25 Jul 18 08:31 /etc/fedora-release -> ../usr/lib/fedora-release
lrwxrwxrwx. 1 root root 21 Jul 18 08:31 /etc/os-release -> ../usr/lib/os-release
lrwxrwxrwx. 1 root root 14 Jul 18 08:31 /etc/redhat-release -> fedora-release
lrwxrwxrwx. 1 root root 14 Jul 18 08:31 /etc/system-release -> fedora-release
1 Like

I ran a few commands.

uname -a:

Linux p200300eb97331ed1467d9aa198115def.dip0.t-ipconnect.de 5.18.13-100.fc35.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 22 14:20:24 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

cat /etc/redhat-release:

Fedora release 36 (Thirty Six)

rpm -q fedora-release-common:

fedora-release-common-36-18.noarch

dnf list installed | grep fc35 -c:

Problem mit modularen Abhängigkeiten: (= problem with modular dependencies)

 Problem: widersprüchliche Anforderungen (= problem: conflicting requirements)
  - nothing provides module(platform:f35) needed by module nodejs:16:3520220506131906:f27b74a8.x86_64
1396

dnf list installed | grep -v fc35 -c:

Problem mit modularen Abhängigkeiten:

 Problem: widersprüchliche Anforderungen
  - nothing provides module(platform:f35) needed by module nodejs:16:3520220506131906:f27b74a8.x86_64
1925

So far, my brand-new Fedora is looking very shiny. My scroll wheel is now scrolling with appropriate speed even without imwheel running. My settings and workspace setup are gone, but my applications still work. I’m logged out of Discord, but not MS Teams.

2 Likes