I have seen users reports where users assumed that downloading a new ISO and running anaconda was the way to upgrade. We can do some things better on the website and in our documentation to avoid that, but I think it is still likely to happen. If Anaconda detects an existing Fedora installation, it should present a note explaining that Anaconda doesn't do upgrades, but that upgrades are supported through fedup/dnf system-upgrade.
As an alternate approach (I can file a separate BZ if preferred), Anaconda could regain the ability to perform upgrades by enabling the user to run a copy of `dnf system-upgrade download` in the /mnt/sysimage and then tell the user to reboot to apply the changes (assuming of course that there is a valid network connection).
(In reply to Stephen Gallagher from comment #1) > As an alternate approach (I can file a separate BZ if preferred), Anaconda > could regain the ability to perform upgrades by enabling the user to run a > copy of `dnf system-upgrade download` in the /mnt/sysimage and then tell the > user to reboot to apply the changes (assuming of course that there is a > valid network connection). Please do not make this (the ability to perform upgrades by enabling the user to run a copy of `dnf system-upgrade download` through Anaconda) as default, even if there is a valid network connection, due to network bandwidth availability constraints and issues related to network usage levels in most of the developing countries
(In reply to Rejy M Cyriac from comment #2) > (In reply to Stephen Gallagher from comment #1) > > As an alternate approach (I can file a separate BZ if preferred), Anaconda > > could regain the ability to perform upgrades by enabling the user to run a > > copy of `dnf system-upgrade download` in the /mnt/sysimage and then tell the > > user to reboot to apply the changes (assuming of course that there is a > > valid network connection). > > Please do not make this (the ability to perform upgrades by enabling the > user to run a copy of `dnf system-upgrade download` through Anaconda) as > default, even if there is a valid network connection, due to network > bandwidth availability constraints and issues related to network usage > levels in most of the developing countries Just to be clear, I'm suggesting this as a user-selectable choice, not an automatic action by any stretch of the imagination. I meant that if (as Matthew suggested) Anaconda could detect an existing Fedora system on the hard drive that it could offer to optionally perform an upgrade instead of a reinstall (and then walk the user through any necessary network setup).
That's an interesting RFE for enhancing user experience. I am moving this to anaconda-webui as this is going to be the future, and we don't plan to implement such RFEs in the GTK installer anymore.
We already had an open issue for this for the Anaconda Web UI: https://issues.redhat.com/browse/INSTALLER-3481 I have had mockups for quite some time as well. Basically, when Anaconda starts, it already does a scan of storage and we'd extend that to detect Fedora. If Anaconda finds a Fedora installation, it would add an installation method at the top which is "Reinstall Fedora". This re-uses the home partition (keeping user data) and re-installs Fedora fresh on the OS partitions. There's really no more UI than this; it would show details on the review screen (like all other installation methods). This _could_ also be used to upgrade across versions, but that's not the intended goal. The supported method for upgrading across versions of Fedora is to use GNOME Software or similar (I think KDE Discover can do this too nowdays?) or to use the command line with "sudo dnf system-upgrade" or "rpm-ostree" (soon: "bootc"). https://docs.fedoraproject.org/en-US/quick-docs/upgrading-fedora-new-release/ https://docs.fedoraproject.org/en-US/quick-docs/upgrading-fedora-offline/ Reinstalling Fedora from Anaconda should really be for a "factory reset" for fixing broken installations. (For example: Grub is hosed and the system can't boot, massive filesystem corruption on the root partition for whatever reason, someone mistakenly removed important files in /usr/, etc.).