How To Install KDE Plasma GUI In CentOS 7 Linux

By default a full installation of CentOS 7 will have the GNOME graphical user interface (GUI) installed and it will load up after system boot, however if we have installed CentOS without a GUI installed we can always install one later, or optionally we can install a different GUI.

This quick guide will cover how to install the KDE Plasma desktop on CentOS 7, which will provide a GUI for working with the Linux system. While I don’t suggest using a GUI on a production server, it’s a good option if you’re using CentOS as a desktop.

The Plasma desktop is the default environment in many Linux distributions such as openSUSE and Kubuntu.

KDE Plasma Desktop

KDE Plasma Desktop

Install KDE Plasma In CentOS

While there are many different graphical user interfaces available for Linux, in this example we will be using KDE Plasma workspaces.

Installing the KDE Desktop is now as simple as installing the “KDE Plasma Workspaces” package group, which is already configured to install hundreds more packages that are required for a GUI installation.

[root@centos7 ~]# yum groupinstall "KDE Plasma Workspaces" -y

Note that this may take a while, on my minimal installation I needed to download almost 1000 packages which took up almost 2GB of disk space.

Start The GUI

By default after installing these packages, the default target should have automatically updated, meaning that after a reboot the GUI will automatically be loaded. We can check the current default target as shown below.

[root@centos7 ~]# systemctl get-default
graphical.target

In this instance the target has been updated appropriately by installing these package groups. If it instead said multi-user.target, then you would need to update it manually.

The target is similar to the old run levels, in this case multi-user.target is equivalent to run level 3 meaning that after a reboot the GUI will not be loaded here. We can set the default to the graphical.target which is equivalent to run level 5.

[root@centos7 ~]# systemctl set-default graphical.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.

[root@centos7 ~]# systemctl get-default
graphical.target

While this has changed the default target which is accessed during system boot, our current target is still the multi-user.target. We can change to the GUI by performing ‘systemctl isolate graphical.target’ which will change us to the GUI immediately.

[root@centos7 ~]# systemctl isolate graphical.target

Alternatively a system reboot would also work, as all future boots should boot to the graphical target by default.


When you’re at the login screen, simply select the cog icon and confirm that KDE Plasma Workspace is selected, as shown below. This preference should be remembered and automatically selected for next time. No other options are displayed here as we only have KDE installed, however if we also installed a package group such as “GNOME Desktop” we would have a selection to choose from.

Select KDE Plasma Workspace at login

Removing KDE Plasma

If you’ve installed the GUI on a server and realized that it was a terrible mistake, don’t worry! We can also undo this by simply using yum to remove the “KDE Plasma Workspaces” package group

[root@centos7 ~]# yum groupremove "KDE Plasma Workspaces"

Carefully read through the packages that will be removed and ensure that this looks correct prior to removing packages or dependencies.

Summary

As shown we can easily install the KDE Plasma Workspaces desktop group of packages in CentOS 7 Linux, which will provide us with a graphical user interface that can be used for managing and interacting with the system.

Leave a comment ?

12 Comments.

  1. This was just what I needed. I’m using CentOS 7 for dev work and the need to add lots of Gnome 3 extensions (with some not working due to the work environment) just to get the basic functionality I’m used to was annoying the heck out of me. I can see why KDE is now the most popular desktop environment.

    Thanks for the instructions!

  2. Trying to remove but this is what I get:

    [beef@localhost ~]$ sudo yum groupremove “KDE Plasma Workspaces”
    Loaded plugins: fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    * base: mirror.hmc.edu
    * epel: mirrors.kernel.org
    * extras: mirrors.cmich.edu
    * updates: mirror.oss.ou.edu
    No group named KDE Plasma Workspaces exists
    Maybe run: yum groups mark remove (see man yum)
    No packages to remove from groups

    • What version of CentOS is this, including minor version? Wondering if they have changed the group name again.. You could try searching through the available groups for KDE.

      • That’s kind of what I was thinking but being relatively new to CentOS I wasn’t sure. The version is: CentOS Linux release 7.3.1611 (Core). When I do a yum group list KDE Plasma Workspaces definitely comes up as an option, in fact it’s the only one for KDE.
        Available Environment Groups:
        Minimal Install
        Compute Node
        Infrastructure Server
        File and Print Server
        MATE Desktop
        Basic Web Server
        Virtualization Host
        Server with GUI
        GNOME Desktop
        KDE Plasma Workspaces
        Development and Creative Workstation

  3. Do you know how to install the latest KDE. just like kde 5.8 or 5.10

  4. great tutorial simple clear and effective,THANKS A LOT

  5. I followed the instructions, everithing was installed but there is no plasma/kde showing in the login screen. Any pointers? I do have gnome3 running.

  6. [root@localhost drtcbear]# yum groupinstall “KDE Plasma Workspaces” -y
    Loaded plugins: langpacks
    Maybe run: yum groups mark install (see man yum)
    No packages in any requested group available to install or update

Leave a Comment

NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>