KDE Plasma is the desktop environment for Linux offered by the KDE development team. It is quite popular because of its effects and beautiful graphical elements along with a huge range of applications. Earlier Plasma was the default graphical user interface for CentOS but with CentOS 8 it has been shifted to GNOME. Therefore, the fans of Kde Plasma are missing it die heartedly and want it back on their operating system. In this guide, we will show the steps to easily install it on CentOS 8.
Steps to install KDE Plasma workspace GUI on CentOS 8
Actually, why we need to create this tutorial because this pretty Linux desktop environment is not available anymore in the CentOS 8 or RHEL 8 official repository. Therefore, we need to add an EPEL repo, and then only we can get a Plasma desktop. We carried this tutorial on CentOS 8 server without GUI interface, I mean it was working on CLI. However, you can use the command in GNOME running CentOS Linux as well.
1. Add EPEL repository
The first thing which we need is the epel repository that contains hundreds of up-to-date packages that are not available on the official rep of this Linux system.
- Install EPEL repo on CentOS 8 Linux
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
2. Update the system
After adding the repo, we need to flush the cache and rebuild it again using the update command. It will also update all available packages on the system.
- System package update
3. Install KDE Plasma Desktop on CentOS 8
The repository is set and now it’s time to run a command that will enable the Power Tools on CentOS along with the installation of Plasma 5 Desktop with base X.
dnf --enablerepo=epel,PowerTools group -y install "KDE Plasma Workspaces" "base-x"
dnf --enablerepo=epel,powertools group -y install "KDE Plasma Workspaces" "base-x"
4. Start KDE
For CLI users- If you directly want to start and test the installed graphical user interface then simply run.
echo "exec /usr/bin/startkde" >> ~/.xinitrc
But the problem is whenever you boot your server or desktop running without a graphical user interface, to get KDE GUI, you have to first log in and then run the command:
startx The good thing is we can remove that by following the further steps.
(optional) For GUI. Those are already using the GNOME version and want to login as KDE. Just log out or restart the system and select the installed from the Gear icon to switch the desktop environment.
4. Set the default Target system
So this step and the upcoming is especially for those who are natively using the command line interface and then installed KDE over it. Therefore, it would be great if you set your default server system boot in CLI to GUI. Therefore every time you boot into GUI only.
systemctl set-default graphical.target
systemctl enable sddm
In case you are getting a blank screen then at KDE login screen press Ctrl+Alt+F2 and then type:
Note= If you are not getting GUI even after login on Terminal bash, then edit bash profile and add the line given below…
Add this line in the end-
if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then exec startx /usr/bin/startkde; fi
To save the file- Ctrl+X, type Y and hit the Enter key.
6 thoughts on “How to install KDE Plasma 5 GUI on CentOS 8 Linux”
Thank you for the tutorial!
“Just log out or restart the system and select the installed from the Gear icon to switch the desktop environment.”
Logging out didn’t help, as Plasma appeared only after the restart.
Hi. I installed and all seemed to be fine. I then wanted to move my home directory to a NAS system and have run into problems.
The new home directory I was testing is on the NAS. The directory is setup to be automounted and from the CLI works fine.
When I login through the GUI start screen it seems to just go away. But after coming back today had actually come up. I tried again and it was very very slow to come up but finally did.
I see a lot of messages about nfs home directories and kde not being happy.
Do you have any insight as to what is going on?
I just tried this on centos7 and it all works properly.
Note that PowerTools is powertools now
You have a typo “powerools” instead of “powertools”