Fedora 40 - End of Life Support

Dear Team,

I have seen today that Fedora 40 approching the end of life support.
Meanwhile I use Qubes OS 4.2 and I have only 1 template with Fedora 40. It also was the default pre-installed with Qubes OS 4.2, Template VM: “fedora-40-xfce”.
With that, I never did connect with Internet before and I never used that template before. I have seen that there are plenty of good documentation about upgrading. So here my way that I would do, see below:

Shall I upgrade this template to Fedora 41, so it means:

a) Delete my unused TemplateVM: fedora-40-xfce

Link: How to reinstall a template | Qubes OS

$ sudo qubes-dom0-update --action=reinstall fedora-40-xfce

b) Create a new TemplateVM with Fedora 41?

Link: Fedora templates | Qubes OS

$ sudo qubes-dom0-update qubes-template-fedora-41-xfce

So on that way, it creates a new qubes template, right?
Later I need to follow that chapter: “Fedora templates - after installing…”

Or what is the easiest way?

Thanks for your support in advance.

Kind regards
AC

1 Like

I am no member of the team. But here is the way I do it:

  1. Open QubesTemplateManager, refresh and install Fedora-41; start QubesUpdate and choose 41-template for update; shut down the 41-template.
  2. Open the terminal in the “old” Fedora-40-template and in the Fedora-41-template.
  3. In the 40-terminal type dnf history list. You should see all the packages you installed.
  4. In the 41-terminal type dnf install <$packagename> for each and every software package you installed in Fedora-40 in addition.
  5. Shutdown both templates.
  6. Open your Fedora-40 based VM’s setting and change the template from Fedora-40 to Fedora-41. Start the VM. Everything should be as before, just a bit more recent.
  7. If step 6. worked nicely, start QubesGlobalConfig and change “default template” to Fedora-41, if (and only if) it was Fedora-40 before.

You’re done. And as a hint: Keep a backup of your old Fedora-40 template (or wait with deleting it). Some problems arise just when you think “it’s all done and working”. Never before. :wink:

4 Likes

Just update the repositories to the required variation, and perform an update then upgrade.
Simple. This lets you keep everything the way it is and was and just upgrade.

Otherwise…

Download the right template, install the template, set the template of the guest to the new template. Done.

Note: Always backup your template before you update it just incase something breaks if you haven’t done it correctly. I always do.

FYI, I still use Fedora 37.
I have templates from all the variants available to me that I have customised.
Often the newer versions of Fedora are just horrible, as it is the TEST environment for RedHat and CentOS. So it gets all the betas and test software and patches in it.
So I don’t upgrade the version when it just comes out.
End of Life Support doesn’t mean that much after all.
So don’t throw away your old variants, and you don’t have to keep the newest ones.
Without direct NIC access to the external network, you can use older versions of systems.
You won’t really degrade your systems security much at all.
For the Network Guest, you should keep that up to date though.

I still use Debian 8 guests. :wink:

3 Likes

If you have a single template installed, it means that all your qubes are using this template. You won’t be able to delete a template until it’s not used by any qube.

So, install the new template, switch all your qubes to it. Then, once you are happy with the result, remove the old template. It’s important to keep it for a while, in case there is a issue with the new one. It’s not dangerous if you do not use it anyway.

1 Like

I believe this question is already clearly answered in the announcement and linked documentation:

If certain parts of the announcement or the linked documentation were confusing or failed to answer the question, could you please specifically indicate them so that we can improve the announcements and documentation for all users?

3 Likes

Thanks @OvalZero

Is there the difference?

$ sudo qubes-dom0-update qubes-template-fedora-XX

and

$ sudo qubes-dom0-update --install qubes-template-fedora-xx

Because with the last command, it says: Replace xx with the specific Fedora version number you want to install. After running the command, you’ll be able to create new Fedora-based VMs using the newly installed template.

And the first command is like just updating? In other words: It will update an existing Fedora template in dom0, not create a new one.

AFAICS there is no --install option for qubes-dom0-update

https://github.com/QubesOS/qubes-core-admin-linux/blob/main/dom0-updates/qubes-dom0-update

line 20 seq.

    echo "This tool is used to download packages for dom0. Without package list"
    echo "it checks for updates for installed packages"

Updating dom0 is another topic. Please refer to:

https://www.qubes-os.org/doc/templates/fedora/#upgrading
https://www.qubes-os.org/doc/supported-releases/#note-on-dom0-and-eol

1 Like

No, the first command doesn’t update an existing Fedora template. Rather, it will try to install a new one.

In order to update an existing Fedora update, you should do this instead:

1 Like

According the documentation:

Part: Installing software from the default repositories.

How do I open it: “gpk-application” via Terminal from the new installed TemplateVM with Fedora 41?
I know that there is another option via Qubes Manager. :slight_smile:

  1. Start either a terminal (e.g. gnome-terminal) or a dedicated software management application, such as gpk-application

It’s an example (“such as”). In this case for gnome environment. With fedora-xfce I’d highly recommend man dnf.

1 Like