Skip to content

Instantly share code, notes, and snippets.

@tomwhoiscontrary
Created June 12, 2022 20:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tomwhoiscontrary/f479dda7f2af4dc0e70d4ce59cefeda5 to your computer and use it in GitHub Desktop.
Save tomwhoiscontrary/f479dda7f2af4dc0e70d4ce59cefeda5 to your computer and use it in GitHub Desktop.
Upgrading from Fedora 34 to Fedora 36
Following https://docs.fedoraproject.org/en-US/quick-docs/dnf-system-upgrade/
# main upgrade
dnf upgrade --refresh
dnf install dnf-plugin-system-upgrade
dnf system-upgrade download --releasever=36
dnf system-upgrade reboot
# refresh all locally modified config files
dnf install rpmconf
rpmconf -a
# reinstall the NVIDIA drivers from scratch
dnf remove '*nvidia*'
dnf install akmod-nvidia
cp /usr/share/X11/xorg.conf.d/nvidia.conf /etc/X11/xorg.conf.d/
# follow https://docs.fedoraproject.org/en-US/quick-docs/how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops/
# in:
# Section "OutputClass"
# add:
# Option "PrimaryGPU" "yes"
nano /etc/X11/xorg.conf.d/nvidia.conf
# remove things which have been removed, so were not upgraded
dnf install remove-retired-packages
remove-retired-packages 34
# check for anything weird
dnf repoquery --unsatisfied
dnf repoquery --duplicates
# see what packages come from Mars
dnf list extras
# remove anything no longer required
dnf autoremove
# clean up broken symlinks (some of these were dangling on purpose?!)
dnf install symlinks
symlinks -r /usr | grep dangling
symlinks -r -d /usr
# verify all packages, and reinstall any suspect ones
rpm -Va | tee verify.log
# examine verify.log; ignore c (config) and g (ghost) files, and probably EFI stuff
# identify suspect packages:
rpm -qf <files which are dodgy>
# fix ownership and permissions
rpm --setugids <packages with bad user or group IDs>
rpm --setperms <packages with bad permissions>
# reinstall anything more suspect
yum reinstall <suspect packages>
# repeat this process as needed (should script this)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment