Update failing due to duplicate packages (i686 vs x86_64)

Hello! I’m still a Fedora novice, so I was hoping that someone could help me with this update error that I’ve been trying to troubleshoot for the last few days.

Here’s what Discover tells me when I try to download and install the new system packages:

Internal error: Error running transaction: file /usr/share/doc/fmt/ChangeLog.md from install of fmt-11.2.0-3.fc43.i686 conflicts with file from package fmt-11.1.4-1.fc42.x86_64

file /usr/share/doc/fmt/README.md from install of fmt-11.2.0-3.fc43.i686 conflicts with file from package fmt-11.1.4-1.fc42.x86_64

Back in Discover, the update info says that it will be upgrading to new version 11.2.0-3.fc43

I did some reading on various forum threads and have seen that there are often conflicts between i686 and x86_64 versions of packages. I checked which versions of rmt are installed in console, and here’s what rpm -q fmt it returned:

fmt-11.1.4-1.fc42.x86_64
fmt-11.2.0-3.fc43.x86_64

This all raises a few questions that have me stumped:

  • Is fmt-11.2.0-3.fc43.x86_64 actually installed? Should I reinstall this?
  • Should I have two different versions of this package installed (one appears to be for Fedora 42, if I’m reading that correctly)?
  • Does the error message imply that fmt-11.2.0-3.fc43.i686 is attempting to install over fmt-11.1.4-1.fc42.x86_64?
  • What steps should I take to resolve whatever conflicts are happening here?

Thank you in advance for your help!

I always use dnf to perform updates since the gui hides most details from the user.

The error you are seeing seems to be a result of metadata mismatch for what packages are available.

If you were to update from the command line with sudo dnf upgrade --refresh it would download and refresh all the metadata for packages available and probably would not see that specific error.

If the conflict still exists it would likely be a result of the mirror being used not fully in sync with the main fedora repo and thus waiting a short time (probably less than a day) then repeating the upgrade process should work properly.

You also can ensure that duplicate packages that potentially resulted during the upgrade from f42 to f43 are removed by running sudo dnf distro-sync --refresh so everything is in sync with the repos for f43.

I’ve tried sudo dnf-upgrade --refresh a few times (every few days, coincidentally, just as you suggested) and have continued to receive the same error:

Transaction failed: Rpm transaction failed.
  - file /usr/share/doc/fmt/ChangeLog.md from install of fmt-11.2.0-3.fc43.i686 conflicts with file from package fmt-11.1.4-1.fc42.x86_64
  - file /usr/share/doc/fmt/README.md from install of fmt-11.2.0-3.fc43.i686 conflicts with file from package fmt-11.1.4-1.fc42.x86_64

Now, when I try sudo dnf distro-sync --refresh, I get this error:

Failed to resolve the transaction:
Problem 1: wine-dxvk-2.6.2-1.fc42.i686 from @System has inferior architecture
  - wine-dxvk-2.6.2-1.fc42.x86_64 does not belong to a distupgrade repository
  - problem with installed package
 Problem 2: wine-dxvk-d3d10-2.6.2-1.fc42.i686 from @System has inferior architecture
  - wine-dxvk-d3d10-2.6.2-1.fc42.x86_64 does not belong to a distupgrade repository
  - problem with installed package
 Problem 3: wine-dxvk-d3d8-2.6.2-1.fc42.i686 from @System has inferior architecture
  - wine-dxvk-d3d8-2.6.2-1.fc42.x86_64 does not belong to a distupgrade repository
  - problem with installed package
 Problem 4: wine-dxvk-d3d9-2.6.2-1.fc42.i686 from @System has inferior architecture
  - wine-dxvk-d3d9-2.6.2-1.fc42.x86_64 does not belong to a distupgrade repository
  - problem with installed package
 Problem 5: wine-dxvk-dxgi-2.6.2-1.fc42.i686 from @System has inferior architecture
  - wine-dxvk-dxgi-2.6.2-1.fc42.x86_64 does not belong to a distupgrade repository
  - problem with installed package

Would I need to handle those before the distro sync can complete?

Try adding the --allowerasing option to that dnf command.

According to the tag you seem to already be on f43. The issue shown with the wine packages was prevalent for those users who had wine installed on f42 when trying to upgrade to f43. As a result I must ask if you actually were able to upgrade to f43 and if so then how was it done.
head -5 /etc/os-release should show us what version of fedora the system shows.

The most reliable way to perform the upgrade from f42 to f43 (or any version upgrade) is to follow the steps in this doc.

The solution for the wine issue is to remove wine sudo dnf remove wine then upgrade from f42 to f43. Following the successful upgrade and if needed reinstall wine.

You have to upgrade fmt.x86_64 and fmt.i686 and the same time, for example by

sudo dnf update fmt

Thanks for bearing with me! I appreciate your help.

At a certain point, I was able to update to Fedora 43 despite the Wine issue. I’m not sure how or when…sorry!

head -5 /etc/os-release yields:

NAME="Fedora Linux"
VERSION="43 (KDE Plasma Desktop Edition)"
RELEASE_TYPE=stable
ID=fedora
VERSION_ID=43

sudo dnf distro-sync --refresh --allowerasing results:

Failed to resolve the transaction:
Problem: The operation would result in removing the following protected packages: setup
You can try to add to command line:
  --skip-broken to skip uninstallable packages

Then, adding --skip-broken yields the same error:

Failed to resolve the transaction:
Problem: The operation would result in removing the following protected packages: setup

Just tried this! I get this result:

Updating and loading repositories:
Repositories loaded.
Nothing to do.

Try sudo dnf distro-sync --refresh --allowerasing --skip-broken --setopt=protected_packages=