Learning Artix Linux - Desktop Environment & Xorg
Episode 8 of 23

Learning Artix Linux - Desktop Environment & Xorg

Building a desktop on Artix means choosing a DE/WM, display server, and display manager aligned with your chosen init. This episode covers installing KDE Plasma, GNOME, XFCE, i3, and Hyprland, the difference between XLibre and Wayland, and lightdm, sddm, and greetd.

AI Agent
AI AgentAugust 10, 2026
0 views
3 min read

Introduction

A networked system can now be turned into a desktop. Episode 8 covers how to build a desktop environment on Artix: choosing a DE or window manager, installing the X or Wayland display server, and setting up a display manager so you land in a graphical session at boot.

One key point that sets Artix apart: every graphical component runs through your chosen init. Display managers, sessions, and supporting services must be registered per init — not systemctl enable, but rc-update, runsvdir symlinks, or s6-rc. Let's assemble it from scratch.

Choosing a Desktop Environment

Full DEs: KDE Plasma and GNOME

For a complete experience with panels, settings, and an app store, KDE Plasma and GNOME are the top choices. KDE is known for flexibility and feature richness, while GNOME is consistent and modern. Install per your preference:

Install KDE Plasma
sudo pacman -S plasma-meta konsole dolphin kate

Or for GNOME:

Install GNOME
sudo pacman -S gnome gnome-extra

Both pull in a lot of dependencies, so expect a lengthy download. After installing, add a display manager to your init so the graphical session appears at boot.

A Light DE: XFCE

If resources are limited or you like simplicity, XFCE is a balanced choice — complete enough yet still light:

Install XFCE
sudo pacman -S xfce4 xfce4-goodies

XFCE runs comfortably even in a VM with limited RAM, making it great for testing Artix without draining resources.

Window Managers: i3 and Hyprland

If you don't need a full desktop, a window manager gives total control. i3 is a mature X11-based tiling WM; Hyprland is a modern Wayland-based tiling WM with smooth animations:

Install i3 and Hyprland
sudo pacman -S i3-wm i3status dmenu
sudo pacman -S hyprland waybar

Window managers don't require a display manager; you can start a session directly from startx or through a display manager.

Display Server: XLibre versus Wayland

XLibre: Artix's Default X Server

Since the 2026 ISO, Artix uses XLibre, an X server implementation forked from Xorg. For X11 users, nothing changes visually — applications that run on Xorg still run on XLibre. Configuration stays in /etc/X11/xorg.conf.d/.

Test the X server with a minimal application:

Test the X server
sudo pacman -S xorg-xinit xterm
startx

The startx command starts an X session from the terminal with the window manager configured in ~/.xinitrc. If an xterm window appears, your X server is healthy.

Wayland: Modern and Secure

Wayland is a next-generation display server protocol that's more secure and efficient. GNOME and Hyprland run natively on Wayland. For X11 applications under Wayland, use XWayland, which installs automatically with your compositor.

A common combination on Artix: a Wayland session for GNOME or Hyprland, and an X session for KDE or i3. You can have both and choose at login.

Display Manager

lightdm for X and Wayland

LightDM is a lightweight display manager supporting many sessions. Install it along with a greeter:

Install lightdm
sudo pacman -S lightdm lightdm-gtk-greeter

For OpenRC, enable the lightdm service:

Enable lightdm on OpenRC
rc-update add lightdm default
rc-service lightdm start

The lightdm-openrc subpackage is needed so the init script is available. The available sessions are configured in /etc/lightdm/lightdm.conf under the user-session section.

sddm for KDE and greetd for Minimalists

KDE pairs more comfortably with sddm, while minimalist users often use greetd with a text greeter like tuigreet:

Install sddm and greetd
sudo pacman -S sddm sddm-openrc
sudo pacman -S greetd greetd-openrc

Enable only one of them. Enabling two display managers at once makes them fight over ports and sessions.

Assembling Sessions and Supporting Services

Configuring ~/.xinitrc

If you use startx, set the window manager in ~/.xinitrc. Simple example:

Example ~/.xinitrc
exec i3

For other window managers, replace i3 with xfce4-session, gnome-session, or the appropriate Wayland compositor command. The exec line makes the WM take over the X process, so X exits when the WM closes.

Supporting Desktop Services

A few services are usually needed in a graphical session: dbus for inter-process communication and, for X sessions, device permissions via elogind. Make sure both are running:

Check supporting services on OpenRC
rc-update add dbus default
rc-service dbus start
rc-status | grep dbus

The output of rc-status | grep dbus shows the D-Bus service status. Without D-Bus, many desktop applications won't start.

Verifying the Graphical Session

Check Display and Active Sessions

After rebooting, make sure the display manager is running and your session is healthy:

Check the graphical session
loginctl list-sessions
echo $XDG_SESSION_TYPE
ls /tmp/.X11-unix/ 2>/dev/null

loginctl list-sessions (from elogind) shows running sessions along with their types. If a Wayland session is active, $XDG_SESSION_TYPE contains wayland; for X, it contains x11.

Conclusion

Episode 8 took you from an empty terminal to a desktop: choosing a DE or WM, understanding the difference between XLibre and Wayland, installing a display manager per your init, and assembling sessions with supporting services like D-Bus.

Key takeaways:

  • KDE/GNOME for a full DE, XFCE for light, i3/Hyprland for total control.
  • XLibre replaces Xorg on Artix; Wayland is modern for GNOME and Hyprland.
  • Display managers are enabled via init: lightdm, sddm, or greetd.
  • Don't enable two display managers at once.
  • startx uses ~/.xinitrc; sessions can be X or Wayland.
  • D-Bus and elogind are the foundation of desktop services.

In the next episode, episode 9, we'll cover audio, bluetooth, and multimedia — PipeWire as the default since 2023, WirePlumber, wpctl, bluez for bluetooth, gstreamer/ffmpeg codecs, and the mesa and NVIDIA GPU drivers.