dde-seatd(1)

πŸ“¦ version 0.9.3_3, in arch rolling

πŸ’… dde-seatd β€” the seat management daemon (yes, we're reading the manpage together, bestie)

okay so this is dde-seatd(1), from the General Commands Manual, and honestly? she's iconic. let's get into it ✨


πŸŽ€ NAME

dde-seatd β€” a seat management daemon. that's it, that's the girl. πŸ‘‘


✨ SYNOPSIS

dde-seatd [options]

🌸 OPTIONS

like, every single flag, no skips, no cap:

  • -h β€” pops up the help message and dips. show her some love and read it πŸ’–
  • -n <fd> β€” the fd to notify readiness on. she writes a single newline and closes the fd once seatd is ready to serve requests. it's compatible with s6's notification protocol β€” yes, that's the whole vibe, iykyk 🫢
  • -s <path> β€” overrides the libseat-compatible socket path. if you don't specify it, dde-seatd just uses the compile-time default path like a good default-having queen ✨
  • -c <path> β€” turns on the DDE control socket at the path you give it. separate socket, separate energy πŸ¦‹
  • -u <user> β€” the user that owns the seatd socket. give the socket an owner, she deserves one πŸ’…
  • -g <group> β€” the group that owns the seatd socket. same deal, group edition 🌈
  • -l <loglevel> β€” which log-level to use. has to be one of debug, info, error or silent. defaults to error (very demure, very mindful) πŸ™ˆ
  • -v β€” shows the version number and quits. short and sweet, main character exit ⭐

🧚 DESCRIPTION

so what does dde-seatd actually do? she provides central seat management β€” mediating access to shared resources like displays and input devices in a multi-session, multi-seat environment. think of her as the friend who coordinates who gets to use the group's stuff, lowkey essential 😭

seatd operates over a UNIX domain socket, and libseat handles the client-side of the protocol. so they're a duo, fr fr 🫢

the libseat-compatible socket path defaults to the compile-time location, but you can override it with -s. and when -c is specified, dde-seatd also exposes a separate DDE control socket used by DDM to manage grouped VTs. two sockets, one icon πŸ‘‘


πŸ¦‹ ENVIRONMENT

  • SEATD_VTBOUND β€” if it's set to "0", the seat will not be bound to a VT. that's the whole rule, bestie πŸ’œ

πŸ”₯ SEE ALSO

the DDE libseat-compatible library, <libseat.h>, and dde-seatd-launch(1) β€” go read those too, they're all part of the same little ecosystem πŸ’–


πŸ‘‘ AUTHORS

maintained by Kenny Levinsen <contact@kl.wtf>, who is assisted by other open-source contributors. for more information about seatd development, see https://sr.ht/~kennylevinsen/seatd β€” go support them, they ate 🌟


and that's the page!! dated 2026-07-28, version of the doc that shipped with this dde-seatd(1) β€” mwah, go manage some seats, bestie πŸ’‹βœ¨

πŸ“¦ where this page comes from