Fedora 25 is the latest edition of the Linux distribution published by the Fedora Project, which is sponsored by Red Hat, Inc. The Fedora Project supports many desktop environments, including Cinnamon, GNOME 3, KDE, LXDE, MATE and Xfce, but the main edition uses the GNOME 3 desktop environment in its default configuration.

The other desktop environments are made available via what are called Spins. All spins, including the main edition, use the same installation program called Anaconda.

This tutorial shows how to install any of the Spins and the main edition alongside Windows 10 on a computer with UEFI firmware and on a single hard drive.

First Step – Get Your Windows 10 Computer Ready

1. To complete this tutorial successfully, it is recommended that you disable Secure Boot. How this is done depends on your computer, but if you have the same Lenovo laptop I used for this tutorial, see How to disable Secure Boot on a Lenovo G50 laptop. On an HP 250 G5 laptop, see this guide.

2. From the BIOS or UEFI setup utility, configure the computer to boot from external media.

3. After that, you need to free up disk space from your computer by shrinking the C drive or other partition with enough free space on it. Getting that done is fairly simple by using the Windows 10 partition manager. When completed, the partition manager should show partitions and a free disk space similar to the one in Figure 1.

Windows 10 C drive

Figure 1: Free space recovered from Windows 10 C drive

From that free disk space, we’ll create the following three partitions for installing Fedora 25: A root partition mounted at /; a partition for users’ home directories mounted at /home; and a swap partition – disk space that the system may use as virtual memory. Anaconda has support for disk encryption, but if you intend to configure it for your installation, I’ll recommend that you skip it. That because it did not work when I tried it. A bug appears to cause the configuration to fail when attempting to encrypt a system with an EFI System Partition (ESP).

Create a Bootable USB Stick of Fedora 25

The next step in this operation is to download an installation image of Fedora 25 – the main edition, which is available for download from here or any of the Spins, which are available for download from here. For this tutorial, I used an installation image of the KDE Spin.

After the download has completed, you may now use it to create a bootable USB stick. To accomplish that on Windows 10, use this article as a guide. On any Linux distribution, the simplest method is to use the following command:

# This command assumes that you're executing it from your Download directory
# If you're using the same edition as used here, you may just copy and paste. 
# Otherwise, change the edition of Fedora 25 to match the one you downloaded
# /dev/sdb is the target USB stick. Yours might not be sdb, so verify before copying and pasting

sudo dd if=Fedora-KDE-Live-x86_64-25-1.3.iso of=/dev/sdb bs=1M conv=sync

#

In the next step, you’ll use that bootable USB stick to install your favorite desktop flavor of Fedora 25 alongside Windows 10 on the same hard drive.

Dual-boot Fedora 25 With Windows 10

If you’ve not done so already, insert the bootable USB stick you created in the previous section into a free USB port and (re)boot the computer. If the computer has been set up properly, you should see a menu just like the one shown in Figure 2. If necessary, select the Test this media… entry. Otherwise, stick with the default (Start Fedora-…).

Fedora 25 install boot menu

Figure 2: Booting Fedora 25 installation disk

Whatever option you choose, it should eventually boot into a Live desktop of the Fedora 25 image. Then click on the icon of the installer on the desktop to launch it. The first step of the installation process should correctly detect your language. Click to proceed to the step shown in Figure 3.

This is the Anaconda Hub, From here, you navigate to the Spokes. If your computer is connected to the Internet or to your local network, the timezone (under Time & Date) should be auto-configured. Same with the network address. To customize the hostname, you’ll have to click on Network & Hostname. The most important task you need to complete here, is to select the target hard drive. To accomplish that, click on Installation Destination.

Fedora 25 Anaconda installer

Figure 3: Hub of Anaconda, the Fedora 25 installer

That should take you to the Installation Destination spoke. The detected hard drives, including the installation USB stick, will be listed. In Figure 4, the target hard drive is shown to have 232 GB of free disk space. That free space will be used for installing Fedora 25.

Fedora 25 Anaconda hard drive

Figure 4: View of hard drives detected by Anaconda, the Fedora 25 installer

Select the target hard drive, then select the I will configure partitioning option. Click Done.

Fedora 25 Anaconda target hard drive

Figure 5: Selecting target hard drive for installing Fedora 25

You’re not done yet, so you’ll be taken to the step shown in Figure 6, where you’ll manually create partitions from the free space. Note that the existing Windows 10 partitions, including the EFI System Partition (ESP), are listed under Unknown. The ESP is also listed under New Fedora 25 Installation. That indicates that you don’t have to recreate it. The installer will (re)use it for installing GRUB.

Now you just have to start creating the other partitions, so click on the + button to open the installer’s partition editor.

Fedora 25 Anaconda disk partitions

Figure 6: List of partitions detected by Anaconda on the target hard drive

The first partition we’ll create will be the root partition, so select the appropriate mount point and a suitable size and click Add mount point. Depending on the desktop environment you’re trying to install, a default installation of Fedora 25 takes no more than 5 GB, so any amount of disk space that’s at least twice that will do.

Fedora 25 Anaconda create root partition

Figure 7: Creating the root partition for installing Fedora 25

This is where you configure the newly created partition. By default, all Fedora 25 partitions are created using an LVM partitioning scheme. LVM, the Linux Logical Volume Manager, is great, but if you’re installing on a laptop or other computer that will never use more than one hard drive, you don’t need it. I used a laptop for this test installation, so made the decision to create Standard partitions. That meant selecting Standard Partition from Device Type.

Fedora 25 Anaconda root partition

Figure 8: Configuring the root partition for installing Fedora 25

The next partition will be mounted at /home and should ideally be allocated a major chunk of the available disk space. When completed, click Add mount point. Note that in this image, Desired Capacity is 100,000 (MB), or 100 GB.

Fedora 25 Anaconda create home partition

Figure 9: Creating the home partition for installing Fedora 25

Then configure it like you did the previous partition.

Fedora 25 Anaconda home partition

Figure 10: Configuring the home partition for installing Fedora 25

The Mount Point for the last partition is swap, and the Desired Capacity should be between 2000 MB – 4000 MB, or 2 GB – 4 GB. Add mount point.

Fedora 25 Anaconda create swap partition

Figure 11: Creating the swap partition for installing Fedora 25

Then give it the same treatment like you did the other two partitions.

Fedora 25 Anaconda swap partition

Figure 12: Configuring the swap partition for installing Fedora 25

To apply all the changes you made at this step, click Done.

Fedora 25 dual-boot partitions

Figure 13: Completed partitions for installing Fedora 25 alongside Windows 10

This is just a confirmatory step, so click Accept Changes.

Fedora 25 verify partitions

Figure 14: Summary of tasks to be completed by Anaconda for installing Fedora 25 alongside Windows 10

If there are no warning icons at the hub, Begin Installation.

Fedora 25 dual-boot

Figure 15: Ready to install Fedora 25 alongside Windows 10

After installation has completed successfully, restarting the computer should cause it to boot into your new Fedora 25 desktop, but not before making a stop at the GRUB boot manager’s menu, which from now on will be the default boot manager, unless you modify it from the BIOS/UEFI setup utility.

Boot into the new Fedora 25 desktop, then restart and boot into Windows 10. If you’re able to boot into both operating systems, congratulation! Enjoy your new dual boot system featuring Fedora 25 and Windows 10.

Fedora 25 GRUB menu

Figure 16: GRUB boot menu showing entries for Fedora 25 and Windows 10