If your system update fails to complete, 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 - ==================================================
Or a line like Traceback (most recent call last)
followed by lines where python script errors occurred, or any other errors that prevent update from completing successfully, you can try few common troubleshooting steps explained further.
One of the common reasons is conflicts due to package duplicates that DNF cannot resolve automatically. Symptoms and resolution methods are explained here: https://wiki.nobaraproject.org/general-usage/troubleshooting/diagnose-and-resolve-duplicates
Some conflicting issues can be resolved running distro-sync from the Nobara updater with
nobara-sync repair
Or, if it fails for some reason, run it explicitly:
sudo dnf distro-sync --refresh
The result is mostly equivalent to update, but it also replaces any mismatching package versions with ones that are in system repositories and generally tries to synchronize the state of your installed packages with the state they are supposed to be in the distro. This also excludes updater quirks, so even if this command succeeds, be sure to also update normally after with nobara-sync or DNF App Center.
If somehow repository metadata is stale, corrupted, or partially downloaded, clearing and regenerating cache may help:
sudo dnf clean all
sudo dnf4 clean all
sudo dnf makecache --refresh
/var/cache/libdnf5/ path, include sudo rm -rf /var/cache/libdnf5/* before the dnf makecache command~/.cache/libdnf5/ path, include rm -rf ~/.cache/libdnf5/* before the dnf makecacheSometimes nobara-updater package (used by both nobara-sync and DNF App Center) might contain broken code or be so outdated that it fails to update itself. In such case, it can be updated manually:
sudo dnf update nobara-updater --refresh --nogpgcheck --best -y
If you suspect your system repositories are broken, try:
sudo dnf update nobara-repos fedora-repos --refresh
or, if they are up to date but have mis-configured settings or missing dependencies:
sudo dnf reinstall nobara-repos fedora-repos --refresh
Aside of system repositories, conflicts may be caused by 3rd party repositories you added. They might need to be temporary or permanently disabled (especially if they are not actively maintained), or fixed.
Your repositories are usually in /etc/yum.repos.d/. Backup files if you are doing any manual changes.
They can be enabled/disabled from the DNF App Center, Repositories tab, or via DNF config manager overrides:
sudo dnf config-manager setopt repo-id.enabled=0
You can list repo IDs with dnf repolist command, left column. With cat /etc/dnf/repos.override.d/99-config_manager.repo command you can check current DNF config manager repo overrides. It might be necessary to reset cache after changing repo configuration.
Package updates or installs rely on GPG encryption keys to ensure file integrity and security, and they will fail if you have outdated or missing GPG keys. For system repositories, this command should allow updating relevant keys:
sudo dnf update nobara-gpg-keys fedora-gpg-keys --refresh --nogpgcheck
Key importing should happen automatically, but can be assisted with:
sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-nobara-*
In some cases (e.g. imported, but not working keys for Chrome browser), keys might need to be rebuilt:
sudo rpmkeys --rebuild
Finally, if GPG key issues won't resolve any way, update can be forced without the key verification via distro-sync, but this is NOT RECOMMENDED way to update, as it lacks the file integrity and security benefits of encrypted PGP key usage. But this method might be enough to use only one time, if this helps to resolve underlying issues with the updating:
sudo dnf distro-sync --refresh --nogpgcheck -y
And run regular nobara-sync right after.
If your free space on drive root partition is too small, you might see something like this in the updater logs:
INFO - - installing package ... needs ...MB more space on the / filesystem
You can check your free space of root partition with df -h /. Preferably have more than 15-20 GB free for big updates, Move some user files, delete timeshift snapshots, if any; etc.
Some common ways to free space (warning: no need to run these if you are not in critical situation with space):
sudo journalctl --vacuum-size 1M
to reduce system logs
flatpak uninstall --unused --delete-data
to remove old unused flatpak runtimes
sudo timeshift --delete-all
to remove snapshots if you have any (they may be used for backup restore, but also may take lot of space, so think before doing it)
sudo dnf rm "*-nerd-fonts"
to remove ≈8 GiB emoji fonts that might have got pulled during updates
This problem usually occur on kernel or Nvidia driver updates, since they are stored in /boot partition with initramfs. For some good time now, Nobara installer defaults to 2GB /boot, which should be enough for most usage cases. But some older installs might have it smaller. Increasing the size of /boot is tricky to do safe, so this approach will not be covered. Instead, there are few simple options that can be utilized to free space on your /boot.
Error example in updater logs (but it might not show this explicitly, just fail to update kernel/nvidia/other driver modules):
- installing package kernel-core-....x86_64 needs ...MB more space on the /boot filesystem
Confirm that you lack space on /boot partition with df -h /boot It needs at least 100-200 MB free (depending on whether you have Nvidia drivers)
To reduce space taken. you can do is reduce number of your backup kernels stored: https://wiki.nobaraproject.org/general-usage/troubleshooting/why-3-versions
Alternative solution for Nvidia users without LUKS drive encryption is "NVIDIA Drivers: Remove modules from initramfs to save space in /boot" option in Nobara Driver Manager or nobara-driver-tui.
If your troubleshooting attempts were not successful, generate link with updater logs using cat ~/.local/share/nobara-updater/nobara-sync.log | npaste and share it on the official Discord while explaining your problem in details.