Login Manager
Last updated: 2024, Wed Jun 5th at 14:57 CDT
Login managers are originally called display managers. These programs prompt for a user name and password. and allows the user to change the session type. These instructions are based on systemd distros if you use a different init system consult its documentation.
Greetd #
Greetd is a minimal, agnostic and flexible login manager. It is a login daemon which supports both console and graphical greeters. When installed, greetd comes with a simple basic text based greeter called agreety. You can change this by adding a different greeter.
sourcehutTo Install: #
Preferred method
Greetd can be installed though your package manager, additional greeters may require other steps.
sudo pacman -S greetd
AUR: greetd-git
sudo apt install greetd
sudo dnf install greetd
sudo zypper in greetd
Build Instructions #
If you need to compile it, then follow official documentation.
Essentials #
To setup greetd, start by editing /etc/greetd/config.toml
, by default this config opens the default shell, --cmd /bin/sh
once logged in.
[terminal]
vt = 1
[default_session]
command = "agreety --cmd /bin/sh"
user = "greeter"
by changing /bin/sh
to sway
or Hyprland
it will launch the respective program. If your using a different greeter other then agreety then the command = ""
may differ, check their documentation. You can setup auto-login also by configuring an [initial_session]
, instructions can be found on the
wiki or the
Arch wiki.
Once greetd is configured to your liking, you will need to set it to launch on startup. Start by enabling the systemd service.
sudo systemctl enable greetd
After enabling the service it should change to boot target, however if it doesn’t check the
Arch wiki or try changing default.target
with
sudo systemctl set-default graphical.target
Greeters #
A collection of some of the greeters available
- agreety - The simple, text-based greeter that is installed with greetd.
- gtkgreet - The flagship graphical, GTK based greeter
- qtgreet - Qt-based greeter using wlr-layer-shell
- nwg-hello - GTK3-based greeter meant for wlroots compositors
- wlgreet - Wayland greeter using wlr-layer-shell-unstable
- tuigreet - Console UI, or TUI, greeter
- ReGreet - Clean and customizable GTK4 based greeter
- greetd-qmlgreet - Qt6 qml greetd using ext-session-shell
Addition information and guides can be found in the wiki or the Arch wiki.
sddm #
The Simple Desktop Display Manager (SDDM) is a display manager. It is the recommended display manager for the KDE Plasma and LXQt. It is an extremely customizable, modern QT-based manager with the ability to a create smooth animated interface.
GitHubTo Install: #
Preferred method
SDDM should be installed though your package manager.
sudo pacman -S sddm
AUR: sddm-git
sudo apt install sddm
sudo dnf install sddm
sudo zypper in sddm
Essentials #
Once SDDM is configured to your liking, you will need to set it to launch on startup. Start by enabling the systemd service.
sudo systemctl enable sddm
After enabling the service it should change to boot target, however if it doesn’t check the
Arch wiki or try changing default.target
with
sudo systemctl set-default graphical.target
Extras #
Custom Theming
Two easy places to find custom themes is the KDE Store or on GitHub.
SDDM looks for themes in /usr/share/sddm/themes
, place the uncompressed theme in this directory. In order to change the SDDM theme, you need to edit the configuration file /etc/sddm.conf
, change the Current=
, in the [Theme]
. The example has been set to maya below.
[Theme]
Current=maya
If you want or need a preview of the maya theme, use the following command.
sddm-greeter --test-mode --theme /usr/share/sddm/themes/maya
This can be very useful if you want to create your own. Change /usr/share/sddm/themes/maya
to a different directory to preview other themes or your own custom one.
gdm #
The GNOME Display Manager (GDM) is a program that manages graphical display servers and handles graphical user logins. It is a customizable, modern GTK-based manager.
Official SiteTo Install: #
Preferred method
GDM should be installed though your package manager.
sudo pacman -S gdm
sudo apt install gdm3
sudo dnf install gdm
sudo zypper in gdm
Essentials #
Once GDM is configured to your liking, you will need to set it to launch on startup. Start by enabling the systemd service.
sudo systemctl enable gdm
After enabling the service it should change to boot target, however if it doesn’t check the
Arch wiki or try changing default.target
with
sudo systemctl set-default graphical.target
Extras #
Custom Theming
Use gdm-settings to customize GDM, installation instructions can be found on their wiki.
Theme are installed in /usr/share/themes
with a valid gnome-shell.css
file. If you want to customize it more, consult either the
official documentation,
GDM manual, or the
Arch wiki.
emptty #
Emptty is a very simple cli display manager on TTY
GitHubTo Install: #
Preferred method
Its best to build in most case but if available Package managers can be used
Only available in the AUR
AUR: emptty-git
sudo apt install emptty
Build Instructions #
Dependencies may be different then the names listed depending the distro. There are a lot of options when compiling, Consult the installation guide for the dependencies and commands.
Essentials #
To set up and configure emptty, create an emptty
file in the .config
directory. This is an example that launches Sway after login.
Name=Custom Optional Name
Exec=/usr/bin/sway
Environment=wayland
More examples and further details can be found on the GitHub samples page or in the User config section. Once emptty is configured to your liking, you will need to set it to launch on startup. Start by enabling the systemd service.
sudo systemctl enable emptty
After enabling the service it should change to boot target, however if it doesn’t check the
Arch wiki or try changing default.target
with
sudo systemctl set-default graphical.target
Extras #
Custom Theming You can find the configuration options in the README
There are a lot of ways that emptty can be configured. Even though be default it is very basic, this includes MOTD, colors, Autologin, and more.
Other #
There are quite a few different login managers to choose from some that maybe of interest include:
- LightDM = a lightweight, cross-desktop display manager with ssupports remote login and guest sessions
- Web Greeter = a program that allows you to create and use wonderful themes in your Login Manager for LightDM
- Ly = a lightweight TUI (ncurses-like) display manager