Display manager

From Void Linux Wiki
Jump to: navigation, search

A display manager, or login manager, is typically a graphical user interface that is displayed at the end of the boot process in place of the default shell. There are various implementations of display managers, just as there are various types of window managers and desktop environments. There is usually a certain amount of customization and themeability available with each one.
This article was taken partly or wholly, with or without modification from: ArchWiki

List of display managers


  • CDM — Ultra-minimalistic, yet full-featured login manager written in Bash.
https://github.com/ghost1227/cdm || cdm
  • nodm — Minimalistic display manager for automatic logins.
https://github.com/spanezz/nodm || nodm
  • autox — Most-minimalistc, ~150 lines of C, logs in a specified user and runs xinit.
https://github.com/jsumners/autox || autox


https://wiki.gnome.org/Projects/GDM || gdm
  • LightDM — Cross-desktop display manager, can use various front-ends written in any toolkit.
http://www.freedesktop.org/wiki/Software/LightDM || lightdm
  • LXDMLXDE display manager. Can be used independent of the LXDE desktop environment.
http://sourceforge.net/projects/lxdm/ || lxdm
  • SDDM — QML-based display manager and successor to KDE4's kdm; recommended for Plasma 5 and LXQt.
https://github.com/sddm/sddm || sddm
  • SLiM — Lightweight and elegant graphical login solution. (discontinued)
http://sourceforge.net/projects/slim.berlios/ || slim
  • XDM — X display manager with support for XDMCP, host chooser.
http://www.x.org/archive/X11R7.5/doc/man/man1/xdm.1.html || xdm

Loading the display manager

To enable graphical login, enable the appropriate runit service.

For example: we are going to use GDM and for this display manager to work we also need to enable the dbus service:

$ ln -s /etc/sv/gdm /var/service
$ ln -s /etc/sv/dbus /var/service

Session configuration

Many display managers read available sessions from /usr/share/xsessions/ directory. It contains standard desktop entry files for each DM/WM.

To add/remove entries to your display manager's session list; create/remove the .desktop files in /usr/share/xsessions/ as desired. A typical .desktop file will look something like:

[Desktop Entry]
Comment=Log in using the Openbox window manager (without a session manager)

Starting applications without a window manager

You can also launch an application without any decoration, desktop, or window management. For example to launch chromium create a web-browser.desktop file in /usr/share/xsessions/ like this:

[Desktop Entry]
Name=Web Browser
Comment=Use a web browser as your session
Exec=/usr/bin/chromium --auto-launch-at-startup
TryExec=/usr/bin/chromium --auto-launch-at-startup

In this case, once you login, the application set with Exec will be launched immediately. When you close the application, you will be taken back to the login manager (same as logging out of a normal DE/WM).

It is important to remember that most graphical applications are not intended to be launched this way and you might have manual tweaking to do or limitations to live with (there is no window manager, so do not expect to be able to move or resize any windows, including dialogs; nonetheless, you might be able to set the window geometry in the application's configuration files).

See also xinitrc.

Tips and tricks


Most display managers source /etc/xprofile, ~/.xprofile and /etc/X11/xinit/xinitrc.d/. For more details, see xprofile.