Image default
Tech

How Linux's insanely customizable desktop works

Display-Server WaylandImage: IDG

If you’re using a Linux desktop, the graphical user interface isn’t an integral part of the system, it’s additional software that’s loaded as required. The desktop and everything that goes with it is an independent add-on and consists of several components. This article lists those components and their tasks and provides tips on how to put this knowledge into practice.

Display server: Xorg or Wayland

Among Linux desktops, the X server Xorg still generally works as a display server. The X server is the hardware-related basis of the graphical user interface.

All the components mentioned below are clients that depend on the X server. Xorg is pre-installed on every Linux desktop and runs as standard. Only on pure server systems without an interface (e.g. the Ubuntu server) is Xorg consistently missing, as are all downstream desktop components.

Wayland is still an experimental replacement for the old Xorg in some desktop distributions, optionally in Ubuntu Gnome and already as standard in Fedora. Wayland has a significant, simplifying advantage over the old X server. It combines the functions of the display server (point 1) and the window manager (point 3), including the compositor.

IDG

The system user only sees and operates the client components of the display server: the i.e. display manager (point 2), the window manager (point 3), and the desktop shell (point 4). There’s no contact with the display server, nor is there any need for configuration.

The numerous optimization experiments in the configuration files of Xorg (“/etc/X11/ xorg.conf” and today “/usr/share/X11/xorg.conf.d/”) in earlier decades are generally obsolete today.

Display manager: Lightdm, GDM & Co.

The display manager allows a user to log in and select a desktop if several are installed. Display managers are therefore known as log-in managers. After logging in, the display manager starts the desktop as a subordinate process.

In order for the display manager to start automatically after booting and logging off, it must be set up as a service (e.g. service lightdm start). The most common display managers are Lightdm (Cinnamon, XFCE) and GDM (Gnome) as well as SDDM (KDE, LXQT) and LXDM (LXDE). In principle, however, you’re free to choose which display manager you want to use for each desktop.

Depending on the desktop, some optical settings of the display manager can be adjusted in the system settings under “Login window,” “Login screen,” or an automatic login under “Users & groups.” What is not offered on the graphical user interface can be set by researching the respective display manager in its configuration file (e.g. “/etc/lightdm/lightdm.conf” for Lightdm).

The central role that the display manager claims as a desktop launcher only arises from the modern user expectation of a purely graphical system start. Theoretically, you can completely dispense with the display manager by logging into the console and loading the desired desktop manually–for example, with “startxfce4” (for XFCE). The start commands for the installed desktops can be found in the desktop files under “/usr/share/xsessions” if required.

You may also come across the so-called “Greeter” in the display manager environment. The latter doesn’t really deserve a separate mention, it’s just the graphical face of the display manager. However, greeters are not standardized even for one and the same display manager, but are available in several optical variants. For example, as slick greeter, arctica greeter, ukui greeter, and others.

Tip: Restart the desktop

Gnome, Cinnamon, KDE and so on. All desktops offer commands to exit and reload the desktop in an emergency such as “gnome-shell –re place” (Gnome), “cinnamon –replace” (Cinnamon), or “kquitapp5 plasmashell” (KDE).

If you constantly work with the same desktop, you can probably make friends with the respective action, but for all others we recommend a procedure that always works under the X11 window system:

dm=$(basename “$(cat /etc/X11/default-display-manager)”)
sudo service $dm restart

Here, the display manager is simply determined and then restarted. This also closes the downstream desktop and displays the login window (“Greeter”) again. This also works in the virtual console if the desktop is frozen.

Window manager and compositor

Window managers such as Compiz, Kwin, Marco, Mutter, and Xfwm4 ensure that program windows can be displayed, superimposed, enlarged, reduced, and moved.

They also supplement all displayed program windows with the “window decoration,” which, regardless of the name, contains the indispensable title bar, with all control elements for moving, reducing, and resizing.

The additional compositor is responsible for aesthetic accessories such as animation, transparency, shadow, or 3D effects.

However, the division between window manager and compositor is increasingly being canceled. Compiz (Gnome), Kwin (KDE), and Marco (Mate) are window managers that perform the tasks of the compositor itself.

What a compositor offers in terms of adjustable or switchable effects can, at best, be configured in the system settings of the desktop. For example, Cinnamon (Mint) shows the item “Effects” in the system settings, KDE (Kubuntu) shows the item “Composer” under “Display and monitor,” while Compiz (Gnome) only provides a general setting (“On/Off”) with Gnome tweaks (“General – Animations”). If you want to customize the Compiz Compositor, you’ll need to install the extra tool “CompizConfig Settings Manager.”

Desktop: Gnome, KDE & Co.

IDG

In last place is the actual desktop, a graphical user shell such as Gnome, KDE, Cinnamon, XFCE, etc. The desktop has all the essential operating elements such as system bars, menus, starter docks, and desktop widgets.

Most desktops retain the modularity typical of Linux such as system bars, bar components (the menu), window list, systray standards, and background display. They’re all separate mini programs that can be replaced, sometimes with heterogeneous components from other desktops.

Only Gnome and KDE tend to give themselves a more integral or more hermetic appearance, depending on how you want to interpret this. Other programs that contain a complete desktop environment such as “system settings” or “update management” are decisive for the acceptance of a desktop, but in principle they are software like any other.

This article originally appeared on PC Welt and has been translated from German to English.

Hermann Apfelböck gehört zur Kernmannschaft im Redaktionsbüro MucTec.

Recent stories by Hermann Apfelböck:

What’s new in Linux Mint 21.3 ‘Virginia’

Related posts

Copilot Workspace is GitHub's take on AI-powered software engineering

admin

Add a backup camera to an old car for less than $100

admin

The 23andMe Health + Ancestry test is now $99 (for a 50% saving)

admin

Leave a Comment