Sometimes, due to incomplete or interrupted updates, you cannot update your system again. First of all, check your updater logs. If you see this:
ERROR - ==================================================
ERROR - ERROR: DNF Package update are incomplete or failed due to conflicts/broken dependencies.
ERROR - ERROR: Please see ~/.local/share/nobara-updater/nobara-sync.log for more details
ERROR - ERROR: You can press the 'Open Log File' button on the Update System app to view it.
ERROR - ==================================================
It means there is (most likely) something wrong with the updates that prevents them from completing. While there could be many possible reasons, one of the common reasons is conflicts due to package duplicates in system that DNF cannot resolve automatically.
Typical symptoms of package duplicates within the updater logs :
INFO - terminate called after throwing an instance of 'libdnf5::AssertionError'
INFO - what(): libdnf5/rpm/transaction.cpp:195: void libdnf5::rpm::Transaction::fill(const libdnf5::base::Transaction&): Assertion 'implicit_ts_elements.empty()' failed: The rpm transaction contains more elements than requested
or as:
INFO - Transaction failed: Rpm transaction failed.
INFO - - file ... from install of ... .i686 conflicts with file from package ... .x86_64
or:
Problem: The operation would lead to removing secured packages: systemd, systemd-udev
If you see any of these symptoms, open terminal and check duplicates with
dnf check --duplicates
When no duplicates, this command produces empty output.
To attempt removing the duplicates, at first, try:
sudo dnf4 rm --duplicates
and check for duplicates again.
If previous command did not resolve all duplicates, use this command:
sudo dnf reinstall $(dnf repoquery --duplicates --latest-limit=1 -q)
After check reports nothing, you can try to update once again.
If resolution was not successful, or your DNF error message was not caused by duplicates or something else is wrong with the update, generate link with logs using cat ~/.local/share/nobara-updater/nobara-sync.log | npaste and share it on official Discord while explaining your problem in details.
If dnf reinstall command doesn't work for some reason, there is a manual way to resolve problematic duplicates that dnf4 cannot resolve automatically. For example, if sudo dnf4 rm --duplicates ends with a list of conflicts like:
file /usr/share/gcc-15/python/libstdcxx/__pycache__/__init__.cpython-314.opt-1.pyc from install of libstdc++-15.2.1-7.fc43.x86_64 conflicts with file from package libstdc++-15.2.1-5.fc43.i686
Then you note down every unique (ignore repeating occurrences) i686 full package names (libstdc++-15.2.1-5.fc43.i686 in this example) in such error list and remove them with sudo rpm -e --nodeps (list them one after another separated by space):
sudo rpm -e --nodeps libstdc++-15.2.1-5.fc43.i686
After this you can re-run sudo dnf4 rm --duplicates and if all conflicts were resolved and check reports no more duplicates, do not forget to reinstall removed packages back with sudo dnf in like this (only package base name and i686 need to be listed here:
sudo dnf in libstdc++.i686
After which, updating can be resumed with duplicate package conflicts resolved.