seatd and libseat
is a minimal seat management daemon, and a universal seat management library, respectively.
Supports Linux and FreeBSD, and depends only on libc if logind support is disabled.
libseat provides a simple API for seat management to be used by user shells. It provides rootless seat management through (e)logind and seatd, and rooted standalone seat management through an embedded seatd instance.
All backends are transparent to the user shell, support runtime selection and auto-detection, and can be compile-time enabled/disabled.
seatd is a daemon for providing rootless seat management in a multi-seat, multi-session environment.
It's what logind could have been if focus was portability, modularity, minimalism and maintainability.
Refer to the seatd(1)
manpage as well as the libseat header file for more information.
A service that mediates access to shared devices (inputs, graphics) in a rootless manner.
The "seat" refers to the literal seat of the user, around which the user input/output devices are located.
Multi-session refers to the ability to switch between sessions on a seat. Multi-seat refers to the ability of having multiple seats on a machine with each their own isolated sessions.