= Upgrading Fedora Linux to a New Release
 Jun Aruga; Kamil Páral; Ben Cotton
:revnumber: F37, F38, F39, F40
:revdate: 2024-06-15
:category: Administration
:tags: How-to,  Upgrade
:page-aliases: upgrading.adoc

[abstract]
This article mainly describes the update procedures for the Fedora Desktop variants. Some of the descriptions also apply to the server versions. However, the latter may provide their own documentation for the release upgrade.  Please check this yourself. 

[IMPORTANT]
====
. Make sure your system is *fully up-to-date* before attempting a system upgrade to a new Fedora Linux release.
. Be sure to *back-up your data* before upgrading your Fedora Linux system in the event something breaks and leaves your system unusable.
. This is extremely unlikely, but it's better to be safe than sorry. It's a good idea to back up important data regularly in any case, and now is a great time to double-check.
. Read the xref:fedora:release-notes:index.adoc[Release Notes] carefully before attempting an upgrade.
====


== Upgrading to the next Fedora Workstation release

[NOTE]
====
This is the recommended upgrade method for Fedora Workstation.
====


In _Fedora Workstation_, when the next stable release is available, a graphical notification will appear similar to the update notifications.
Clicking this, or running the **Software** application and going to the **Updates** pane, will display a simple graphical interface for upgrading the system.

**Important:** Before you start upgrading, your system needs to be fully up-to-date, to ensure
that the system upgrade will be smooth.

image:upgrade-gnome-software.png[upgrade-gnome-software.png,title="Release Upgrade Gnome Software"]

First, please click the _Refresh_ button in top left to make sure that **Software** is aware of the
latest updates. If there are any unapplied updates shown, please click the _Download_ button next
to them (and then _Restart & Update_ button, when it appears), to fully update your existing
system. This is really important, please do not skip this step. Once that is done, you can click
_Download_ in the _"Fedora Linux <number> Available"_ section to begin upgrading your system to
the new release.


== Upgrading to the next Fedora KDE release

[NOTE]
====
This is the recommended upgrade method for Fedora KDE.
====

In _Fedora KDE_, when the next stable release becomes available, opening **Discover** will display a notice for you to start upgrading your system.

**Important:** Before you start upgrading, your system needs to be fully up-to-date, to ensure that the system upgrade will be smooth.

image:fedora-kde-discover-upgrade.jpg[fedora-kde-discover-upgrade.jpg,title="Discover Release Upgrade"]

Once you click on the _Upgrade Now_ button at the top right, you will be moved over to the _Updates_ section of the Discover interface. Simply click _Update All_ at the top right, and the download of all the new files will initiate. Once the process is complete, rebooting will initiate the installation of the new release on your system.

== Upgrading using the DNF System Upgrade plugin

[NOTE]
====
This is the recommended upgrade method for all other Fedora Linux installations.
====

This method is used to a upgrade Fedora Linux installation using the command-line.
It is also used to troubleshoot issues with packages preventing the graphical method from upgrading.

For instructions on upgrading with the DNF system upgrade plugin, refer to the xref:upgrading-fedora-offline.adoc[DNF System Upgrade Plugin] page.

== Upgrading between major versions in Fedora Silverblue

[NOTE]
====
Upgrading between major versions (such as from Fedora Linux 38 to Fedora Linux 39) can be completed using the Software application. Alternatively, Silverblue can be upgraded between major versions using the `ostree` command..
====

For instructions on upgrading Fedora Silverblue Host, refer to the link:++https://docs.fedoraproject.org/en-US/fedora-silverblue/updates-upgrades-rollbacks/#upgrading++[dedicated page].

== Can I upgrade between Fedora Linux releases using only DNF?

[WARNING]
====
This is not a supported upgrade method.
====

Upgrading between Fedora Linux releases without the xref:upgrading-fedora-offline.adoc[DNF System Upgrade plugin] or xref:#_upgrading_to_the_next_fedora_workstation_release[GNOME Software] are not tested by the Fedora Quality team, and are therefore not supported by the community. You can follow xref:upgrading-fedora-online.adoc[Upgrading Fedora Linux using package manager], but you're doing that *at your own risk*.

== Upgrading from pre-release (beta) to final public release (stable)

If you are using a pre-release of Fedora Linux, you shouldn't need to do anything to get the final public release, other than updating packages as they become available. You can use `sudo dnf upgrade` or wait for desktop notification. When the pre-release is released as final, the `fedora-repos` packages will be updated and your `updates-testing` repository will be disabled. Once this happens (on the release day), it is highly recommended to run `sudo dnf distro-sync` in order to align package versions with the current release.

== How do I upgrade to Rawhide and Branched?

link:++https://fedoraproject.org/wiki/Releases/Rawhide++[Rawhide] and link:++https://fedoraproject.org/wiki/Releases/Branched++[Branched] are the development releases of Fedora Linux.
They are suitable for users developing or testing Fedora Linux before public release.
They are *NOT SUITABLE* for regular day-to-day use unless you are a fairly experienced user, and certainly not suitable for mission-critical use.
You should read through those pages carefully before deciding to run Branched or Rawhide.
See the link:++https://fedoraproject.org/wiki/Fedora_Release_Life_Cycle++[Fedora Release Life Cycle] for more information on how the whole Fedora cycle works from Rawhide, to Branched, to the milestone releases (Beta), to the 'Final' release.

Upgrading to a Branched release or to Rawhide can be done using xref:upgrading-fedora-offline.adoc[DNF System Upgrade].

== Can I upgrade from an End Of Life (EOL) release?

Fedora strongly discourages running an end-of-life release on any production system, or any system connected to the public internet.
You should never allow a production Fedora Linux deployment to reach end-of-life in the first place.

With that in mind, if you do have an end-of-life release installed on a system you cannot just discard or re-deploy, you upgrade using xref:upgrading-fedora-offline.adoc[DNF System Upgrade]. Note that upgrades are only tested from the two previous releases.

== Upgrading to a pre-release version using Gnome Software

Upgrading to pre-released versions of Fedora Linux can be enabled in Gnome software using the following command:

----
gsettings set org.gnome.software show-upgrade-prerelease true
----

If the upgrade banner does not show after executing that command, terminating the gnome-software process may be necessary.

Once the upgrade is complete, it is highly recommended to disable that function so you do not get unwanted future pre-releases. Running the same command in reverse accomplishes that:

----
gsettings set org.gnome.software show-upgrade-prerelease false
----

[IMPORTANT]
====
If your installation is located on a 'specialized' storage device, be sure to configure and select it.
====

== Upgrading to a pre-release version using KDE's Discover application

Upgrading to a pre-release version of Fedora KDE can be enabled in Discover. To do so, edit (or create, if it does not already exist) ~/.config/discoverrc to match the following:

----
[DistroUpgrade]
AllowPreRelease=true
AllowDevelopmentRelease=true
----

If the upgrade banner does not show after executing that command, terminating the discover process may be necessary.

Once the upgrade is complete, it is highly recommended to disable that function so you do not get unwanted future pre-releases. Reverting the previous settings accomplishes that, as thus:

----
[DistroUpgrade]
AllowPreRelease=false
AllowDevelopmentRelease=false
----
