On Mon, Jul 31, 2023 at 5:12 PM richard emberson <emberson.rich@gmail.com> wrote:
I had a "dnf update" interrupted.

Running "dnf clean all" and then "dnf update" again results in:

Running transaction check
Transaction check succeeded.
Running transaction test
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.
Error: Transaction test error:
   file /usr/share/doc/glib2/NEWS from install of glib2-2.76.4-3.fc38.i686 conflicts with file from package glib2-2.76.3-1.fc38.x86_64
   file /usr/share/locale/en_GB/LC_MESSAGES/glib20.mo from install of glib2-2.76.4-3.fc38.i686 conflicts with file from package glib2-2.76.3-1.fc38.x86_64
   file /usr/share/locale/pt_BR/LC_MESSAGES/glib20.mo from install of glib2-2.76.4-3.fc38.i686 conflicts with file from package glib2-2.76.3-1.fc38.x86_64
   ....... 160 lines of "... conflicts with file from package ..."

Running "dnf check" gives:
NetworkManager-1:1.42.6-1.fc38.x86_64 is a duplicate with NetworkManager-1:1.42.8-1.fc38.x86_64
...
systemd-253.5-1.fc38.x86_64 is a duplicate with systemd-253.7-1.fc38.x86_64
...
systemd-udev-253.5-1.fc38.x86_64 is a duplicate with systemd-udev-253.7-1.fc38.x86_64
...
xxhash-libs-0.8.1-4.fc38.x86_64 is a duplicate with xxhash-libs-0.8.2-1.fc38.x86_64
Error: Check discovered 430 problem(s)


What is the problem (aside from the fact that I interrupted the update) and
How can I recover?

An equivalent for yum-complete-transaction was requested but never implemented.
https://bugzilla.redhat.com/show_bug.cgi?id=1091702

There's probably a way to use `dnf repoquery` based commands to list the problem packages and them remove them.

Have you tried doing an update with --allowerasing?

Thanks,
Richard