greetd(1)

๐Ÿ’– greetd ๐Ÿ’–

okay bestie, so this is greetd(1) โ€” the General Commands Manual page for greetd โ€” and you're gonna slay this, i promise ๐Ÿซถ


โœจ NAME โœจ

greetd โ€” literally a login manager daemon. that's the whole vibe. ๐Ÿ‘‘


๐ŸŒธ SYNOPSIS ๐ŸŒธ

greetd [options]

๐ŸŽ€ OPTIONS ๐ŸŽ€

  • -h, --help โ€” shows the help message and dips out. quit. gone. ๐Ÿ’…
  • -c, --config <config> โ€” tells it which configuration file to use. you're the one picking the file, main character energy fr.
  • --vt <vt> โ€” the VT to use, and it overwrites the value from the configuration file. super useful when you're starting one instance per VT and greetd can't deduce the intended VT from an associated controlling terminal. iykyk ๐Ÿ˜ญ

๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

so like, greetd was created to fill the need for a simple login manager that makes no assumptions about the applications it starts โ€” which is why it's equally suitable for starting console sessions, Wayland sessions, or something else entirely. it does not care. it's not judging. it's just vibing. โœจ

and ngl, greetd doesn't itself interact with the user โ€” it relies on an external greeter process like agreety(1) to handle that aspect. so greetd is the backstage manager and the greeter is the one on stage. iconic division of labor tbh ๐ŸŽญ


๐Ÿ’œ OPERATION ๐Ÿ’œ

greetd operates on sessions. a greeter creates a session, attempts to authenticate a user in it, and finally uses it start an arbitrary application. that's the whole loop, periodt.

there are two types of preconfigured sessions, and you need to know both:

  • The default session, also known as the greeter ๐Ÿ‘‘
  • The optional initial session, serving the purpose of "auto-login" ๐Ÿšช

the initial session, if configured, is started once when greetd launches. the default session is started on launch if an initial session is not configured, and started again whenever no session is running, such as when the user logs out. so the default session is the one who's always there for you ๐Ÿ˜ญ๐Ÿ’–

an IPC socket is exposed to this greeter, as reported by GREETD_SOCK. the greeter can use this to create, authenticate and finally start a session. for more information about the IPC layer, see greetd-ipc(7). (yes, you have homework. go read it. ๐Ÿ’€)

once the greeter has requested the start of a session and terminated itself, greetd will start the new session. once this session terminates, the process starts over. circle of life ๐Ÿฆ‹

and again โ€” greetd makes no assumptions about any sessions, including the greeter. they can be text-based, running in the active console, or full-on graphical environments. no cap, it does not care what you throw at it ๐Ÿ”ฅ


๐ŸŒˆ CONFIGURATION ๐ŸŒˆ

greetd looks for a configuration file in /etc/greetd/config.toml by default. this can be overriden with a command-line argument. ๐ŸŽ€

for information on the config file format, see greetd(5).


โญ AUTHORS โญ

maintained by Kenny Levinsen <contact@kl.wtf>. for more information about greetd development, see https://git.sr.ht/~kennylevinsen/greetd. give them a follow, they ate ๐Ÿ’…โœจ


๐Ÿงš SEE ALSO ๐Ÿงš

greetd(5) greetd-ipc(7)


bestie if you're still confused just re-read OPERATION, it's giving "read it twice and you'll get it", i promise ๐Ÿซถ

and that's a wrap! this page is dated 2025-02-06, it's page greetd(1) of the General Commands Manual, and it's bringing the source/version energy right to your terminal. now go log in somewhere and be iconic ๐Ÿ’–๐ŸŽ€๐ŸŒธ

๐Ÿ“ฆ where this page comes from