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.
USE flags for gui-libs/greetd ipc based login daemon
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.
emerge --ask gui-apps/gtkgreet
emerge --ask gui-apps/tuigreet
QTGreet is available from the wayland-desktop overlay.
eselect repository enable wayland-desktop
emaint sync --repo wayland-desktop
emerge --ask --verbose gui-apps/qtgreet
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.
Enable the display-manager service from gui-libs/display-manager-init
rc-update add display-manager default
Configure the display-manager service to use greetd:
Enable the greetd service to start on boot
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 does not need a compositor to be used.
[terminal] vt = 7 [default_session] command = "tuigreet --cmd sway" user = "greetd"
- Display manager — presents the user with a graphical login screen to start a GUI session, either X or Wayland.
- Wayland — a simpler and modern replacement for X display server.