How to Change Your Desktop Environment in Linux

To change your desktop environment in Linux, install the new environment using your package manager — for example, sudo apt install kde-plasma-desktop for KDE Plasma or sudo apt install xfce4 for XFCE on Ubuntu — then log out. At the login screen, click the session selector (usually a gear icon or a settings button near your username) and choose the new desktop environment before logging in. You can have multiple desktop environments installed simultaneously and switch between them at every login.

One Linux, Many Faces

One of Linux’s most distinctive capabilities is the ability to completely change the visual interface and interaction paradigm of your system — without reinstalling, without losing data, and often without even rebooting. The graphical environment you use on Linux is not baked into the operating system the way it is on Windows or macOS. It is a separate, swappable layer.

This separation means you can run GNOME on Ubuntu today, decide you prefer the more traditional look of KDE Plasma or the lightweight efficiency of XFCE, install your preferred desktop environment, and switch to it at the next login — all while keeping the same system, the same files, and the same configuration underneath.

Desktop environments (DEs) differ dramatically in their philosophy, appearance, resource requirements, and workflow. GNOME prioritizes a clean, distraction-free modern aesthetic. KDE Plasma offers extraordinary customizability and a feature-rich traditional desktop. XFCE delivers efficiency and low resource usage. Cinnamon provides a familiar Windows-like experience. MATE preserves the classic GNOME 2 workflow. Understanding what each offers and knowing how to install and switch between them gives you genuine choice over your computing environment — one of the defining freedoms Linux provides.

What Is a Desktop Environment?

A desktop environment is a suite of software that together provides the graphical user interface for a Linux system. It typically includes:

Window manager — controls how windows are drawn, moved, resized, and arranged on screen. Examples: Mutter (GNOME), KWin (KDE), Xfwm4 (XFCE).

File manager — graphical interface for browsing and managing files. Examples: Nautilus (GNOME), Dolphin (KDE), Thunar (XFCE).

Panel/taskbar — the bar(s) showing running applications, system tray, clock, and launchers.

Application launcher — the menu or search interface for starting programs.

System settings — a control panel for configuring display, sound, network, users, and other system parameters.

Default applications — a curated set of programs for common tasks: text editor, terminal emulator, image viewer, calculator, archive manager.

Display compositor — handles visual effects like transparency, shadows, and smooth animations. Examples: Mutter/Muffin (GNOME/Cinnamon), KWin (KDE), Picom (used with lightweight WMs).

Session manager — manages your login session, remembers open applications, and handles logout/shutdown.

All of these components work together to create a coherent desktop experience. Different DEs make dramatically different choices about each component, resulting in very different day-to-day experiences.

Desktop Environment vs. Window Manager vs. Display Server

These three layers are often conflated:

Display server — the lowest layer, managing the physical screen, keyboard, and mouse. Historically X11 (X.Org Server); increasingly Wayland on modern systems.

Window manager — draws and manages window frames, handles placement, focus, and decoration. Can run standalone (i3, Openbox) without a full DE.

Desktop environment — the full suite including a window manager plus all the surrounding applications and services that make a complete desktop.

You can run just a window manager without a desktop environment for maximum control and minimal resource usage. Most users prefer a full DE for its integrated experience.

Major Linux Desktop Environments

GNOME: The Modern Default

Used by default on: Ubuntu, Fedora, Debian, openSUSE Tumbleweed

GNOME 4x (current major version) takes a distinctive approach: a clean, minimal interface with no traditional taskbar. The “Activities Overview” (press the Super key or move the mouse to the top-left corner) shows running apps, workspaces, and a search bar. The top bar shows only the time, system status, and a few indicators.

GNOME’s design philosophy prioritizes focus and flow — reducing visual clutter to keep attention on the task at hand. It works excellently with touch screens and has strong Wayland support.

Strengths: Clean aesthetics, excellent touchpad/touchscreen support, strong Wayland implementation, large extension ecosystem (GNOME Extensions) Weaknesses: More RAM usage than lighter DEs, some users find it unconventional without a taskbar, extensions can break on version updates RAM usage: ~800 MB–1.2 GB at idle on a typical system

Install on Ubuntu/Debian:

$ sudo apt install gnome-shell gnome-session ubuntu-gnome-desktop

Install on Fedora: Fedora Workstation ships GNOME by default. Other Fedora spins use different DEs.

KDE Plasma: The Customizable Powerhouse

Used by default on: Kubuntu, KDE Neon, openSUSE (KDE spin), Fedora KDE spin

KDE Plasma is the most customizable mainstream desktop environment. Every aspect of the appearance and behavior can be adjusted — panel position and size, window decorations, themes, widgets, keyboard shortcuts, virtual desktop behavior, and more. It ships with a traditional taskbar layout familiar to Windows users but can be rearranged into virtually any configuration.

KDE uses the Qt framework (while GNOME uses GTK), giving it a distinct look and different application ecosystem.

Strengths: Extraordinary customization depth, feature-rich with many built-in tools, excellent Wayland support, actually quite memory-efficient for its features, Dolphin file manager is excellent Weaknesses: Complexity can be overwhelming for new users, default theme may feel busy to some RAM usage: ~500–700 MB at idle (surprisingly competitive with GNOME)

Install on Ubuntu/Debian:

$ sudo apt install kde-plasma-desktop

For a more complete KDE experience:

$ sudo apt install kubuntu-desktop

Install on Fedora:

$ sudo dnf install @kde-desktop-environment

XFCE: The Lightweight Champion

Used by default on: Xubuntu, Linux Mint XFCE Edition, MX Linux, many minimal distributions

XFCE is designed for efficiency — it is fast, uses minimal RAM, and runs well on older hardware. It uses a traditional two-panel layout (top panel for menus and launchers, bottom panel for the taskbar) and a conventional file manager (Thunar). XFCE’s GTK-based applications are clean and functional without visual excess.

XFCE is the recommended choice for older computers (4 GB RAM or less, older CPUs) or for users who want maximum responsiveness without visual overhead.

Strengths: Very low resource usage, fast and responsive, stable and mature, easy to understand traditional layout Weaknesses: Less visual polish than GNOME or KDE, some components feel dated, slower development pace RAM usage: ~300–500 MB at idle

Install on Ubuntu/Debian:

$ sudo apt install xfce4 xfce4-goodies

xfce4-goodies adds useful extras: additional panel plugins, archive manager integration, media player, and more.

Install on Fedora:

$ sudo dnf install @xfce-desktop-environment

MATE: The Classic GNOME 2 Revival

Used by default on: Ubuntu MATE, Linux Mint MATE Edition

When GNOME released version 3 in 2011 with its radical interface redesign, many users preferred the classic GNOME 2 experience. MATE was created as a fork to preserve and continue developing the traditional GNOME 2 interface. It features a conventional two-panel layout with a traditional application menu.

MATE is an excellent choice for users who want a complete, well-integrated desktop that feels familiar without being resource-heavy.

Strengths: Traditional, familiar layout, moderate resource usage, well-integrated, actively maintained Weaknesses: Can feel dated compared to modern DEs, smaller ecosystem than GNOME or KDE RAM usage: ~400–600 MB at idle

Install on Ubuntu/Debian:

$ sudo apt install mate-desktop-environment mate-desktop-environment-extras

Cinnamon: Modern Features, Traditional Feel

Used by default on: Linux Mint (primary DE)

Cinnamon was created by the Linux Mint team when GNOME 3 departed from traditional desktop conventions. It provides a modern-feeling desktop with familiar Windows-like conventions: a taskbar at the bottom, a start menu in the lower left, system tray on the right. Cinnamon is built on modern GTK and has good visual effects while maintaining the traditional workflow.

Cinnamon is particularly popular with users switching from Windows, as the layout and interaction patterns are immediately familiar.

Strengths: Familiar Windows-like layout, visually polished, good effects and animations, excellent Linux Mint integration Weaknesses: Originally designed for Linux Mint; installing on other distributions can be less polished, X11-only (no Wayland as of 2026) RAM usage: ~600–800 MB at idle

Install on Ubuntu/Debian:

$ sudo apt install cinnamon-desktop-environment

LXQt and LXDE: Ultra-Lightweight Options

LXDE (Lightweight X11 Desktop Environment) uses GTK2 and prioritizes extreme minimalism. It is among the lightest full desktop environments available.

LXQt is the Qt-based successor to LXDE, updating the technology stack while maintaining the lightweight philosophy.

Both are ideal for very old hardware or embedded Linux systems.

Install LXQt on Ubuntu/Debian:

$ sudo apt install lxqt

Budgie: Modern and Elegant

Used by default on: Ubuntu Budgie

Budgie was created by the Solus project and emphasizes a clean, modern appearance with a traditional panel layout. It uses GTK and integrates well with GNOME technologies while presenting a more conventional interface than stock GNOME.

Install on Ubuntu/Debian:

$ sudo apt install ubuntu-budgie-desktop

Desktop Environment Comparison

DE RAM Usage Customization Best For Default On
GNOME High (800MB+) Moderate (extensions) Modern workflow, touch Ubuntu, Fedora
KDE Plasma Medium (500MB+) Extreme Power users, Windows feel Kubuntu, KDE Neon
XFCE Low (300MB+) Good Older hardware, speed Xubuntu, MX Linux
MATE Medium-Low (400MB+) Good Classic GNOME 2 fans Ubuntu MATE
Cinnamon Medium (600MB+) Good Windows switchers Linux Mint
LXQt Very Low (200MB+) Basic Very old hardware Lubuntu
Budgie Medium (600MB+) Moderate Clean modern look Ubuntu Budgie

How to Install a New Desktop Environment

Step 1: Install the Desktop Environment Package

On Ubuntu/Debian, install the desired DE:

# KDE Plasma (minimal)
$ sudo apt install kde-plasma-desktop

# KDE Plasma (full, with all KDE apps)
$ sudo apt install kubuntu-desktop

# XFCE (basic)
$ sudo apt install xfce4

# XFCE (with extras)
$ sudo apt install xfce4 xfce4-goodies

# MATE
$ sudo apt install mate-desktop-environment

# Cinnamon
$ sudo apt install cinnamon-desktop-environment

# LXQt
$ sudo apt install lxqt

# Budgie
$ sudo apt install ubuntu-budgie-desktop

On Fedora:

# KDE Plasma
$ sudo dnf install @kde-desktop-environment

# XFCE
$ sudo dnf install @xfce-desktop-environment

# MATE
$ sudo dnf install @mate-desktop-environment

# Cinnamon
$ sudo dnf install @cinnamon-desktop-environment

# LXQt
$ sudo dnf install @lxqt-desktop-environment

During installation on Ubuntu, you may be asked which display manager to use. If you are primarily using the new DE, choose its display manager; otherwise keep your current one (GDM for GNOME, SDDM for KDE, LightDM for XFCE/MATE/others).

Step 2: Log Out

After installation completes:

$ gnome-session-quit    # If using GNOME
# Or use the system menu to log out

Step 3: Select the Desktop Environment at the Login Screen

At the login screen (handled by your display manager — GDM, SDDM, or LightDM), look for a session selector. Its location varies by display manager:

GDM (GNOME’s display manager): After entering your username, a gear icon (⚙) appears in the lower-right corner of the password field area. Click it to see a list of available sessions.

SDDM (KDE’s display manager): A session selector is typically visible in the bottom-left or bottom-right corner of the login screen.

LightDM (common with XFCE and others): A session button or dropdown appears near the username/password fields.

Select your new desktop environment from the list, then enter your password and log in.

Your selection is remembered for future logins — you do not need to select it again unless you want to switch back.

Step 4: Verify the New Desktop

After logging in, you should see your new desktop environment. Verify:

$ echo $DESKTOP_SESSION
plasma        # or xfce, gnome, cinnamon, etc.

$ echo $XDG_CURRENT_DESKTOP
KDE           # or XFCE, GNOME, X-Cinnamon, etc.

Switching Between Installed Desktop Environments

Once multiple DEs are installed, switching is simply a matter of selecting the session at the login screen. Each DE maintains its own settings and configuration independently.

Configuration Isolation

Most DE configuration is stored in:

  • ~/.config/ — application settings (XDG standard)
  • ~/.local/share/ — application data

Different DEs store their settings in separate subdirectories within these locations, so switching DEs does not corrupt or overwrite each other’s settings. Your GNOME settings are preserved when using KDE, and vice versa.

Changing the Default Display Manager

If you installed multiple DEs and each brought its own display manager, you can choose which one manages the login screen:

$ sudo dpkg-reconfigure gdm3        # Set GDM as default
$ sudo dpkg-reconfigure sddm        # Set SDDM as default
$ sudo dpkg-reconfigure lightdm     # Set LightDM as default

Or using systemd:

$ sudo systemctl set-default graphical.target
$ sudo systemctl enable gdm --force    # Set GDM as the display manager

Potential Issues When Installing Multiple DEs

Theme and Application Conflicts

Each DE has its own default applications. After installing KDE alongside GNOME, you may find that clicking a file in GNOME opens a KDE application (or vice versa), because package installation changed the system’s default application associations.

Fix default applications:

# Set GNOME's defaults
$ xdg-settings set default-web-browser firefox.desktop
$ xdg-mime default org.gnome.Nautilus.desktop inode/directory

Or use the desktop’s own settings tool to reconfigure default applications.

Conflicting Services

Some DE background services conflict with each other. KDE’s file indexer (Baloo) and GNOME’s file indexer (Tracker) might both run simultaneously, consuming resources unnecessarily when you are only using one DE.

Disable services from DEs you are not currently using:

# Disable KDE Baloo indexer (if you primarily use GNOME)
$ balooctl disable

# Disable GNOME Tracker (if you primarily use KDE)
$ gsettings set org.freedesktop.Tracker3.Miner.Files enable-monitors false

Visual Theme Inconsistency

GTK-based applications (GNOME, XFCE, MATE, Cinnamon apps) look different in KDE (a Qt environment), and Qt applications (KDE apps) look different in GNOME. This is normal but can be addressed:

For GTK apps in KDE:

$ sudo apt install kde-config-gtk-style

Then configure in System Settings → Appearance → Application Style → Configure GNOME/GTK Application Style.

For Qt apps in GNOME:

$ sudo apt install qt5ct
$ export QT_QPA_PLATFORMTHEME=qt5ct    # Add to ~/.bashrc

Disk Space

Each desktop environment installs substantial packages. Installing several DEs can consume significant disk space:

  • GNOME: ~500 MB–1 GB
  • KDE Plasma: ~500 MB–2 GB (with full app suite)
  • XFCE: ~200–400 MB
$ df -h /    # Check available space before installing

Removing a Desktop Environment

If you decide you no longer want a DE you installed:

On Ubuntu/Debian:

# Remove KDE Plasma desktop
$ sudo apt remove kde-plasma-desktop
$ sudo apt autoremove    # Remove orphaned dependencies

# Remove the full Kubuntu desktop meta-package
$ sudo apt remove kubuntu-desktop
$ sudo apt autoremove --purge

Important: Removing a desktop environment does not always remove all the applications it installed. The autoremove command removes automatically-installed packages that are no longer needed, but explicitly installed DE applications may remain.

Thorough removal approach:

$ sudo apt purge kde-plasma-desktop
$ sudo apt autoremove --purge

Trying DEs Without Installing: Live ISOs

Before committing to installing a desktop environment on your running system, you can try different DEs without any risk by booting a live USB:

  • Kubuntu — KDE Plasma on Ubuntu base
  • Xubuntu — XFCE on Ubuntu base
  • Ubuntu MATE — MATE on Ubuntu base
  • Linux Mint (Cinnamon/MATE/XFCE editions) — multiple flavors
  • Fedora spins — KDE, XFCE, MATE, Cinnamon, LXQt spins

Download the ISO, write it to a USB drive with Balena Etcher or dd, boot from it, and try the desktop environment live without any installation. This is the safest way to evaluate whether a DE suits your workflow before committing to the installation process.

Making the Right Choice

Choose GNOME if:

  • You like a clean, modern, distraction-free interface
  • You use a laptop with a good touchpad or touchscreen
  • You want strong Wayland support
  • You value the large extension ecosystem

Choose KDE Plasma if:

  • You want maximum customizability
  • You are coming from Windows and want a familiar (but better) experience
  • You want a full-featured DE without sacrificing RAM efficiency
  • You love having many configuration options

Choose XFCE if:

  • Your computer has limited RAM (4 GB or less)
  • You want maximum speed and responsiveness
  • You prefer simplicity over visual effects
  • You want a stable, proven DE that rarely breaks

Choose MATE if:

  • You loved the classic GNOME 2 interface
  • You want something traditional but more modern than XFCE
  • You are on Ubuntu MATE and want the best-integrated experience

Choose Cinnamon if:

  • You are switching from Windows and want immediate familiarity
  • You want visual polish with traditional conventions
  • You are using or considering Linux Mint

Quick Reference: DE Installation Commands

Desktop Environment Ubuntu/Debian Fedora
KDE Plasma (minimal) sudo apt install kde-plasma-desktop sudo dnf install @kde-desktop-environment
KDE Plasma (full) sudo apt install kubuntu-desktop —
XFCE (basic) sudo apt install xfce4 sudo dnf install @xfce-desktop-environment
XFCE (full) sudo apt install xfce4 xfce4-goodies —
MATE sudo apt install mate-desktop-environment sudo dnf install @mate-desktop-environment
Cinnamon sudo apt install cinnamon-desktop-environment sudo dnf install @cinnamon-desktop-environment
LXQt sudo apt install lxqt sudo dnf install @lxqt-desktop-environment
Budgie sudo apt install ubuntu-budgie-desktop —

Conclusion: Freedom to Choose Your Interface

The ability to change your desktop environment is one of Linux’s most significant advantages over other operating systems. No other mainstream OS gives you this level of choice over your own computing interface. On Windows or macOS, you work within the interface the company chose for you. On Linux, you choose the interface that best matches your workflow, hardware, aesthetic preferences, and philosophy.

The process is straightforward: install the new DE from your package manager, log out, select the new session at the login screen, and log in. If you decide it is not right for you, remove it and try another. The underlying system never changes — only the graphical layer on top.

This freedom has a practical consequence: Linux users can find an environment they genuinely enjoy working in, not just one they tolerate. Whether that is GNOME’s focused minimalism, KDE’s customizable richness, XFCE’s snappy efficiency, or Cinnamon’s familiar comfort — the right desktop environment for you exists, and you can run it on any Linux distribution.

Hot this week

What Are Snap, Flatpak, and AppImage Packages?

Learn what Snap, Flatpak, and AppImage are, how universal Linux packages work, their differences, pros and cons, and when to use each format for installing software.

Understanding Linux System Directories: What Goes Where?

Learn the Linux filesystem hierarchy — what each directory like /etc, /var, /usr, /home, /tmp, /proc, and /dev contains and why the system is organized this way.

What Is a Symbolic Link in Linux?

Learn what symbolic links (symlinks) are in Linux, the difference between soft and hard links, how to create them with ln, and practical uses for symlinks in system administration.

How to Mount and Unmount Drives in Linux

Learn how to mount and unmount drives, USB drives, and partitions in Linux using the mount command, /etc/fstab for persistent mounts, and how to safely eject external drives.

Understanding the Linux Man Pages: Your Built-in Documentation

Learn how to use Linux man pages to look up any command, understand its options, and navigate the built-in documentation system. Includes man, info, apropos, and whatis.

Topics

What Are Snap, Flatpak, and AppImage Packages?

Learn what Snap, Flatpak, and AppImage are, how universal Linux packages work, their differences, pros and cons, and when to use each format for installing software.

Understanding Linux System Directories: What Goes Where?

Learn the Linux filesystem hierarchy — what each directory like /etc, /var, /usr, /home, /tmp, /proc, and /dev contains and why the system is organized this way.

What Is a Symbolic Link in Linux?

Learn what symbolic links (symlinks) are in Linux, the difference between soft and hard links, how to create them with ln, and practical uses for symlinks in system administration.

How to Mount and Unmount Drives in Linux

Learn how to mount and unmount drives, USB drives, and partitions in Linux using the mount command, /etc/fstab for persistent mounts, and how to safely eject external drives.

Understanding the Linux Man Pages: Your Built-in Documentation

Learn how to use Linux man pages to look up any command, understand its options, and navigate the built-in documentation system. Includes man, info, apropos, and whatis.

How to View Running Processes in Linux

Learn how to view and manage running processes in Linux using ps, top, htop, pgrep, and pstree. Understand process states, PIDs, CPU/memory usage, and how to find and kill processes.

What Is BASH? Understanding the Linux Shell

Learn what Bash is, how the Linux shell works, the difference between the terminal and the shell, Bash features every user should know, and how to customize your shell environment.

How to Check Your Linux System Information

Learn how to check Linux system information including OS version, kernel, CPU, RAM, disk space, network, and hardware details using essential terminal commands.

Related Articles

Popular Categories