Arch Linux: Installing the Graphical User Interface

Complete guide to setting up a modern desktop environment on Arch Linux: GPU drivers (Intel, AMD, Nvidia), Wayland, PipeWire audio, SDDM, and KDE Plasma 6.

Reading time: 45 min

After you have successfully completed the installation and basic configuration of Arch Linux, your system boots into a lean, purely text-based console system. For use as a full-featured workstation or productive daily system, the graphical desktop stack is now missing.

A Linux desktop is not a monolithic block: Unlike Windows or macOS, a graphical Linux environment is composed of modularly interchangeable layers: kernel graphics drivers (DRM/KMS), 3D and video acceleration APIs (Mesa, Vulkan, VA-API), the modern display server Wayland, a multimedia audio server (PipeWire), a display manager for user login (SDDM), and the actual desktop environment (KDE Plasma 6).

This guide is the second part of our Arch Linux series and walks you through every step of setting up a cutting-edge, hardware-accelerated Wayland desktop environment.

πŸ’‘ Prerequisites: A functional, booting Arch Linux base system with working internet connection, configured default user account in the wheel group, and working sudo privileges.

The Modern Linux Desktop Stack (Wayland)

The modular structure of a modern Linux graphics environment is divided into the following layers:


β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ LINUX GRAPHICS & DESKTOP STACK (WAYLAND)                    β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ 1. HARDWARE & KERNEL: GPU (Intel/AMD/Nvidia) | DRM / KMS    β”‚
β”‚ 2. GRAPHICS DRIVERS:  Mesa (OpenGL/Vulkan) | VA-API Video   β”‚
β”‚ 3. AUDIO SUBSYSTEM:   PipeWire | WirePlumber | ALSA / Pulse β”‚
β”‚ 4. DISPLAY MANAGER:   SDDM / GDM (Wayland Greeter)          β”‚
β”‚ 5. COMPOSITOR & GUI:  KWin / Plasma 6 | Mutter / GNOME      β”‚
β”‚ 6. APPLICATIONS:      Native Wayland & XWayland fallback    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

1. Graphics Drivers & Hardware Acceleration (GPU Setup)

Before installing graphical interfaces, the appropriate driver for your graphics processor (GPU) must be set up. This ensures that 3D rendering (OpenGL/Vulkan) and hardware video decoding (VA-API) run efficiently directly on the GPU.

Identify Graphics Card

Determine the exact type of your graphics chip with lspci:


lspci -k | grep -A 3 -E "(VGA|3D)"

The output shows the manufacturer (Intel, AMD, Nvidia) and the currently loaded kernel module.

Option A: Intel Graphics (Integrated GPUs)

For Intel HD/UHD/Iris/Arc graphics cards, the open-source Mesa stack provides the best support:


# Install Mesa drivers, Vulkan, and video hardware acceleration
sudo pacman -S \
  mesa \
  vulkan-intel \
  intel-media-driver \
  libva-utils
  • mesa: Free 3D graphics drivers (OpenGL/Vulkan).
  • vulkan-intel: Vulkan interface for modern games and compositor rendering.
  • intel-media-driver: Modern hardware video acceleration (VA-API) for Broadwell CPUs and newer.

Option B: AMD Radeon Graphics

AMD graphics cards use the native kernel driver amdgpu in combination with the Mesa Vulkan RADV driver:


sudo pacman -S \
  mesa \
  vulkan-radeon \
  libva-mesa-driver \
  mesa-vdpau \
  libva-utils
  • vulkan-radeon: The performant RADV Vulkan driver.
  • libva-mesa-driver: Hardware video decoding via VA-API.

Option C: NVIDIA Graphics

For modern Nvidia graphics cards (Turing, Ampere, Ada Lovelace, Blackwell), the official proprietary driver or the open-source kernel module driver is available.

For the official standard kernel (linux):


sudo pacman -S \
  nvidia-open \
  nvidia-utils \
  nvidia-settings \
  libva-nvidia-driver

(Note: On older GPUs before the GTX 16xx/RTX series, use the nvidia package instead of nvidia-open.)

Enable DRM Kernel Mode Setting (KMS) for Wayland: To ensure Wayland compositors start flicker-free with Nvidia drivers, enable Direct Rendering Manager (DRM) KMS. Create the file /etc/modprobe.d/nvidia.conf:


options nvidia_drm modeset=1 fbdev=1

Add the Nvidia modules to /etc/mkinitcpio.conf:


MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)

Regenerate the initramfs:


sudo mkinitcpio -P

2. Audio Subsystem: PipeWire & WirePlumber

PipeWire is the modern standard for audio and video processing under Linux. It completely replaces PulseAudio, ALSA userspace, and JACK, offering extremely low latencies with native Bluetooth audio support.

Install the complete PipeWire stack:


sudo pacman -S \
  pipewire \
  pipewire-audio \
  pipewire-alsa \
  pipewire-pulse \
  pipewire-jack \
  wireplumber \
  pavucontrol
  • pipewire-pulse: Provides a drop-in replacement interface for PulseAudio applications.
  • pipewire-alsa: Forwards traditional ALSA audio requests to PipeWire.
  • pipewire-jack: Enables professional low-latency audio applications (DAWs).
  • wireplumber: The modular session and policy manager for PipeWire.
  • pavucontrol: Graphical volume mixer for level and source selection.

πŸ’‘ Activation: PipeWire is managed as a systemd user service. It starts automatically on your user's first graphical login via environment variables and D-Bus.

3. Display Manager: SDDM (Simple Desktop Display Manager)

The display manager starts the login screen (greeter), authenticates your user, and hands the session to the Wayland compositor. For KDE Plasma, SDDM is the standard recommendation.

Install SDDM and Qt6 graphics libraries:


sudo pacman -S sddm qt6-svg qt6-declarative

Configure SDDM for Wayland Mode

By default, SDDM still starts on an X11 backend. Configure SDDM so the login screen runs natively under Wayland:

Create /etc/sddm.conf.d/10-wayland.conf:


[General]
DisplayServer=wayland
GreeterEnvironment=QT_WAYLAND_SHELL_INTEGRATION=layer-shell

[Wayland]
CompositorCommand=kwin_wayland --no-global-shortcuts --no-lockscreen --locale1

Enable the SDDM systemd service:


sudo systemctl enable sddm.service

4. Desktop Environment: KDE Plasma 6 (Wayland)

KDE Plasma 6 is an extremely performant, modern, and customizable desktop environment with first-class Wayland and multi-monitor support.

Install Core Desktop & Base Applications

Install the minimal but complete Plasma Wayland suite including important tools:


sudo pacman -S \
  plasma-desktop \
  plasma-workspace \
  plasma-nm \
  plasma-pa \
  kscreen \
  powerdevil \
  kde-gtk-config \
  breeze-gtk \
  konsole \
  dolphin \
  ark \
  kate \
  spectacle \
  gwenview \
  xdg-desktop-portal \
  xdg-desktop-portal-kde \
  xorg-xwayland

Explanation of key components:

  • plasma-nm: Applet for graphical management of network and Wi-Fi connections in the system tray.
  • plasma-pa: Volume control for the panel (PipeWire integration).
  • kscreen: Intelligent multi-monitor and resolution management.
  • powerdevil: Power management for laptops and desktops (standby, display dimming).
  • xdg-desktop-portal-kde: Enables Wayland features like screen sharing (e.g., in browsers, Discord, or OBS) and file dialogs for Flatpak/native apps.
  • xorg-xwayland: Compatibility layer so older applications that do not yet support native Wayland are seamlessly rendered.

High-Quality Fonts & Fontconfig

Without proper font packages, fonts appear pixelated or special characters (emojis, East Asian characters) are displayed as placeholder rectangles ("tofu"):


sudo pacman -S \
  noto-fonts \
  noto-fonts-cjk \
  noto-fonts-emoji \
  ttf-dejavu \
  ttf-liberation

Update the system font cache:


fc-cache -fv

5. Essential Desktop Services & Hardware Integration

To ensure peripherals like Bluetooth headphones, smartphones, printers, and external storage media work smoothly, we enable the corresponding systemd services.

Set Up Bluetooth Support


# Install Bluetooth service and Plasma integration
sudo pacman -S bluez bluez-utils bluedevil

# Permanently enable Bluetooth daemon
sudo systemctl enable --now bluetooth.service

File Manager Extensions & Smartphone MTP

So the file manager Dolphin can generate thumbnails for videos, PDFs, and images, and mount smartphones via USB:


sudo pacman -S \
  kdegraphics-thumbnailers \
  ffmpegthumbs \
  kimageformats \
  gvfs \
  gvfs-mtp \
  kio-extras \
  kio-fuse

Browser & Multimedia Codecs

Install a web browser and complete GStreamer and FFmpeg codecs for uninterrupted media playback:


# Install web browser
sudo pacman -S firefox firefox-i18n-de

# Codecs for video and audio playback
sudo pacman -S ffmpeg gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav

6. First Boot & System Verification

All required components, drivers, and services are installed and configured.

Restart the system:


sudo reboot

The First Graphical Login

  1. After BIOS/UEFI boot, the graphical SDDM login screen appears.
  2. Select Plasma (Wayland) as the session type in the lower left.
  3. Enter the password of your unprivileged user and log in.

Verify Wayland and Graphics Acceleration

Open the terminal Konsole (Ctrl+Alt+T or from the start menu) and check the session parameters:


# 1. Check if the session runs natively on Wayland
echo $XDG_SESSION_TYPE
# Expected output: wayland

# 2. Check hardware 3D acceleration
glxinfo -B | grep -E "(OpenGL renderer|Direct rendering)"
# Expected output: Direct rendering: Yes, Renderer: Mesa Intel/AMD/Nvidia

# 3. Check audio status
wpctl status

If echo $XDG_SESSION_TYPE returns the value wayland and audio output works, your modern Arch Linux desktop is perfectly set up!

Desktop Stack Component Overview

Component Installed Packages Function
Graphics Drivers mesa, vulkan-*, intel-media-driver / nvidia-open Hardware acceleration
Audio Server pipewire, wireplumber, pipewire-pulse Latency-free audio & Bluetooth
Display Manager sddm (Wayland mode) Login greeter & session start
Desktop GUI plasma-desktop, dolphin, konsole KDE Plasma 6 user interface
Compatibility xorg-xwayland, xdg-desktop-portal-kde Legacy apps & screen sharing
Hardware Services bluetooth.service, NetworkManager.service Connectivity & peripherals

Further Resources

Arch Linux: Best Practices and Tips for System Maintenance Arch Linux: System Hardening and Security – Best Practices Arch Linux: Advanced Security Features and Maintenance Pacman: The Comprehensive Guide Arch Wiki: KDE Plasma Documentation Arch Wiki: Wayland Guide

Conclusion

With the setup of KDE Plasma 6 based on Wayland, PipeWire, and modern Mesa drivers, you have transformed your Arch Linux system into a powerful, modern desktop workstation. Through the deliberate modular selection of each package, your system remains free of unnecessary meta-packages and bloatware.

Wayland ensures smooth refresh rates without tearing and offers a significantly improved security architecture compared to the classic X11 server, as applications can no longer freely intercept inputs or screen contents of other windows. Combined with the modern PipeWire audio stack, you are well-equipped for demanding multimedia and productivity tasks.

πŸ’‘ Practical tip: When encountering Wayland issues with older proprietary applications, ensure xorg-xwayland is installed. Many legacy programs use XWayland as a seamless bridge, while modern apps run natively and isolated on Wayland.

In the next article of our series, we address long-term operational reliability: In Arch Linux: Best Practices and Tips for System Maintenance we set up automated BTRFS snapshots with Snapper, automate mirror server maintenance, and establish a low-maintenance care workflow.

Share & export

Export as Markdown