Arch Linux is deliberately minimal. When you finish the base installation -- whether through the archinstall script or a fully manual setup -- you're dropped into a TTY with no graphical environment, no window manager, and no display server. That's the point. Arch gives you the freedom to build your desktop exactly the way you want it, starting from a clean foundation. The Arch Wiki's desktop environment page documents dozens of options, but three environments consistently dominate the field: GNOME, KDE Plasma, and XFCE. Each occupies a distinct niche in terms of resource usage, customization philosophy, and Wayland readiness.
This guide assumes you have a working Arch Linux base system with an internet connection, a non-root user with sudo privileges, and a working bootloader. Every command and configuration path referenced here is verified against the official Arch repositories and the Arch Wiki, the single authoritative source for Arch Linux documentation.
Prerequisites: Display Server and GPU Drivers
Before installing any desktop environment, you need a display server and the correct GPU drivers. The display server is the layer that sits between your hardware and the graphical environment, handling input events, window placement, and rendering output to the screen. In 2026, there are two choices: Xorg (also called X11 or the X Window System), which has been the standard for over three decades, and Wayland, the modern replacement that both GNOME and KDE Plasma now use as their default session.
GNOME has defaulted to Wayland since GNOME 3.22 (released in 2016), and KDE Plasma completed its transition with Plasma 6.0 in February 2024. Starting with Plasma 6.4, the KDE project matured its Wayland session to the point that the Arch Wiki's KDE page notes the X11 session is only available separately via the plasma-x11-session package. The KDE project announced in November 2025 that Plasma 6.8 (expected October 2026) will be entirely Wayland-exclusive, with X11 session support ending in early 2027. The current stable release on Arch is Plasma 6.6, which shipped in February 2026. XFCE, by contrast, still relies on Xorg for production use, though the Xfce 4.20 release (December 2024) brought experimental Wayland support through the Labwc and Wayfire compositors.
Start by installing Xorg, which all three environments can still fall back to, and which XFCE requires outright:
Next, install the appropriate GPU driver for your hardware. This step is essential -- without the correct driver, the display server will either fail to start or fall back to software rendering, which is unusable for daily work.
# AMD GPUs (open-source, recommended) $ sudo pacman -S xf86-video-amdgpu mesa vulkan-radeon # Intel integrated graphics $ sudo pacman -S xf86-video-intel mesa vulkan-intel # NVIDIA (Turing/RTX 2000 series and newer) # As of December 2025, Arch's main nvidia package uses open kernel modules. # See: https://archlinux.org/news/nvidia-590-driver-drops-pascal-support-main-packages-switch-to-open-kernel-modules/ $ sudo pacman -S nvidia-open nvidia-utils # NVIDIA (legacy: Maxwell/Pascal GTX 900/1000 series) # The NVIDIA 590 driver dropped support for these GPUs. # Install the legacy proprietary driver from the AUR instead. $ yay -S nvidia-580xx-dkms nvidia-utils
If you're using NVIDIA hardware with Wayland (either GNOME or KDE Plasma), you must enable DRM kernel mode setting. Add nvidia-drm.modeset=1 to your kernel parameters in your bootloader configuration. Without this, Wayland sessions will not start on NVIDIA GPUs. The Arch Wiki's NVIDIA page covers this in detail. Note that as of December 2025, Arch Linux transitioned its main NVIDIA packages to the open kernel modules with the NVIDIA 590 driver. Users with Turing (RTX 2000 series) and newer GPUs are migrated automatically, while Maxwell and Pascal users must switch to the legacy nvidia-580xx-dkms package from the AUR.
You also need PipeWire for audio, which has replaced PulseAudio as the standard sound server on modern Linux desktops. PipeWire handles both audio and video streams and is required by all three desktop environments for full functionality:
Finally, install NetworkManager, which provides the network configuration backends that all three desktop environments expect:
Installing GNOME
GNOME is the default desktop environment on Fedora, Ubuntu (since 17.10), and several other major distributions. It is developed by The GNOME Project and follows a six-month release cadence, with each version bringing incremental interface refinements and performance improvements. The current stable release, GNOME 48 (codenamed "Bengaluru," released March 19, 2025), introduced dynamic triple buffering in the Mutter compositor for smoother animations and reduced dropped frames, new Adwaita Sans and Adwaita Mono default fonts, grouped notification stacking in the message tray, a redesigned image viewer with cropping and rotation, HDR display configuration in Settings, a new "Digital Wellbeing" section with screen time tracking and break reminders, and Decibels -- a minimalist audio player promoted to a core application. The GNOME Foundation's announcement described it as bringing "improved notification stacking for a cleaner experience, better performance with dynamic triple buffering, and the introduction of new fonts." GNOME's design philosophy is opinionated -- it provides a clean, distraction-free interface that deliberately limits surface-level customization in favor of consistency and simplicity.
On Arch Linux, the GNOME desktop is distributed across two package groups. The gnome group contains the core shell, file manager (Nautilus), terminal (Console), text editor, system settings, and the GDM display manager. The gnome-extra group adds supplementary applications like the Connections remote desktop client, the Disk Usage Analyzer, and other utilities. According to the Arch Wiki's GNOME page, the gnome group alone provides a fully functional desktop.
# Full GNOME desktop (core + applications) $ sudo pacman -S gnome # Optional: extra GNOME applications $ sudo pacman -S gnome-extra # Minimal install: just the shell and essential tools # Note: gnome-console is the modern GNOME terminal (Console). # For the classic terminal with profiles, install gnome-terminal instead. $ sudo pacman -S gnome-shell gnome-control-center gnome-console nautilus
GNOME uses GDM (GNOME Display Manager) to handle graphical login sessions. GDM is tightly integrated with GNOME Shell and provides native support for both Wayland and X11 session selection at the login screen. Enable it with systemd:
Reboot, and GDM will present a login screen. By default, GNOME starts in a Wayland session. If you need X11 -- for example, because you're running an older NVIDIA driver or an application that doesn't support Wayland -- click the gear icon on the login screen and select "GNOME on Xorg."
Post-Install Configuration
GNOME's built-in Settings application covers the basics, but for deeper customization, install GNOME Tweaks and the Extension Manager:
GNOME Tweaks lets you control window titlebar buttons, font rendering, the system theme, startup applications, and keyboard/mouse behavior that the standard Settings app doesn't expose. For more advanced modifications, the GNOME Extensions website hosts hundreds of community extensions that can add features like a traditional dock, a system tray, tiling window management, and desktop icons.
GNOME runs on a pure Wayland compositor (Mutter). If you need to run legacy X11 applications, they'll automatically use XWayland, which is included with the xorg-xwayland package (pulled in as a dependency of gnome-shell). Applications like Steam, Electron-based apps, and Wine all work through XWayland without manual configuration.
Installing KDE Plasma
KDE Plasma occupies the opposite end of the desktop philosophy spectrum from GNOME. Where GNOME hides options behind clean surfaces, Plasma exposes them. The KDE project describes Plasma as "a desktop you control," and that's an accurate assessment -- there are few visual or behavioral aspects of the desktop that can't be tweaked through the graphical System Settings application. Plasma is built on the Qt framework and completed the migration from Qt 5 to Qt 6 with the Plasma 6.0 release in February 2024, which also made Wayland the default session. The current stable release on Arch Linux is Plasma 6.6 (February 2026), which introduced a new "Plasma Login Manager" as a potential SDDM replacement, OCR text extraction in the Spectacle screenshot tool, a first-run setup wizard, and smoother animations on high-refresh-rate displays. KDE Plasma is the default desktop on distributions including Kubuntu, KDE neon, openSUSE, and Manjaro KDE.
On Arch Linux, KDE Plasma is available through two paths. The plasma-meta meta-package pulls in the core Plasma desktop along with all officially recommended components. The plasma group offers the same packages but lets you deselect individual components during installation. For a truly minimal setup, you can install just plasma-desktop, which gives you the shell, panel, system settings, and window manager without any bundled applications.
# Full Plasma desktop (meta-package, recommended) $ sudo pacman -S plasma-meta # KDE applications (file manager, terminal, etc.) $ sudo pacman -S kde-applications-meta # Minimal: just the desktop shell and core utilities $ sudo pacman -S plasma-desktop konsole dolphin
KDE Plasma uses SDDM (Simple Desktop Display Manager) for graphical login. SDDM is recommended upstream and is the only display manager that integrates with Plasma's System Settings for theme customization:
By default, SDDM uses its own fallback theme rather than the KDE Breeze theme. To get the polished Plasma login experience, install sddm-kcm (the KDE configuration module for SDDM) and set the Breeze theme through System Settings > Startup and Shutdown > Login Screen (SDDM). Alternatively, edit /etc/sddm.conf and set [Theme] Current=breeze. As of Plasma 6.6, KDE also ships the Plasma Login Manager -- a new display manager forked from SDDM that integrates more deeply with Plasma's settings and Wayland stack. Fedora 44 and CachyOS have already adopted it as their default. It requires systemd, so SDDM remains the better choice on systemd-free setups. To try it on Arch: sudo pacman -S plasma-login-manager, then sudo systemctl disable sddm && sudo systemctl enable plasmalogin.
After rebooting, SDDM will present a login screen. Plasma defaults to a Wayland session. The X11 session remains available from the session selector on the login screen via the separate plasma-x11-session package, though the KDE project announced in November 2025 that Plasma 6.8 (expected October 2026) will drop the X11 session entirely. As the KDE team stated, "the vast majority of our users are already using the Wayland session, it's the default on most distributions." X11 session support will be maintained through the Plasma 6.7 series into early 2027 for users who need additional transition time.
Post-Install Configuration
KDE Plasma's customization depth is enormous. From System Settings, you can configure global themes, window decoration styles, panel layouts, virtual desktop behavior, keyboard shortcuts, display scaling, color schemes, icon themes, and cursor styles. Plasma also supports KDE Connect (kdeconnect package) for phone-to-desktop integration, Activities for separating workflows into virtual workspaces, and Widgets (formerly Plasmoids) that can be placed on the desktop or panel.
For GTK application theming (so that Firefox, GIMP, and other GTK applications match your Plasma theme), install kde-gtk-config:
This adds a "GNOME/GTK Application Style" section to System Settings where you can select a matching GTK theme for visual consistency across Qt and GTK applications.
Installing XFCE
XFCE is the lightweight option. It's built on GTK and has been in active development since 1996, making it one of the longest-running desktop environments in the Linux ecosystem. XFCE's design goal, stated on the project's official website, is to be "fast and low on system resources, while still being visually appealing and user friendly." That restraint makes XFCE an ideal choice for older hardware, virtual machines, or anyone who prefers a traditional desktop paradigm without the resource overhead of GNOME or KDE Plasma. The current stable release is XFCE 4.20, released December 15, 2024 after nearly two years of development. The Xfce team described the release's primary focus as "the preparation of the codebase to be ready for Wayland," adding that "we meanwhile have experimental Wayland support for most components." In practice, XFCE 4.20's Wayland support requires an external compositor (Labwc or Wayfire are recommended) and is explicitly labeled as suitable only for advanced users. Other 4.20 highlights include improved HiDPI icon and thumbnail scaling, extensive Thunar file manager enhancements, updated panel preferences with configurable border widths and new clock features, hybrid sleep support, and power profile management via power-profiles-daemon.
On Arch, XFCE is distributed as two package groups. The xfce4 group provides the core desktop: the Xfwm4 window manager, the panel, the Thunar file manager, the Xfce4-terminal, the application finder, and the session manager. The xfce4-goodies group adds plugins and utilities including the Whisker Menu (an alternative application launcher), the Mousepad text editor, the screenshooter, task manager, and panel plugins for weather, CPU monitoring, and system notifications.
# Core XFCE desktop $ sudo pacman -S xfce4 # Optional: extra plugins and utilities $ sudo pacman -S xfce4-goodies
XFCE does not ship its own display manager. The recommended option is LightDM, a cross-desktop display manager that is lightweight, well-maintained, and supports session selection for multi-environment setups. Install LightDM along with the GTK greeter (the graphical login interface):
$ sudo pacman -S lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings $ sudo systemctl enable lightdm.service
After rebooting, LightDM will present a login screen. Select "Xfce Session" from the session dropdown and log in. XFCE runs on Xorg by default.
Post-Install Configuration
XFCE's settings are accessible through the Settings Manager, which exposes configuration for appearance, window manager behavior, keyboard shortcuts, display arrangement, panel layout, and power management. Unlike GNOME, XFCE uses a traditional desktop metaphor with a taskbar, system tray, desktop icons, and right-click context menus -- all of which are configurable without installing additional tools.
XFCE's panel system is particularly flexible. You can add, remove, and reposition panels, and each panel can hold a mix of launchers, applets, and system indicators. The Whisker Menu plugin (included in xfce4-goodies) provides a searchable application launcher similar to what you'd find on GNOME or KDE Plasma.
XFCE doesn't include a compositing manager as capable as Mutter or KWin. If you want window shadows, transparency, and smooth animations, enable the built-in compositor at Settings > Window Manager Tweaks > Compositor. For more advanced compositing (like blur or rounded corners), consider running picom as an external compositor: sudo pacman -S picom, then add it to your XFCE startup applications.
Choosing Between the Three
The right desktop environment depends entirely on your hardware, workflow, and tolerance for configuration. Each of the three environments covered here makes fundamentally different trade-offs.
GNOME is best suited for users who want a polished, modern interface that works well out of the box and doesn't require configuration to be productive. It uses more RAM than XFCE (typically 800 MB to 1.2 GB at idle) but provides the smoothest Wayland experience, tight integration between its native applications, and an interface that scales cleanly on HiDPI displays. Its extension ecosystem compensates for the limited built-in customization options, though extensions can break between GNOME releases due to the project's aggressive approach to Shell API changes.
KDE Plasma is for users who want control over every visual and behavioral detail of their desktop. Despite its feature density, Plasma's memory footprint is competitive with GNOME (typically 600 MB to 1 GB at idle) thanks to years of optimization work in the Plasma 5 and 6 cycles. Plasma's Wayland support is mature -- it has been the default session since Plasma 6.0, and the KDE project is committed enough to drop the X11 session entirely in Plasma 6.8 (expected late 2026). Its theming engine is comprehensive, and its native applications (Dolphin, Kate, Konsole) are highly capable. The Plasma 6.6 release also introduced OCR text extraction in the Spectacle screenshot tool and a new Plasma Login Manager. The trade-off is complexity: the sheer number of options in System Settings can be overwhelming, and Qt/GTK visual consistency requires additional configuration.
XFCE is the pragmatic choice. It uses the least memory (typically 350 to 500 MB at idle), starts the fastest, and runs smoothly on hardware that GNOME and KDE Plasma would struggle with. It provides a traditional desktop layout that will feel familiar to anyone who has used Windows XP through Windows 10, and its modular design means every component can be replaced independently. The trade-off is that XFCE still relies on Xorg for production use -- its Wayland support in the 4.20 release is explicitly marked as experimental and requires an external compositor -- its visual polish trails GNOME and KDE Plasma, and its roughly two-year release cycle means it receives less frequent feature updates than either of its heavier counterparts.
Running Multiple Desktop Environments
Arch Linux allows you to install all three desktop environments simultaneously. Each installs its own session file (a .desktop file in /usr/share/xsessions/ or /usr/share/wayland-sessions/), and your display manager will present all available sessions at login. This is a legitimate way to test different environments before committing to one.
Running multiple desktop environments can cause configuration conflicts, especially with default application associations, icon themes, and cursor settings. GTK and Qt theming may also clash. If you decide to remove a desktop environment later, use pacman -Rns to remove the packages along with their configuration files and orphaned dependencies. For example: sudo pacman -Rns gnome gnome-extra.
If you're using LightDM as your display manager and have GNOME, KDE Plasma, and XFCE all installed, the session selector at login will show all available sessions. If you're using GDM, it will similarly list every installed session. SDDM does the same. The key is that only one display manager should be enabled at a time. If you switch from GNOME (GDM) to KDE Plasma (SDDM), disable one before enabling the other:
# Switch from GDM to SDDM $ sudo systemctl disable gdm.service $ sudo systemctl enable sddm.service # Switch from SDDM to LightDM $ sudo systemctl disable sddm.service $ sudo systemctl enable lightdm.service
Troubleshooting Common Issues
Even with correct package installation, getting a desktop environment running smoothly on Arch can involve debugging. These are the issues you'll encounter frequently, along with their solutions.
Display manager fails to start. If your system boots to a TTY instead of a graphical login, the display manager service has either failed or was never enabled. Check its status with systemctl status gdm.service (or sddm.service, or lightdm.service). Common causes include missing GPU drivers, incorrect Xorg configuration, or a missing greeter for LightDM. Inspect the journal for specific errors:
Black screen after login on NVIDIA + Wayland. This is almost always caused by missing DRM kernel mode setting. Verify that nvidia-drm.modeset=1 is in your kernel parameters. For GRUB, edit /etc/default/grub, add the parameter to GRUB_CMDLINE_LINUX_DEFAULT, then regenerate the config with sudo grub-mkconfig -o /boot/grub/grub.cfg. For systemd-boot, add the parameter to your entry file in /boot/loader/entries/.
No sound after installation. Ensure PipeWire is running as a user service. It should start automatically through the Plasma or GNOME session, but you can verify:
$ systemctl --user status pipewire pipewire-pulse wireplumber # If not running, enable them $ systemctl --user enable --now pipewire pipewire-pulse wireplumber
Screen tearing on XFCE. XFCE's built-in Xfwm4 compositor can exhibit tearing on some hardware. Enable VSync through Settings > Window Manager Tweaks > Compositor, and set the "Synchronize drawing to the vertical blank" option. If that's not enough, disable the Xfwm4 compositor entirely and use picom with the --vsync flag instead.
Fonts look wrong or blurry. Install the core font packages that desktop environments expect but don't always pull in as dependencies:
Then ensure font hinting and antialiasing are enabled in your desktop environment's appearance settings. GNOME Tweaks, KDE System Settings, and the XFCE Appearance dialog all expose these options.
Wrapping Up
The Arch Linux approach to desktop environments is exactly what makes the distribution worth using: nothing is installed that you didn't choose, and every component is transparent and replaceable. GNOME gives you an opinionated, cohesive experience that stays out of your way. KDE Plasma gives you complete control with an almost absurd level of configurability. XFCE gives you a fast, traditional desktop that runs well on anything.
Whichever environment you choose, the Arch Wiki remains the definitive reference. Every desktop environment has a dedicated wiki page -- GNOME, KDE, Xfce -- with configuration details, troubleshooting steps, and known issues that go far deeper than any single guide can cover. The upstream project sites (gnome.org, kde.org, xfce.org) and their release announcements are equally valuable for tracking new features and breaking changes. Treat these as your primary documentation sources, and you'll be able to solve almost anything you encounter.
The goal is not to pick the objectively "best" desktop environment. The goal is to understand what each one gives you so you can make an informed choice for your hardware and your workflow.