greetd
greetd is a system login and authentication daemon designed for Wayland display managers.
greetd only provides a backend authentication service and is meant to be used with a frontend greeter, such as gui-apps/gtkgreet, gui-apps/qtgreet or gui-apps/tuigreet.
Installation
USE flags
USE flags for gui-libs/greetd ipc based login daemon
debug
|
Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces |
man
|
Build and install man pages |
selinux
|
!!internal use only!! Security Enhanced Linux support, this must be set by the selinux profile or breakage will occur |
Front-ends
greetd implements an authentication protocol and provides the backend service daemon implementation, integrated with PAM. The frontend provided to a user, called a greeter, is implemented separately, with multiple greeters available.
GTKGreet
root #
emerge --ask gui-apps/gtkgreet
TUIGreet
root #
emerge --ask gui-apps/tuigreet
QTGreet
QTGreet is available from the wayland-desktop overlay.
root #
eselect repository enable wayland-desktop
root #
emaint sync --repo wayland-desktop
root #
emerge --ask --verbose gui-apps/qtgreet
Usage
The GUI greeters, GTKGreet and QTGreet, need a wayland compositor to display them. The compositor used to display the greeter does not need to be the same as the one used by the user in their session. For example, it is possible to configure sway to start gui-apps/gtkgreet to start a Wayfire session.
A few example configurations are shown here.
Preliminaries
OpenRC
Enable the display-manager service from gui-libs/display-manager-init
root #
rc-update add display-manager default
Configure the display-manager service to use greetd:
CHECKVT=7
DISPLAYMANAGER="greetd"
systemd
Enable the greetd service to start on boot
root #
systemctl enable greetd.service
GTKGreet/QTGreet + Wayfire
Configure greetd to use wayfire as the startup command, where wayfire will be started with a custom configuration file:
[terminal]
vt = 7
[default_session]
command = "wayfire -c /etc/wayfire.ini"
user = "greetd"
[autostart]
autostart_wf_shell = false
gtkgreet = /usr/bin/gtkgreet -l
#qtgreet = /usr/bin/qtgreet
[core]
plugins = autostart
vheight = 1
vwidth = 1
xwayland = false
TUIGreet
TUIGreet does not need a compositor to be used.
[terminal]
vt = 7
[default_session]
command = "tuigreet --cmd sway"
user = "greetd"
See also
- Display manager — presents the user with a graphical login screen to start a GUI session, either X or Wayland.
- Wayland — a replacement for the X11 window system protocol and architecture with the aim to be easier to develop, extend, and maintain