You know what they say – “if it ain’t broke, don’t fix it”.
Let them talk.
Of course, if you’re perfectly happy with your operating system, there’s no need to spend too much time tinkering with it, especially if you’re trying to be productive.
Still, one of the best things about open source software (and Linux in general) is that you can easily change anything you want: from replacing default applications with better alternatives to editing the source code. Don’t like the default file manager that came with your distro? Just install another one. The same applies to music players, Web browsers, and text editors, but also to fundamental components of a Linux distribution, like the desktop environment or the kernel.
One such component is a display manager.
What Is a Display Manager?
Sometimes referred to as a “login manager”, a display manager is responsible for starting the display server and loading the Linux desktop after you type in your username and password. Simply put, it controls user sessions and manages user authentication. For the most part, a display manager performs its magic “under the hood”, and usually the only element you’ll see is the login window, also known as the “greeter”.
It’s crucial to remember that a display manager is not the same thing as a window manager or a display server. All three components interact with each other, but they don’t have the same functionality, so the terms should not be used interchangeably. Examples of a window manager are KWin, Openbox, and dwm, while some well-known display servers for Linux include Wayland, Mir, and X.Org.
Why Replace a Display Manager?
Why would anyone want to replace a display manager, you ask? Well, here are a few probable scenarios:
- you’re trying to revive an old PC and you need a lightweight display manager
- your current display manager breaks after an update, and it’s much faster to just install a different one than migrate to another distro
- you want to apply gorgeous themes to your login window, but your distro’s default display manager is limited in this respect.
There are several popular display managers for Linux. You’ll notice they’re quite similar in appearance; the main differences lie in their size, complexity, and the way they manage users and sessions.
Like all other things KDE, KDM offers plenty of features and customization options. You can easily configure it via the control module in System Settings. There you can choose which KDM theme to use, or switch to the simple greeter that lets you customize the background, welcome message, and font.
You can enable fast user switching, display the user list, enable root shutdown, allow passwordless login and autologin. KDM can also prevent shutdown from its greeter window, so that only logged-in users can turn off the computer. If your hardware supports different authentication methods such as fingerprint scanning, KDM can recognize and manage this feature. It automatically detects installed desktop environments and window managers, and offers them in a list of sessions, so you can choose which one to start when you type in your username and password.
KDM supports both X.Org and Wayland, but in KDE Plasma 5 it is replaced by SDDM, so you’ll find it as the default display manager only in older versions of KDE. Of course, you can install it anywhere, but be aware that it has plenty of KDE-related dependencies (such as kde-runtime, which itself requires a lot of packages).
Though some of its features might overwhelm a beginner, KDM is actually very easy to set up thanks to the straightforward graphical dialog. You don’t have to edit any configuration files and wonder what each line in them represents. If you’re not happy with KDM themes from KDE-Look.org, creating new ones from scratch is relatively simple – just follow the official documentation.
GDM (Gnome Display Manager)
What KDM is to KDE, GDM is to Gnome – the default display manager of a big and popular Linux desktop environment. Just like KDM, it supports X and Wayland, automatic login, hiding the user list, passwordless login, custom sessions, and themes. It’s also possible to have multiple users logged in at the same time and perform fast-switching between their sessions.
Configuring GDM can be done either via the dedicated dialog in System Settings or by editing configuration files (depending on the distribution you use, it can be
/etc/gdm/gdm.conf). GDM also stores some configuration keys in dconf database, so if you’re into advanced tweaking or you need options like fingerprint scanning and smart card authentication, you can check out the files in
It’s important to note that GDM went through a serious redesign in Gnome 3/Gnome Shell, so the new version of GDM (usually referred to as GDM3) is quite different than old, “legacy” GDM, even though it might not seem so on the surface. It’s not backward-compatible with legacy GDM themes and it has fewer features. Most of its options are hidden away in configuration files and are not accessible from graphical dialogs.
Managing the user list is less convenient, too, because you can’t just edit a file, as GDM3 relies on AccountsService for information about users. You can still customize its appearance by editing the
/etc/gdm3/greeter.gconf file or try to tune it with third-party tools like GDM3setup.
MDM (Mint Display Manager)
Created by the developers of Linux Mint and Cinnamon desktop environment, MDM first appeared in Linux Mint 13 (Maya) as the default display manager. It was initially based on the “legacy” GDM 2.20 and envisioned as an alternative to new, redesigned GDM3 for users who wanted the old display manager back.
However, already in September of 2013 it was radically redesigned and slimmed down, losing several features in the process, including remote login and executing custom commands. Some features were removed from the configuration dialog, but can still be found and modified in the
SLiM (Simple Login Manager)
The clue is in the name: SLiM aims to be, you guessed it, a light display manager with minimal dependencies that automatically detects available desktop environments. It’s easy to configure via the
/etc/slim.conf file. SLiM doesn’t have too many options (for example, it doesn’t support remote login), but it has all the essentials: autologin, Num Lock toggle, custom welcome message, and support for themes. Sadly, SLiM is no longer updated, so if you run into a deal-breaking bug, don’t expect a fix for it anytime soon.
SDDM (Simple Desktop Display Manager)
SDDM is a new face on the display manager scene: it was released in 2013, supports X and Wayland, relies on QML theming, and it’s already proved itself worthy enough to replace the old, trustworthy KDM as the default display manager in Plasma 5.
As with other no-frills display managers, you can configure SDDM by editing a file, namely
/etc/sddm.conf. There you can enable automatic login, turn Num Lock on, modify which users are displayed on the greeter (login window), and change themes. There’s another way: if you’re using SDDM on KDE, it has a configuration module in System Settings, and there’s also a handy utility called sddm-config-editor.
LXDM is part of the LXDE environment, and it used to be the default display manager of Lubuntu until version 12.04. You can install it on any other desktop environment, though, since it doesn’t have many dependencies. You can set it up through its own configuration utility, or edit configuration files in
/etc/lxdm (or if you’re on Lubuntu,
Either way, you’ll be able to turn off user list, allow autologin, choose face icons for each user, and enable user switching. It also supports timed autologin (the system logs in automatically after the selected amount of time) and custom background images.
Both the official documentation and unofficial witness accounts on various forums note that LXDM doesn’t terminate user processes on logout, so you need to modify the
/etc/lxdm/PostLogout file if you want it to work like other display managers. LXDM might be quirky, but it’s quite fast, so if that’s an acceptable trade-off for you, feel free to try it out.
When it was introduced as the new default display manager for Ubuntu 11.10, LightDM was praised as the lightweight alternative to GDM. Apart from X.Org, it also supports Canonical’s Mir display server, so it’s obvious why Ubuntu opted for it. LightDM is customizable and featureful, but it doesn’t lock you down with a bunch of dependencies.
To fit in well with different desktop enivronments, LightDM offers separate greeter packages: there’s one for GTK, one for Qt/KDE, a special greeter for Unity, and a few more. Depending on the greeter you use, you can apply different themes to LightDM and further tweak the look of your login screen.
In case you want to disable the guest account, show the user list on the login screen, change the background image and window position, you can edit the LightDM configuration files, which should be in
/etc/lightdm/, with separate files for each installed greeter in
/etc/lightdm/lightdm.conf.d/. Users of Ubuntu and derivatives who subscribe to the GUI-only philosophy can install a handy tool called LightDM GTK Greeter Settings, and a control module for KDE’s System Settings is also available.
How to Replace a Display Manager on Linux?
There are two steps to replacing your current display manager on Linux: installing a new one and setting it up as the default. The first part of the process is easy, as you only have to find the appropriate package for your distribution and install it. You can remove the old display manager if you want to, but in most cases it won’t be necessary (and if your package manager wants to remove the entire GNOME environment along with GDM, you obviously won’t go through with it).
Setting up the new display manager as the default is different for each distribution, but it boils down to editing a few configuration files or running a simple one-liner in the terminal. This short guide assumes you’ve already installed the desired display manager and now you only have to make sure it loads properly on next reboot.
For Ubuntu, Linux Mint, and most Ubuntu derivatives:
sudo dpkg-reconfigure gdm and select the default display manager in the dialog that pops up. You can replace “gdm” with any of the display managers that are currently installed on your system. If this fails, you can edit the
/etc/X11/default-display/manager file with root privileges.
For Arch Linux and Manjaro:
Enable the systemd service for your new display manager using
systemctl enable displaymanager.service -f
If this doesn’t work, Manjaro users can try disabling the previous display manager first:
sudo systemctl stop gdm
sudo systemctl disable gdm
sudo systemctl enable lightdm.service
sudo systemctl start lightdm
while on Arch Linux you might have to remove the
/etc/systemd/system/default.target file, and create a
display-manager.service file in the
/etc/systemd/system directory. This new file should be a symlink to your new display manager’s service file in
The advice in this section applies to new versions of Fedora as well (from Fedora 14 onwards). You can also change your display manager on Fedora with a practical tool called system-switch-displaymanager.
The procedure is similar to Ubuntu: replace the path to your old display manager to the new one in
/etc/X11/default-display-manager. You have to edit the file as root. Alternatively, run
sudo dpkg-reconfigure yourdisplaymanager and choose the new display manager.
You should be able to select your new display manager from the dialog in Control Center > Boot > Set up display manager. If the system doesn’t acknowledge the changes, try editing the
/etc/sysconfig/desktop file, where you can set the preferred display manager.
You can edit the
/etc/sysconfig/displaymanager file or use the Sysconfig Editor module in YaST to access settings for Desktop > Display Manager. Your new display manager should activate on next reboot.
Other distributions shouldn’t require activities too different from those described here, especially if they’re based on distros mentioned in this list. If a distribution is using systemd, chances are the instructions for Arch, Manjaro, and Fedora will work for it as well.
Depending on the display manager you’ve installed, now you can have some fun with themes. MDM is the best choice if customization is your priority, since it supports both old GDM and new HTML themes. You can find them on LinuxMint-Art and Gnome-Look.org. DeviantART features a neat collection of themes for various display managers, and if you’re using SDDM, you can find theme packages for it in the repositories.
As you’ve seen, replacing a display manager is not as hard as it sounds. Once you start reading more about their features, you might be tempted to test a few different display managers in search of the best one – and I encourage you to do so.
You don’t have to wait for software to “break” before trying out something new.
Have you ever had to replace a display manager? Which one did you choose, and why? Tell us all about it in the comments.
Image Credits: gdm-session by Mark Mrwizard via Flickr, MDM Prairie Theme, Pantheon Greeter screenshot via Linux Mint Forums, SDDM screenshot and LXDM screenshot via Manjaro Wiki, LightDM Webkit Google Theme, LightDM-KDE Settings by David Edmundson.