Seatd: Difference between revisions

From Alpine Linux
(moved seatd related content to this page from Polkit with relevant link)
Line 12: Line 12:


If you are already logged in as a <code>$USER</code>, you will need to relogin.
If you are already logged in as a <code>$USER</code>, you will need to relogin.
[[Polkit#Using polkit with seatd|Polkit]] can be configured and used for authentication with seatd.


== Configuration ==
== Configuration ==


Ensure that [[XDG_RUNTIME_DIR]] is set before starting your Wayland compositor.
Ensure that [[XDG_RUNTIME_DIR]] is set before starting your Wayland compositor.
== Polkit ==
[[Polkit#Using polkit with seatd|Polkit]] can be configured and used for authentication with seatd with certain limitations. Since seatd doesn't provide detailed session tracking, polkit rules that rely on these properties (e.g., subject.active, subject.local) cannot be evaluated. Hence graphical, session-aware [[Polkit#Authentication agents|polkit authentication agents]] are not supported.
Refer to [[Polkit#Example1|sample polkit rule file]] that works with seatd.


== See also ==
== See also ==

Revision as of 06:52, 25 July 2025

Seatd is a seat management daemon, that does everything it needs to do. Nothing more, nothing less. Depends only on libc. Seat management takes care of mediating access to shared devices (graphics, input), without requiring the applications needing access to be root.

When using elogind, seatd is not required and viceversa. Don't add both to auto-start.

Installation

Install the seatd package and add the seatd service to auto-start using OpenRC:

# apk add seatd # rc-update add seatd # service seatd start

To add the currently logged in user to seat group issue the command:

$ doas adduser $USER seat

If you are already logged in as a $USER, you will need to relogin.

Configuration

Ensure that XDG_RUNTIME_DIR is set before starting your Wayland compositor.

Polkit

Polkit can be configured and used for authentication with seatd with certain limitations. Since seatd doesn't provide detailed session tracking, polkit rules that rely on these properties (e.g., subject.active, subject.local) cannot be evaluated. Hence graphical, session-aware polkit authentication agents are not supported.

Refer to sample polkit rule file that works with seatd.

See also