I was looking to install Fedora 42 Budgie today, to replace an existing Linux installation on a partition of my SSD. What I was hoping to do was to replace this single partition with the Fedora installation, and re-use the existing EFI/boot partition. This SSD also contains a partition with Windows installed and a couple of Windows related recovery partitions.
I have installed other Linux distros this way in the past and it has been straightforward using installation tools like Calamares, but I admit that I was intimidated by the Anaconda installer. I couldn’t be sure how to successfully achieve what I wanted to, so exited the process.
Is it possible to achieve what I’m looking to do and, if so, is anyone able to outline the steps I need to take on the destination target / partitioning tab?
My best guess is to choose the custom option, delete the existing Linux partition, and select the existing EFI/boot partition for /boot and /boot/efi. Is that right?
I have read a few articles on the installer, but nothing so far has given me the confidence to try it. At some point in the future I will get rid of Windows completely, but for now I need to keep it intact.
Many thanks.
It seems that you only have one EFI/boot partition that is shared by Windows and Linux. Two cooks in a kitchen are always a terrible idea.
Boot a copy of Linux to get access to gparted.
Use gparted to create a second EFI/boot partition with a size of about 92Mbs and format it FAT16. Naming this partition will make it easier to locate during a Fedora install. Note, it’s exact location is unimportant because grub2 boots via UUID.
Use gparted to move/resize the existing Linux partition if required before formatting EXT4 and then naming it.
Now that target partitions exist, boot a Fedora LiveCD and begin a Fedora install.
Select custom install
Select the target EFI/boot partition as /boot/efi and check the box to reformat
Select the target OS partition as / and check the box to reformat
Select ext4 as the filesystem if required
Select done, you will see a message indicating what will be done
Approve the action and wait for the installation to complete
Because you now have two working EFI/boot partitions you can select the one to boot each time. You may also use sudo efibootmgr to get a display of the boot order.
Change boot order via sudo efibootmgr -o <BOOT ORDER>
where <BOOT ORDER> should be replaced by your desired arrangement of the order displayed via sudo efibootmgr. You may rearrange the order as often as you like with the goal of have the desired EFI/boot earlier in the boot order than anything else.
Thanks @ernie-07. That’s very helpful. I noticed that BTRFS was the default option in the installer. Is it OK to stick with that and is there anything extra I need to do to have the correct sub volumes set up, or is that handled by the installer?
A more automated but still somewhat controlled process is to boot the live USB, then create empty space for the new installation with GNOME Disks[1], then start the Anaconda installer, choosing Custom Partitioning with automated allocation of partitions afterwards. That way one has the chance to review the proposed disk setup before starting the partitioning process[2].
I’m currently using Silverblue, an atomic offering from Fedora, where I need to have separate /boot/efi when dual-booting, and that means I’m choosing my OS from the BIOS/UEFI selection menu. However, there are reports of users of Fedora non-Atomic editions/spins, who are using a single EFI partition, and selecting the OS from the GRUB menu. Windows updates might cause some GRUB-related headaches though.
FWIW, Fedora Workstation (so GNOME Desktop, not Budgie) introduced a new version of Anaconda (Anaconda Web UI), with a more streamlined and guided process, should you want to give it a try.
When you allocate a mere 92Mbs per EFI/boot per Linux installation blast radius is small and there is little to no chance that maintenance on one distro will have an effect on another. In addition, if you attempt to install Fedora version X +1 when Fedora version X exists, BOTH will attempt to use the same fedora directory. That directory contains a “seed” grub.cfg which contains the unique UUID for the associated installation.