One of the best things about Linux is choice. As users, we have a choice of over 600 distributions. Moreover, we have choices of dozens of Desktop Environments (DE) and Window Managers (WM), ranging from the ubiquitous GNOME Shell to the less common Enlightenment. It can be overwhelming at first, especially when there are distros like Fedora that have 38 DEs and WMs for you to explore. There are several tools to make that easier in Fedora, so this tutorial will take a look at how to switch Desktop Environments in Fedora.
1. Installing New Desktop Environments in Fedora with DNF
The best way to figure out a good number of the Desktop Environments that are available to you is to open a terminal and issue the command:
This will bring up all of the available DNF groups, show you which environment groups you have installed, and give you useful information for the next command to be issued. Your output will be quite long, so be prepared to scroll through. For this demonstration, I’ll be installing KDE Plasma using the following command:
However, there are many more Desktop Environments and Window Managers available to you. This Fedora Magazine post from February highlights all 38 of the DEs and WMs that you can download as well as the different ways you can download them. It’s a great guide that helps you out with commands and everything.
2. Switching Between Desktop Environments in Fedora
Overall, it’s fairly simple to try out different Desktop Environments and Window Managers. All you have to do is install the new DE or WM using DNF, log out (or sometimes reboot), and click the gear at the bottom-right corner of the login screen. There, you can choose between GNOME, KDE, Cinnamon, Sway, i3, bspwm, or whatever other DE or WM you have installed. It’s just that simple.
It should also be noted that there’s an application called Switchdesk that has both a CLI and GUI interface that claims to do the same thing. However, I have not been able to get Switchdesk to work on Fedora 32. The command completes, but nothing changes, and restarting the display manager brings me to a login screen that has the same default DE set in the menu.
3. Swapping out Desktop Environments in Fedora
Let’s say that you know for a 100-percent fact that you want to use KDE over GNOME. You’ve tried out KDE before, you know you like it, and you want to just switch to it and be done with it. You can do what I did above, but that will leave you with vestiges of GNOME, like GNOME apps, fonts, icons, and services you don’t need for your KDE desktop to run well. That’s where the dnf swap command comes in.
Using dnf swap, you can swap out any packages or groups for another, allowing you to do a complete swap of your desktop environments. It’s really handy for completely changing desktop environments.
To do this, first use the command:
In order to find the name of the environment group you want, enter the command from earlier:
And look at the end of each line. In this example I’m using the KDE Plasma desktop. In the screenshot above, you can see the entry highlighted. Use this method to find whichever desktop you’d like to use. In my case, the command to swap DEs would be as follows:
Depending on the desktop environment, you may hit errors with skipping broken packages or something like that. Chances are that won’t work, and you’ll have to go through the steps above to install the Desktop alongside whichever is your current one, or you can just reinstall with one of the Fedora Spins. After the dnf swap command finishes, I’d recommend a full reboot to make sure everything goes smoothly.
Now that you know how to switch desktop environments in Fedora, make sure to check out some of our other Fedora content to learn how to manage your Fedora system with Cockpit, figure out which is for you between Fedora and Ubuntu, and how to enable and use Flatpaks on Fedora.
John is a young technical professional with a passion for educating users on the best ways to use their technology. He holds technical certifications covering topics ranging from computer hardware to cybersecurity to Linux system administration.
Our latest tutorials delivered straight to your inbox