pam_systemd: honor session class provided via PAM environment

Replaces #38638

Co-authored-by: Lennart Poettering <lennart@poettering.net>
This commit is contained in:
Michal Sekletar
2025-09-27 04:05:51 +09:00
committed by Yu Watanabe
co-authored by Lennart Poettering
parent 83b5dabb40
commit cf2630acaa
2 changed files with 20 additions and 3 deletions
+13
View File
@@ -159,6 +159,19 @@
</tgroup>
</table>
<para>If no session class is specified via either the PAM module option or via the
<varname>$XDG_SESSION_CLASS</varname> environment variable, the class is automatically chosen, depending on
various session parameters, such as the session type (if known), whether the session has a TTY or X11
display, and the user disposition. Note that various tools allow setting the session class for newly
allocated PAM sessions explicitly by means of the <varname>$XDG_SESSION_CLASS</varname> environment variable.
For example, classic UNIX cronjobs support environment variable assignments (see
<citerefentry project='man-pages'><refentrytitle>crontab</refentrytitle><manvolnum>5</manvolnum></citerefentry>),
which may be used to choose between the <constant>background</constant> and
<constant>background-light</constant> session class individually per cronjob, or
<command>run0 --setenv=XDG_SESSION_CLASS=user-light</command> may be used
to choose between <constant>user</constant> and <constant>user-light</constant> for invoked privileged sessions.
</para>
<xi:include href="version-info.xml" xpointer="v197"/></listitem>
</varlistentry>