chiark / gitweb /
man: in pam_systemd, it must be "his" (or "her"), not their
[elogind.git] / man / pam_systemd.xml
index 951ae207a4a9568433de23c73ca0937b5d488efc..40709f7c54015fd845dc2e69f8cc16d8f83458c3 100644 (file)
@@ -55,7 +55,7 @@
                 <title>Description</title>
 
                 <para><command>pam_systemd</command> registers user
                 <title>Description</title>
 
                 <para><command>pam_systemd</command> registers user
-                sessions in the systemd login manager
+                sessions with the systemd login manager
                 <citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                 and hence the systemd control group hierarchy.</para>
 
                 <citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                 and hence the systemd control group hierarchy.</para>
 
                         <varname>$XDG_SESSION_ID</varname> environment
                         variable is initialized. If auditing is
                         available and
                         <varname>$XDG_SESSION_ID</varname> environment
                         variable is initialized. If auditing is
                         available and
-                        <command>pam_loginuid.so</command> run before
+                        <command>pam_loginuid.so</command> was run before
                         this module (which is highly recommended), the
                         variable is initialized from the auditing
                         session id
                         this module (which is highly recommended), the
                         variable is initialized from the auditing
                         session id
-                        (<filename>/proc/self/sessionid</filename>). Otherwise
+                        (<filename>/proc/self/sessionid</filename>). Otherwise,
                         an independent session counter is
                         used.</para></listitem>
 
                         an independent session counter is
                         used.</para></listitem>
 
                         created for the session. If this is the first
                         concurrent session of the user, an implicit
                         slice below <filename>user.slice</filename> is
                         created for the session. If this is the first
                         concurrent session of the user, an implicit
                         slice below <filename>user.slice</filename> is
-                        automatically created and the scope placed in
-                        it. In instance of the system service
-                        <filename>user@.service</filename> which runs
-                        the systemd user manager
-                        instance.</para></listitem>
+                        automatically created and the scope placed into
+                        it. An instance of the system service
+                        <filename>user@.service</filename>, which runs
+                        the systemd user manager instance, is started.
+                        </para></listitem>
                 </orderedlist>
 
                 <para>On logout, this module ensures the following:</para>
 
                 <orderedlist>
                 </orderedlist>
 
                 <para>On logout, this module ensures the following:</para>
 
                 <orderedlist>
-                        <listitem><para>If this is enabled, all
-                        processes of the session are terminated. If
+                        <listitem><para>If enabled in
+                        <citerefentry><refentrytitle>logind.conf</refentrytitle>
+                        <manvolnum>5</manvolnum></citerefentry>,
+                        all processes of the session are terminated. If
                         the last concurrent session of a user ends, his
                         user systemd instance will be terminated too,
                         and so will the user's slice
                         the last concurrent session of a user ends, his
                         user systemd instance will be terminated too,
                         and so will the user's slice
                                 <listitem><para>Takes a string
                                 argument which sets the session class.
                                 The XDG_SESSION_CLASS environmental variable
                                 <listitem><para>Takes a string
                                 argument which sets the session class.
                                 The XDG_SESSION_CLASS environmental variable
-                                takes precedence.</para></listitem>
+                                takes precedence. One of
+                                <literal>user</literal>,
+                                <literal>greeter</literal>,
+                                <literal>lock-screen</literal> or
+                                <literal>background</literal>. See
+                                <citerefentry><refentrytitle>sd_session_get_class</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                for details about the session class.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><option>debug=</option></term>
+                                <term><option>type=</option></term>
 
 
-                                <listitem><para>Takes a boolean
-                                argument. If yes, the module will log
+                                <listitem><para>Takes a string
+                                argument which sets the session type.
+                                The XDG_SESSION_TYPE environmental
+                                variable takes precedence. One of
+                                <literal>unspecified</literal>,
+                                <literal>tty</literal>,
+                                <literal>x11</literal>,
+                                <literal>wayland</literal> or
+                                <literal>mir</literal>. See
+                                <citerefentry><refentrytitle>sd_session_get_type</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                for details about the session type.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><option>debug<optional>=</optional></option></term>
+
+                                <listitem><para>Takes an optional
+                                boolean argument. If yes or without
+                                the argument, the module will log
                                 debugging information as it
                                 operates.</para></listitem>
                         </varlistentry>
                                 debugging information as it
                                 operates.</para></listitem>
                         </varlistentry>
                                 operating system
                                 provides.</para></listitem>
                         </varlistentry>
                                 operating system
                                 provides.</para></listitem>
                         </varlistentry>
+
+                </variablelist>
+
+                <para>The following environment variables are read by
+                the module and may be used by the PAM service to pass
+                metadata to the module:</para>
+
+                <variablelist class='environment-variables'>
+                        <varlistentry>
+                                <term><varname>$XDG_SESSION_TYPE</varname></term>
+
+                                <listitem><para>The session type. This
+                                may be used instead of
+                                <option>session=</option> on the
+                                module parameter line, and is usually
+                                preferred.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><varname>$XDG_SESSION_CLASS</varname></term>
+
+                                <listitem><para>The session class. This
+                                may be used instead of
+                                <option>class=</option> on the
+                                module parameter line, and is usually
+                                preferred.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><varname>$XDG_SESSION_DESKTOP</varname></term>
+
+                                <listitem><para>A single, short
+                                identifier string for the desktop
+                                environment. This may be used to
+                                indicate the session desktop used,
+                                where this applies and if this
+                                information is available. For example:
+                                <literal>GNOME</literal>, or
+                                <literal>KDE</literal>. It is
+                                recommended to use the same
+                                identifiers and capitalization as for
+                                <varname>$XDG_CURRENT_DESKTOP</varname>,
+                                as defined by the <ulink
+                                url="http://standards.freedesktop.org/desktop-entry-spec/latest/">Desktop
+                                Entry
+                                Specification</ulink>. See
+                                <citerefentry><refentrytitle>sd_session_get_desktop</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                for more details.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><varname>$XDG_SEAT</varname></term>
+
+                                <listitem><para>The seat name the session
+                                shall be registered for, if
+                                any.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><varname>$XDG_VTNR</varname></term>
+
+                                <listitem><para>The VT number the
+                                session shall be registered for, if
+                                any. (Only applies to seats with a VT
+                                available, such as
+                                <literal>seat0</literal>)</para></listitem>
+                        </varlistentry>
+
                 </variablelist>
         </refsect1>
 
                 </variablelist>
         </refsect1>
 
@@ -223,10 +316,10 @@ session    required     pam_systemd.so</programlisting>
                         <citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>pam.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>pam.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>pam</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>pam_loginuid</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry project='man-pages'><refentrytitle>pam.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                        <citerefentry project='man-pages'><refentrytitle>pam.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+                        <citerefentry project='man-pages'><refentrytitle>pam</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                        <citerefentry project='man-pages'><refentrytitle>pam_loginuid</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>systemd.scope</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
                         <citerefentry><refentrytitle>systemd.scope</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
                         <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>