2 # Copyright
2004-2007 Oswald Buddenhagen
<ossi@kde.org
>
4 # Permission to use
, copy
, modify
, distribute
, and sell this software and its
5 # documentation for any purpose is hereby granted without fee
, provided that
6 # the above copyright notice appear in all copies and that both that
7 # copyright notice and this permission notice appear in supporting
10 # The above copyright notice and this permission notice shall be included
11 # in all copies or substantial portions of the Software.
13 # THE SOFTWARE IS PROVIDED
"AS IS", WITHOUT WARRANTY
OF ANY KIND
, EXPRESS
14 #
OR IMPLIED
, INCLUDING BUT
NOT LIMITED
TO THE WARRANTIES
OF
15 # MERCHANTABILITY
, FITNESS
FOR A PARTICULAR PURPOSE
AND NONINFRINGEMENT.
16 #
IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE
FOR ANY CLAIM
, DAMAGES
OR
17 # OTHER LIABILITY
, WHETHER
IN AN ACTION
OF CONTRACT
, TORT
OR OTHERWISE
,
18 # ARISING
FROM, OUT
OF OR IN CONNECTION
WITH THE SOFTWARE
OR THE USE
OR
19 # OTHER DEALINGS
IN THE SOFTWARE.
21 # Except as contained in this notice
, the name of a copyright holders shall
22 # not be used in advertising or otherwise to promote the sale
, use or
23 # other dealings in this Software without prior written authorization
24 # from the copyright holders.
27 # The contents of this section are copied into config.ci verbatim.
32 #define KDMCONF KDE_CONFDIR
"/kdm"
33 #define KDMDATA KDE_DATADIR
"/kdm"
36 # define HALT_CMD
"/usr/sbin/shutdown -h now"
37 # define REBOOT_CMD
"/usr/sbin/shutdown -r now"
39 # define HALT_CMD
"/sbin/shutdown -h now"
40 # define REBOOT_CMD
"/sbin/shutdown -r now"
42 # define HALT_CMD
"/usr/sbin/halt"
43 # define REBOOT_CMD
"/usr/sbin/reboot"
45 # define HALT_CMD
"/sbin/halt"
46 # define REBOOT_CMD
"/sbin/reboot"
49 #if
defined(BSD
) ||
defined(__linux__
)
50 # define DEF_USER_PATH KDM_DEF_USER_PATH
51 # define DEF_SYSTEM_PATH KDM_DEF_SYSTEM_PATH
53 # define DEF_USER_PATH KDM_DEF_USER_PATH
":/usr/ucb"
54 # define DEF_SYSTEM_PATH KDM_DEF_SYSTEM_PATH
":/etc:/usr/ucb"
57 #if
0 /*def HASXDMAUTH
*/
58 # define DEF_AUTH_NAME
"XDM-AUTHORIZATION-1,MIT-MAGIC-COOKIE-1"
60 # define DEF_AUTH_NAME
"MIT-MAGIC-COOKIE-1"
64 #elif
defined(__sun__
)
65 # define DEF_SERVER_TTY
"console"
67 # define DEF_SERVER_TTY
"lft0"
69 # define DEF_SERVER_TTY
""
73 # define DEF_SERVER_CMD XBINDIR
"/X -T -force"
75 # define DEF_SERVER_CMD XBINDIR
"/X"
79 # The contents of this section are copied mostly verbatim to the
80 # default
/example configuration file.
81 # Everything indented with a space is considered a comment for the output
;
82 # it is prefixed with a hash mark but otherwise copied
verbatim (except
83 # for lines consisting of a single underscore
, which generate empty comment
85 # Section headers are
"condensation seeds" for the Instance
:s in the key
88 &kdm
; master configuration file
90 Definition
: the greeter is the login dialog
, i.e.
, the part of
&kdm
;
93 You can configure every X
-display individually.
94 Every display has a display name
, which consists of a host name
95 (which is empty for local displays specified in
{Static|Reserve
}Servers
),
96 a colon
, and a display number. Additionally
, a display belongs to a
97 display
class (which can be ignored in most cases
; the control center
98 does not support this feature at all
).
99 Sections with display
-specific settings have the formal syntax
100 "[X-" host
[":" number
[ "_" class
]] "-" sub
-section
"]"
101 You can use the
"*" wildcard for host
, number
, and class. You may omit
102 trailing components
; they are assumed to be
"*" then.
103 The host part may be a domain specification like
".inf.tu-dresden.de".
104 It may also be
"+", which means non
-empty
, i.e. remote displays only.
105 From which section a setting is actually taken is determined by these
107 - an exact match takes precedence over a partial
match (for the host part
),
108 which in turn takes precedence over a
wildcard ("+" taking precedence
110 - precedence decreases from left to right for equally exact matches
111 Example
: display name
"myhost:0", class
"dpy".
112 [X
-myhost
:0_dpy
] precedes
113 [X
-myhost
:0_
*] (same as
[X
-myhost
:0]) precedes
114 [X
-myhost
:*_dpy
] precedes
115 [X
-myhost
:*_
*] (same as
[X
-myhost
]) precedes
118 [X
-*:0_
*] (same as
[X
-*:0]) precedes
119 [X
-*:*_
*] (same as
[X
-*])
120 These sections do
NOT match this display
:
121 [X
-hishost
], [X
-myhost
:0_dec
], [X
-*:1], [X
-:*]
122 If a setting is not found in any matching section
, the default is used.
124 Every comment applies to the following section or key. Note that all
125 comments will be lost if you change this file with the kcontrol frontend.
126 The defaults refer to
&kdm
;'s built-in values, not anything set in this file.
128 Special characters need to be backslash-escaped (leading and trailing
129 spaces (\\s), tab (\\t), linefeed (\\n), carriage return (\\r) and the
130 backslash itself (\\\\)).
131 In lists, fields are separated with commas without whitespace in between.
132 Some command strings are subject to simplified sh-style word splitting:
133 single quotes (') and double
quotes (") have the usual meaning; the backslash
134 quotes everything (not only special characters). Note that the backslashes
135 need to be doubled because of the two levels of quoting.
143 Rough estimations about how many seconds &kdm; will spend at most on
144 - opening a connection to the X-server (OpenTime) if the attempt
145 - times out: OpenTimeout
146 - is refused: OpenRepeat * OpenDelay
147 - starting a local X-server (ServerTime):
148 ServerAttempts * (ServerTimeout + OpenDelay)
149 - starting a display:
150 - local display: ServerTime + OpenTime
151 - foreign display: StartAttempts * OpenTime
152 - &XDMCP; display: OpenTime (repeated indefinitely by client)
154 Core config for all displays
157 Greeter config for all displays
160 Core config for local displays
163 Greeter config for local displays
166 Core config for 1st local display
169 Greeter config for 1st local display
173 # The contents of this section are copied into kdmrc-ref.docbook.
174 # The macro %REF% is replaced with the accumulated Description:s from the key
177 <chapter id="kdm
-files
">
178 <title>The Files &kdm; Uses for Configuration</title>
180 <para>This chapter documents the files that control &kdm;'s behavior.
181 Some of this can be also controlled from the &kcontrol; module, but
185 <title>&kdmrc; - The &kdm; master configuration file</title>
187 <para>The basic format of the file is <quote>INI-like</quote>.
188 Options are key/value pairs, placed in sections.
189 Everything in the file is case sensitive.
190 Syntactic errors and unrecognized key/section identifiers cause &kdm; to
191 issue non-fatal error messages.</para>
193 <para>Lines beginning with <literal>#</literal> are comments; empty lines
194 are ignored as well.</para>
196 <para>Sections are denoted by
197 <literal>[</literal><replaceable>Name of Section</replaceable><literal>]</literal>.
200 <para>You can configure every X-display individually.</para>
201 <para>Every display has a display name, which consists of a host name
202 (which is empty for local displays specified in <option>StaticServers</option>
203 or <option>ReserveServers</option>), a colon, and a display number.
204 Additionally, a display belongs to a
205 display class (which can be ignored in most cases).</para>
207 <para>Sections with display-specific settings have the formal syntax
208 <literal>[X-</literal> <replaceable>host</replaceable> [ <literal>:</literal> <replaceable>number</replaceable> [ <literal>_</literal> <replaceable>class</replaceable> ] ] <literal>-</literal> <replaceable>sub-section</replaceable> <literal>]</literal>
210 <para>All sections with the same <replaceable>sub-section</replaceable>
211 make up a section class.</para>
213 <para>You can use the wildcard <literal>*</literal> (match any) for
214 <replaceable>host</replaceable>, <replaceable>number</replaceable>,
215 and <replaceable>class</replaceable>. You may omit trailing components;
216 they are assumed to be <literal>*</literal> then. The host part may be a
217 domain specification like <replaceable>.inf.tu-dresden.de</replaceable>
218 or the wildcard <literal>+</literal> (match non-empty).</para>
220 <para>From which section a setting is actually taken is determined by
225 <para>An exact match takes precedence over a partial match (for the
226 host part), which in turn takes precedence over a wildcard
227 (<literal>+</literal> taking precendence over <literal>*</literal>).</para>
231 <para>Precedence decreases from left to right for equally exact matches.</para>
237 Example: display name <quote>myhost.foo:0</quote>, class <quote>dpy</quote>
241 <para>[X-myhost.foo:0_dpy] precedes</para>
244 <para>[X-myhost.foo:0_*] (same as [X-myhost.foo:0]) precedes</para>
247 <para>[X-myhost.foo:*_dpy] precedes</para>
250 <para>[X-myhost.foo:*_*] (same as [X-myhost.foo]) precedes</para>
253 <para>[X-.foo:*_*] (same as [X-.foo]) precedes</para>
256 <para>[X-+:0_dpy] precedes</para>
259 <para>[X-*:0_dpy] precedes</para>
262 <para>[X-*:0_*] (same as [X-*:0]) precedes</para>
265 <para>[X-*:*_*] (same as [X-*]).</para>
268 <para>These sections do <emphasis>not</emphasis> match this display:</para>
269 <para>[X-hishost], [X-myhost.foo:0_dec], [X-*:1], [X-:*]</para>
277 <para>Common sections are [X-*] (all displays), [X-:*] (all local displays)
278 and [X-:0] (the first local display).</para>
280 <para>The format for all keys is
281 <userinput><option><replaceable>key</replaceable></option> <literal>=</literal> <parameter>value</parameter></userinput>.
282 Keys are only valid in the section class they are defined for.
283 Some keys do not apply to particular displays, in which case they are ignored.
286 <para>If a setting is not found in any matching section, the default
289 <para>Special characters need to be backslash-escaped (leading and trailing
290 spaces (<literal>\s</literal>), tab (<literal>\t</literal>), linefeed
291 (<literal>\n</literal>), carriage return (<literal>\r</literal>) and the
292 backslash itself (<literal>\\</literal>)).</para>
293 <para>In lists, fields are separated with commas without whitespace in between.
295 <para>Some command strings are subject to simplified sh-style word splitting:
296 single quotes (<literal>'</literal>) and double quotes (<literal>"</literal
>)
297 have the usual meaning
; the backslash quotes
everything (not only special
298 characters
). Note that the backslashes need to be doubled because of the
299 two levels of quoting.
</para
>
301 <note
><para
>A pristine
&kdmrc
; is very thoroughly commented.
302 All comments will be lost if you change this file with the
303 kcontrol frontend.
</para
></note
>
309 <sect1 id
="kdmrc-xservers">
310 <title
>Specifying permanent
&X
-Server
;s
</title
>
312 <para
>Each entry in the
<option
>StaticServers
</option
> list indicates a
313 display which should constantly be
314 managed and which is not using
&XDMCP
;. This method is typically used only for
315 local
&X
-Server
;s that are started by
&kdm
;, but
&kdm
; can manage externally
316 started (<quote
>foreign
</quote
>) &X
-Server
;s as well
, may they run on the
317 local machine or rather remotely.
</para
>
319 <para
>The formal syntax of a specification is
321 <userinput
><replaceable
>display
 
;name
</replaceable
> 
;[<literal
>_
</literal
><replaceable
>display
 
;class
</replaceable
>]</userinput
>
323 for all
&X
-Server
;s.
<quote
>Foreign
</quote
> displays differ in having
324 a host name in the display name
, may it be
<literal
>localhost
</literal
>.
</para
>
326 <para
>The
<replaceable
>display name
</replaceable
> must be something that can
327 be passed in the
<option
>-display
</option
> option to an X program. This string
328 is used to generate the display
-specific section names
, so be careful to match
330 The display name of
&XDMCP
; displays is derived from the display
's address by
331 reverse host name resolution. For configuration purposes, the
332 <literal>localhost</literal> prefix from locally running &XDMCP; displays is
333 <emphasis>not</emphasis> stripped to make them distinguishable from local
334 &X-Server;s started by &kdm;.</para>
336 <para>The <replaceable>display class</replaceable> portion is also used in the
337 display-specific sections. This is useful if you have a large collection of
338 similar displays (such as a corral of X terminals) and would like to set
339 options for groups of them.
340 When using &XDMCP;, the display is required to specify the display class,
341 so the manual for your particular X terminal should document the display
342 class string for your device. If it does not, you can run &kdm; in debug
343 mode and <command>grep</command> the log for <quote>class</quote>.</para>
345 <para>The displays specified in <option>ReserveServers</option> will not be
346 started when &kdm; starts up, but when it is explicitly requested via
348 If reserve displays are specified, the &kde; menu will have a
349 <guilabel>Start New Session</guilabel> item near the bottom; use that to
350 activate a reserve display with a new login session. The monitor will switch
351 to the new display, and you will have a minute to login. If there are no more
352 reserve displays available, the menu item will be disabled.</para>
354 <para>When &kdm; starts a session, it sets up authorization data for the
355 &X-Server;. For local servers, &kdm; passes
356 <command><option>-auth</option> <filename><replaceable>filename</replaceable></filename></command>
357 on the &X-Server;'s command line to point it at its authorization data.
358 For
&XDMCP
; displays
, &kdm
; passes the authorization data to the
&X
-Server
;
359 via the
<quote
>Accept
</quote
> &XDMCP
; message.
</para
>
363 <sect1 id
="kdmrc-xaccess">
364 <title
>&XDMCP
; access control
</title
>
366 <para
>The file specified by the
<option
>AccessFile
</option
> option provides
367 information which
&kdm
; uses to control access from displays requesting service
369 The file contains four types of entries
: entries which control the response
370 to
<quote
>Direct
</quote
> and
<quote
>Broadcast
</quote
> queries
, entries which
371 control the response to
<quote
>Indirect
</quote
> queries
, macro definitions
,
372 and entries which control on which network interfaces
&kdm
; listens for
&XDMCP
;
374 Blank lines are ignored
, <literal
>#
</literal
> is treated as a comment
375 delimiter causing the rest of that line to be ignored
, and
<literal
>\
</literal
>
376 causes an immediately following newline to be ignored
, allowing host lists
377 to span multiple lines.
380 <para
>The format of the
<quote
>Direct
</quote
> entries is simple
, either a
381 host name or a pattern
, which is compared against the host name of the display
382 device. Alternatively
, a macro may be used to make the entry match everything
383 the macro expands to.
384 Patterns are distinguished from host names by the inclusion of one or more
385 meta characters
; <literal
>*</literal
> matches any sequence of
0 or more
386 characters
, and
<literal
>?
</literal
> matches any single character.
387 If the entry is a host name
, all comparisons are done using network addresses
,
388 so any name which converts to the correct network address may be used. Note
389 that only the first network address returned for a host name is used.
390 For patterns
, only canonical host names are used in the comparison
, so ensure
391 that you do not attempt to match aliases.
392 Host names from
&XDMCP
; queries always contain the local domain name
393 even if the reverse lookup returns a short name
, so you can use
394 patterns for the local domain.
395 Preceding the entry with a
<literal
>!</literal
> character causes hosts which
396 match that entry to be excluded. Preceding it with an
<literal
>=</literal
> has
397 no effect but is required when specifying a macro to distinguish the entry
398 from a macro definition.
399 To only respond to
<quote
>Direct
</quote
> queries for a host or pattern
,
400 it can be followed by the optional
<literal
>NOBROADCAST
</literal
> keyword.
401 This can be used to prevent a
&kdm
; server from appearing on menus based on
402 <quote
>Broadcast
</quote
> queries.
</para
>
404 <para
>An
<quote
>Indirect
</quote
> entry also contains a host name
, pattern or
405 macro
, but follows it with a list of host names or macros to which the queries
406 should be forwarded.
<quote
>Indirect
</quote
> entries can be excluding as well
,
407 in which case
a (valid
) dummy host name must be supplied to make the entry
408 distinguishable from a
<quote
>Direct
</quote
> entry.
409 If compiled with IPv6 support
, multicast address groups may also be included
410 in the list of addresses the queries are forwarded to.
411 <!-- Not actually implemented
!
412 Multicast addresses may be followed by an optional
<literal
>/</literal
>
413 character and hop count. If no hop count is specified
, the multicast hop count
414 defaults to
1, keeping the packet on the local network. For IPv4 multicasting
,
415 the hop count is used as the TTL.
417 If the indirect host list contains the keyword
<literal
>CHOOSER
</literal
>,
418 <quote
>Indirect
</quote
> queries are not forwarded
, but instead a host chooser
419 dialog is displayed by
&kdm
;. The chooser will send a
<quote
>Direct
</quote
>
420 query to each of the remaining host names in the list and offer a menu of
421 all the hosts that respond. The host list may contain the keyword
422 <literal
>BROADCAST
</literal
>, to make the chooser send a
423 <quote
>Broadcast
</quote
> query as well
; note that on some operating systems
,
424 UDP packets cannot be broadcast
, so this feature will not work.
427 <para
>When checking access for a particular display host
, each entry is scanned
428 in turn and the first matching entry determines the response.
429 <quote
>Direct
</quote
> and
<quote
>Broadcast
</quote
> entries are ignored when
430 scanning for an
<quote
>Indirect
</quote
> entry and vice
-versa.
</para
>
432 <para
>A macro definition contains a macro name and a list of host names and
433 other macros that the macro expands to. To distinguish macros from hostnames
,
434 macro names start with a
<literal
>%</literal
> character.
</para
>
436 <para
>The last entry type is the
<literal
>LISTEN
</literal
> directive.
439 <userinput
> 
;<literal
>LISTEN
</literal
> 
;[<replaceable
>interface
</replaceable
> 
;[<replaceable
>multicast
 
;list
</replaceable
>]]</userinput
>
441 If one or more
<literal
>LISTEN
</literal
> lines are specified
, &kdm
; listens
442 for
&XDMCP
; requests only on the specified interfaces.
443 <replaceable
>interface
</replaceable
> may be a hostname or IP address
444 representing a network interface on this machine
, or the wildcard
445 <literal
>*</literal
> to represent all available network interfaces.
446 If multicast group addresses are listed on a
<literal
>LISTEN
</literal
> line
,
447 &kdm
; joins the multicast groups on the given interface. For IPv6 multicasts
,
448 the IANA has assigned ff0
<replaceable
>X
</replaceable
>:0:0:0:0:0:0:12b as the
449 permanently assigned range of multicast addresses for
&XDMCP
;. The
450 <replaceable
>X
</replaceable
> in the prefix may be replaced by any valid scope
451 identifier
, such as
1 for Node
-Local
, 2 for Link
-Local
, 5 for Site
-Local
, and
452 so
on (see IETF RFC
2373 or its replacement for further details and scope
453 definitions
).
&kdm
; defaults to listening on the Link
-Local scope address
454 ff02
:0:0:0:0:0:0:12b to most closely match the IPv4 subnet broadcast behavior.
455 If no
<literal
>LISTEN
</literal
> lines are given
, &kdm
; listens on all
456 interfaces and joins the default
&XDMCP
; IPv6 multicast
group (when
457 compiled with IPv6 support
).
458 To disable listening for
&XDMCP
; requests altogether
, a
459 <literal
>LISTEN
</literal
> line with no addresses may be specified
, but using
460 the
<literal
>[Xdmcp
]</literal
> <option
>Enable
</option
> option is preferred.
465 <sect1 id
="kdm-scripts">
466 <title
>Supplementary programs
</title
>
469 The following programs are run by
&kdm
; at various stages of a session.
470 They typically are shell scripts.
474 The Setup
, Startup and Reset programs are run as
475 <systemitem class
="username">root
</systemitem
>, so they should be careful
477 Their first argument is
<literal
>auto
</literal
> if the session results
478 from an automatic login
; otherwise
, no arguments are passed to them.
481 <sect2 id
="kdmrc-xsetup">
482 <title
>Setup program
</title
>
485 The
<filename
>Xsetup
</filename
> program is run after the
&X
-Server
; is
486 started or reset
, but before the greeter is offered.
487 This is the place to change the root
background (if
488 <option
>UseBackground
</option
> is disabled
) or bring up other windows that
489 should appear on the screen along with the greeter.
493 In addition to any specified by
<option
>ExportList
</option
>,
494 the following environment variables are passed
:</para
>
498 <listitem
><para
>the associated display name
</para
></listitem
>
502 <listitem
><para
>the value of
<option
>SystemPath
</option
></para
></listitem
>
506 <listitem
><para
>the value of
<option
>SystemShell
</option
></para
></listitem
>
509 <term
>XAUTHORITY
</term
>
510 <listitem
><para
>may be set to an authority file
</para
></listitem
>
513 <term
>DM_CONTROL
</term
>
514 <listitem
><para
>the value of
<option
>FifoDir
</option
></para
></listitem
>
518 <para
> Note that since
&kdm
; grabs the keyboard
, any other windows will not be
519 able to receive keyboard input. They will be able to interact with the mouse
,
520 however
; beware of potential security holes here. If
<option
>GrabServer
</option
>
521 is set
, <filename
>Xsetup
</filename
> will not be able to connect to the display
522 at all. Resources for this program can be put into the file named by
523 <option
>Resources
</option
>.
528 <sect2 id
="kdmrc-xstartup">
529 <title
>Startup program
</title
>
531 <para
>The
<filename
>Xstartup
</filename
> program is run as
532 <systemitem class
="username">root
</systemitem
> when the user logs in.
533 This is the place to put commands which add entries to
534 <filename
>utmp
</filename
> (the
<command
>sessreg
</command
> program
535 may be useful here
), mount users
' home directories from file servers,
536 or abort the session if some requirements are not met (but note that on
537 modern systems, many of these tasks are already taken care of by
538 <acronym>PAM</acronym> modules).</para>
540 <para>In addition to any specified by <option>ExportList</option>,
541 the following environment variables are passed:</para>
545 <listitem><para>the associated display name</para></listitem>
549 <listitem><para>the initial working directory of the user</para></listitem>
553 <listitem><para>the username</para></listitem>
557 <listitem><para>the username</para></listitem>
561 <listitem><para>the value of <option>SystemPath</option></para></listitem>
565 <listitem><para>the value of <option>SystemShell</option></para></listitem>
568 <term>XAUTHORITY</term>
569 <listitem><para>may be set to an authority file</para></listitem>
572 <term>DM_CONTROL</term>
573 <listitem><para>the value of <option>FifoDir</option></para></listitem>
577 <para>&kdm; waits until this program exits before starting the user session.
578 If the exit value of this program is non-zero, &kdm; discontinues the session
579 and starts another authentication cycle.</para>
583 <sect2 id="kdmrc-xsession">
584 <title>Session program</title>
586 <para>The <filename>Xsession</filename> program is the command which is run
587 as the user's session. It is run with the permissions of the authorized user.
588 One of the keywords
<literal
>failsafe
</literal
>, <literal
>default
</literal
>
589 or
<literal
>custom
</literal
>, or a string to
<command
>eval
</command
> by a
590 Bourne
-compatible shell is passed as the first argument.
</para
>
592 <para
>In addition to any specified by
<option
>ExportList
</option
>,
593 the following environment variables are passed
:</para
>
597 <listitem
><para
>the associated display name
</para
></listitem
>
601 <listitem
><para
>the initial working directory of the user
</para
></listitem
>
605 <listitem
><para
>the username
</para
></listitem
>
609 <listitem
><para
>the username
</para
></listitem
>
613 <listitem
><para
>the value of
<option
>UserPath
</option
>
614 (or
<option
>SystemPath
</option
> for
615 <systemitem class
="username">root
</systemitem
> user sessions
)</para
>
620 <listitem
><para
>the user
's default shell</para></listitem>
623 <term>XAUTHORITY</term>
624 <listitem><para>may be set to a non-standard authority file</para></listitem>
627 <term>KRBTKFILE</term>
628 <listitem><para>may be set to a Kerberos4 credentials cache name</para>
632 <term>KRB5CCNAME</term>
633 <listitem><para>may be set to a Kerberos5 credentials cache name</para>
637 <term>DM_CONTROL</term>
638 <listitem><para>the value of <option>FifoDir</option></para></listitem>
641 <term>XDM_MANAGED</term>
642 <listitem><para>will contain a comma-separated list of parameters the
643 session might find interesting, like which conversation
644 plugin was used for the login</para>
648 <term>DESKTOP_SESSION</term>
649 <listitem><para>the name of the session the user has chosen to run</para>
656 <sect2 id="kdmrc-xreset">
657 <title>Reset program</title>
659 <para>Symmetrical with <filename>Xstartup</filename>, the
660 <filename>Xreset</filename> program is run after the user session has
661 terminated. Run as <systemitem class="username">root</systemitem>, it should
662 contain commands that undo the effects of commands in
663 <filename>Xstartup</filename>, removing entries from <filename>utmp</filename>
664 or unmounting directories from file servers.</para>
666 <para>The environment variables that were passed to
667 <filename>Xstartup</filename> are also passed to <filename>Xreset</filename>.
678 # The rest of this file are section and key definitions for the options.
679 # The order of the keywords is fixed and everything is case sensitive.
680 # A keyword may expect supplementary data in the form of space-indented
681 # lines following it. Definitions are delimited by empty lines.
683 # Section definition:
685 # Section name. Section classes start with a dash.
687 # C preprocessor conditional for supporting this section.
688 # If it evaluates to false, all keys in this section are disabled as well.
690 # A docbook description of this section is expected in the next lines.
691 # The contents are automatically enclosed in <para></para>.
693 # Option key definition:
697 # C preprocessor conditional for supporting this option.
698 # Type: (int|bool|enum|group|string|path|list)
699 # The option's data type.
700 # If the type is enum
, the element definitions follow in the next lines
:
701 #
<term
>[/<c #define
>]: <docbook style description
>
703 # Default value. string
, path and list are copied verbatim and therefore
704 # must be already quoted appropriately. The other types are auto
-quoted.
705 # If the default value is prefixed with a
"*", a c #define def_
<Key
> is
707 # The default is automatically appended to the kdmrc comment and the
708 # documentation entry.
709 # CDefault
: <verbose default
>
710 # Append this instead of the real default to the two docs. The quoting
711 # rules are the same as for Default.
713 # If specified
, the default value will not be appended to the documentation
714 # entry. The Description should mention the default then. Use this when
715 # the default is system
-dependent.
716 # PostProc
: <function
>
717 # A function to postprocess the read config value before using it.
718 # User
: (dummy|
(core|greeter|greeter
-c|dep|config
)[(<variable
>)][:font
])
719 # These entries specify which parts of kdm need the option in question
:
720 # dummy
: no user
; entry is there only for syntactical correctness.
721 # dep
: this option is an internal dependency for another option.
722 # config
: this option configures the config reader itself.
723 # core
: the kdm backend needs this option.
724 # greeter
-c
: the kdm frontend needs this option as a C data type.
725 # greeter
: the kdm frontend needs this option as a C
++/Qt data type.
726 # If a
:font tag is appended
, a string entry is converted to a QFont.
727 # If no variable name is specified
, it will be derived from the Key by
728 # un
-capitalizing it.
729 # Instance
: (-|
[#
][<display spec
>/](!|
<value
>))
730 # These entries specify option instances for the default
/example kdmrc.
731 # A
"-" entry is a dummy for syntactical correctness.
732 # A prefixing hash mark will be copied to kdmrc.
733 # For options in a section class a display must be specified.
734 # For bool options
"!" can be used as the value to specify the negation
736 # Update
: <function
>[/<number
>]
737 # Call this function on each occurence of this option in genkdmconf.
738 # Options with higher
numbers (default is
0) will be processed later.
739 # Merge
: xdm
[:<resource
>][(<function
>)]
740 # Merge
: kdm
:[<section
>/][<key
>][(<function
>)]
741 # Specify config options to merge from xdm and older kdm versions.
742 # Kdm options from the current version are automatically merged.
743 # When merging an xdm resource and no resource name is specified
, it is
744 # derived from the Key by un
-capitalizing it.
745 # When merging a kdm option
, at least one of
<section
> and
<key
> must
746 # be given
; an unspecified entity defaults to the current Section
/Key.
747 #
<section
> may be a dash
-prefixed section class.
748 # A function to postprocess the read value can be specified.
750 # A kdmrc comment for this option is expected in the next lines.
751 # If
"-" is given to Comment
, no comment is generated at all.
752 # If
"&" is given
, the comment is derived from the Description below by
753 # applying some simple docbook interpretation to it. Note that the
754 # Description must be preformatted in this case. Use
755 # sed
-ne
's/^\(.\{79,\}\)$/\1/p' < kdmrc
756 # after running
"make install" to see whether all lines still fit.
757 # If Type is enum
, a list of the previously defined element
/description
758 # pairs is appended
; the descriptions undergo docbook interpretation.
759 # Finally
, a sentence with the
Default (or CDefault
, if given
) is appended.
761 # A docbook description of this option is expected in the next lines.
762 # The contents are automatically enclosed in
<para
></para
>.
763 # If
"-" is given to Description
, no comment is generated at all.
764 # If
"!" is given
, enums are not treated specially
; otherwise
, the macro
765 #
%ENUM
% is replaced with a list of the defined element
/description pairs
,
766 # or
- if the macro is not present
- the list is appended to the
768 # Finally
, a sentence with the
Default (or CDefault
, if given
) is appended
,
769 # unless
"DDefault: -" was specified.
770 # Each option entry generates an anchor named option
-<lowercase(Key
)>;
771 # it can be referenced in the main documentation.
772 # Do not forget to run
"make ref" in kdebase
/doc
/kdm after changing
777 This section contains global options that do not fit into any specific section.
784 # will be overwritten
787 This option exists solely for the purpose of a clean automatic upgrade.
788 Do not even think about changing it
!
790 This option exists solely for the purpose of clean automatic upgrades.
791 <emphasis
>Do not
</emphasis
> change it
, you may interfere with future
792 upgrades and this could result in
&kdm
; failing to run.
797 Default
: KDM_PAM_SERVICE
805 # note
: this can miss Xservers from kdm for kde
2.2 because of stupid default.
806 Source
: kdm
:General
/Xservers
816 List of permanent displays. Displays with a hostname are foreign. A display
817 class may be specified separated by an underscore.
819 List of
displays (&X
-Server
;s
) permanently managed by
&kdm
;. Displays with a
820 hostname are foreign displays which are expected to be already running
,
821 the others are local displays for which
&kdm
; starts an own
&X
-Server
;;
822 see
<option
>ServerCmd
</option
>. Each display may belong to a display class
;
823 append it to the display name separated by an underscore.
824 See
<xref linkend
="kdmrc-xservers"/> for the details.
833 List of on
-demand displays. See
<option
>StaticServers
</option
> for syntax.
836 If
: defined(HAVE_VTS
)
840 Instance
: #
"7,8,-9,-10"
841 Update
: upd_servervts
843 VTs to allocate to
&X
-Server
;s. A negative number means that the VT will be
844 used only if it is free. If all VTs in this list are used up
, the next free
845 one greater than the last one in this list will be allocated.
847 List of Virtual Terminals to allocate to
&X
-Server
;s. For negative numbers the
848 absolute value is used
, and the
<acronym
>VT
</acronym
> will be allocated only
849 if the kernel says it is free. If
&kdm
; exhausts this list
, it will allocate
850 free
<acronym
>VT
</acronym
>s greater than the absolute value of the last entry
852 Currently Linux only.
855 If
: defined(HAVE_VTS
)
859 Instance
: #
"tty1,tty2,tty3,tty4,tty5,tty6"
860 Update
: upd_consolettys
862 TTYs (without
/dev
/) to monitor for activity while in console mode.
864 This option is for operating
systems (<acronym
>OS
</acronym
>s
) with support
865 for virtual
terminals (<acronym
>VT
</acronym
>s
), by both
&kdm
; and the
866 <acronym
>OS
</acronym
>s itself.
867 Currently this applies only to Linux.
869 When
&kdm
; switches to console mode
, it starts monitoring all
870 <acronym
>TTY
</acronym
> lines listed
here (without the leading
871 <literal
>/dev
/</literal
>).
872 If none of them is active for some time
, &kdm
; switches back to the X login.
878 Instance
: "/var/run/kdm.pid"
881 Where
&kdm
; should store its
PID (do not store if empty
).
883 The filename specified will be created to contain an ASCII representation
884 of the process ID of the main
&kdm
; process
; the PID will not be stored
885 if the filename is empty.
894 Whether
&kdm
; should lock the PID file to prevent having multiple
&kdm
;
895 instances running at once. Do not change unless you are brave.
897 This option controls whether
&kdm
; uses file locking to keep multiple
898 display managers from running onto each other.
903 Default
: "/var/run/xauth"
906 Merge
: xdm(P_authDir
)
908 Where to store authorization files.
910 This names a directory under which
&kdm
; stores
&X
-Server
; authorization
911 files while initializing the session.
&kdm
; expects the system to clean up
912 this directory from stale files on reboot.
914 The authorization file to be used for a particular display can be
915 specified with the
<option
>AuthFile
</option
> option in
[X
-*-Core
].
924 Whether
&kdm
; should automatically re
-read configuration files
, if it
925 finds them having changed.
927 This boolean controls whether
&kdm
; automatically re
-reads its
928 configuration files if it finds them to have changed.
934 Instance
: #
"LD_LIBRARY_PATH,ANOTHER_IMPORTANT_VAR"
938 Additional environment variables
&kdm
; should pass on to all programs it runs.
939 <envar
>LD_LIBRARY_PATH
</envar
> and
<envar
>XCURSOR_THEME
</envar
> are good candidates
;
940 otherwise
, it should not be necessary very often.
943 If
: !defined(ARC4_RANDOM
) && !defined(DEV_RANDOM
)
950 A file
&kdm
; should read entropy from.
952 If the system has no native entropy source like
/dev
/urandom (see
953 <option
>RandomDevice
</option
>) and no entropy daemon like
EGD (see
954 <option
>PrngdSocket
</option
> and
<option
>PrngdPort
</option
>) is running
,
955 &kdm
; will fall back to its own pseudo
-random number generator
956 that will
, among other things
, successively checksum parts of this file
957 (which
, obviously
, should change frequently
).
959 This option does not exist on Linux and various BSDs.
962 If
: !defined(ARC4_RANDOM
) && !defined(DEV_RANDOM
)
967 Instance
: #
"/tmp/entropy"
970 A UNIX domain socket
&kdm
; should read entropy from.
972 If the system has no native entropy source like
/dev
/urandom (see
973 <option
>RandomDevice
</option
>), read random data from a Pseudo
-Random
974 Number Generator Daemon
,
975 like
EGD (http
://egd.sourceforge.net
) via this UNIX domain socket.
977 This option does not exist on Linux and various BSDs.
980 If
: !defined(ARC4_RANDOM
) && !defined(DEV_RANDOM
)
987 A TCP socket on localhost
&kdm
; should read entropy from.
989 Same as
<option
>PrngdSocket
</option
>, only use a TCP socket on localhost.
992 If
: !defined(ARC4_RANDOM
)
996 Instance
: #
"/dev/altrandom"
999 A character device
&kdm
; should read entropy from.
1000 Empty means use the system
's preferred entropy device.
1002 The path to a character device which &kdm; should read random data from.
1003 Empty means to use the system's preferred entropy device if there is one.
1005 This option does not exist on OpenBSD
, as it uses the arc4_random
1010 Default
: *"/var/run/xdmctl"
1015 Where the command sockets should be created
; make it empty to disable
1018 The directory in which the command sockets should
1019 be created
; make it empty to disable them.
1020 # See
<xref linkend
="kdm-fifos"/> for the details.
1029 The group to which the global command socket should belong
;
1030 can be either a name or a numerical ID.
1034 Default
: *"/var/lib/kdm"
1039 The directory in which
&kdm
; should store persistent working data.
1041 The directory in which
&kdm
; should store persistent working data
; such data
1042 is
, for example
, the previous user that logged in on a particular display.
1048 Instance
: #
"/nfs-shared/var/dmrcs"
1051 The directory in which
&kdm
; should store users
' <filename>.dmrc</filename> files. This is only
1052 needed if the home directories are not readable before actually logging in
1059 This section contains options that control &kdm;'s handling of
1061 # See
<xref linkend
="xdmcp-with-kdm"/> to find out what
&XDMCP
; is.
1066 User
: dep(xdmcpEnable
)
1070 Whether
&kdm
; should listen to incoming
&XDMCP
; requests.
1075 PostProc
: PrequestPort
1076 User
: core(requestPort
)
1078 Merge
: xdm
:requestPort(P_requestPort
)
1080 The UDP port on which
&kdm
; should listen for
&XDMCP
; requests. Do not change.
1082 This indicates the UDP port number which
&kdm
; uses to listen for incoming
1083 &XDMCP
; requests. Unless you need to debug the system
, leave this with its
1090 Instance
: #KDMCONF
"/kdmkeys"
1094 File with the private keys of X
-terminals. Required for XDM authentication.
1096 XDM
-AUTHENTICATION
-1 style
&XDMCP
; authentication requires a private
1097 key to be shared between
&kdm
; and the terminal. This option specifies
1098 the file containing those values. Each entry in the file consists of a
1099 display name and the shared key.
1104 Default
: *KDMCONF
"/Xaccess"
1105 User
: config(Xaccess
)
1108 Merge
: xdm
:accessFile
1110 &XDMCP
; access control file in the usual XDM
-Xaccess format.
1112 To prevent unauthorized
&XDMCP
; service and to allow forwarding of
&XDMCP
;
1113 IndirectQuery requests
, this file contains a database of hostnames which
1114 are either allowed direct access to this machine
, or have a list of hosts
1115 to which queries should be forwarded to. The format of this file is
1116 described in
<xref linkend
="kdmrc-xaccess"/>.
1125 Number of seconds to wait for display to respond after the user has
1126 selected a host from the chooser.
1128 Number of seconds to wait for the display to respond after the user has
1129 selected a host from the chooser. If the display sends an
&XDMCP
;
1130 IndirectQuery within this time
, the request is forwarded to the chosen
1131 host
; otherwise
, it is assumed to be from a new session and the chooser
1134 Key
: RemoveDomainname
1141 Strip domain name from remote display names if it is equal to the local
1144 When computing the display name for
&XDMCP
; clients
, the name resolver will
1145 typically create a fully qualified host name for the terminal. As this is
1146 sometimes confusing
, &kdm
; will remove the domain name portion of the host
1147 name if it is the same as the domain name of the local host when this option
1157 Use the numeric IP address of the incoming connection on multihomed hosts
1158 instead of the host name.
1160 Use the numeric IP address of the incoming connection on multihomed hosts
1161 instead of the host name. This is to avoid trying to connect on the wrong
1162 interface which might be down at this time.
1168 # will be overwritten
1174 The program which is invoked to dynamically generate replies to
&XDMCP
;
1175 DirectQuery or BroadcastQuery requests.
1176 If empty
, no program is invoked and
"Willing to manage" is sent.
1178 This specifies a program which is
run (as
1179 <systemitem class
="username">root
</systemitem
>) when an
&XDMCP
;
1180 DirectQuery or BroadcastQuery is received and this host is configured
1181 to offer
&XDMCP
; display management. The output of this program may be
1182 displayed in a chooser window. If no program is specified
, the string
1183 <quote
>Willing to manage
</quote
> is sent.
1188 This section contains global options concerning system shutdown.
1197 The
command (subject to word splitting
) to run to halt the system.
1199 The
command (subject to word splitting
) to run to halt
/poweroff the system.
1201 The default is something reasonable for the system on which
&kdm
; was built
, like
1202 <command
>/sbin
/shutdown
 
;<option
>-h
</option
> 
;<parameter
>now
</parameter
></command
>.
1208 User
: core(cmdReboot
)
1211 The
command (subject to word splitting
) to run to reboot the system.
1213 The
command (subject to word splitting
) to run to reboot the system.
1215 The default is something reasonable for the system
&kdm
; on which was built
, like
1216 <command
>/sbin
/shutdown
 
;<option
>-r
</option
> 
;<parameter
>now
</parameter
></command
>.
1221 User
: core(fifoAllowShutdown
)
1225 Whether it is allowed to shut down the system via the global command socket.
1230 User
: core(fifoAllowNuke
)
1233 Whether it is allowed to abort active sessions when shutting down the
1234 system via the global command socket.
1236 Whether it is allowed to abort active sessions when shutting down the
1237 system via the global command socket.
1239 This will have no effect unless
<option
>AllowFifo
</option
> is enabled.
1243 None
/BO_NONE
: no boot manager
1244 Grub
/BO_GRUB
: Grub boot manager
1245 Lilo
/BO_LILO
: Lilo boot
manager (Linux on i386
&
; x86
-64 only
)
1250 Merge
: kdm
:UseLilo(P_UseLilo
)
1253 The boot manager
&kdm
; should use for offering boot options in the
1259 This section class contains options concerning the configuration
1260 of the
&kdm
; backend (core
).
1267 Merge
: xdm(P_openDelay
)
1269 How long to wait before retrying to connect a display.
1271 See
<option
>OpenRepeat
</option
>.
1280 How long to wait before timing out a display connection attempt.
1282 See
<option
>OpenRepeat
</option
>.
1291 How many connection attempts to make during a start attempt. Note that
1292 a timeout aborts the entire start attempt.
1294 These options control the behavior of
&kdm
; when attempting to open a
1295 connection to an
&X
-Server
;.
<option
>OpenDelay
</option
> is the length
1296 of the
pause (in seconds
) between successive attempts
,
1297 <option
>OpenRepeat
</option
> is the number of attempts to make and
1298 <option
>OpenTimeout
</option
> is the amount of time to spend on a
1299 connection attempt. After
<option
>OpenRepeat
</option
> attempts have been
1300 made
, or if
<option
>OpenTimeout
</option
> seconds elapse in any particular
1301 connection attempt
, the start attempt is considered failed.
1310 Try at most that many times to start a display. If this fails
, the display
1313 How many times
&kdm
; should attempt to start a
<literal
>foreign
</literal
>
1314 display listed in
<option
>StaticServers
</option
> before giving up
1316 Local displays are attempted only once
, and
&XDMCP
; displays are retried
1317 indefinitely by the
client (unless the option
<option
>-once
</option
>
1318 was given to the
&X
-Server
;).
1327 How often to try to run the
&X
-Server
;. Running includes executing it and
1328 waiting for it to come up.
1330 How many times
&kdm
; should attempt to start up a local
&X
-Server
;.
1331 Starting up includes executing it and waiting for it to come up.
1339 How long to wait for a local
&X
-Server
; to come up.
1341 How many seconds
&kdm
; should wait for a local
&X
-Server
; to come up.
1345 Default
: DEF_SERVER_CMD
1348 Instance
: :*/DEF_SERVER_CMD
1349 Update
: upd_servercmd
1351 The command line to start the
&X
-Server
;, without display number and VT spec.
1352 This string is subject to word splitting.
1354 The command line to start the
&X
-Server
;, without display number and VT spec.
1355 This string is subject to word splitting.
1357 The default is something reasonable for the system on which
&kdm
; was built
,
1358 like
<command
>/usr
/X11R6
/bin
/X
</command
>.
1360 Key
: ServerArgsLocal
1364 Instance
: :*/"-nolisten tcp"
1367 Additional arguments for the
&X
-Server
;s for local sessions.
1368 This string is subject to word splitting.
1370 Key
: ServerArgsRemote
1377 Additional arguments for the
&X
-Server
;s for remote sessions.
1378 This string is subject to word splitting.
1381 If
: defined(HAVE_VTS
)
1384 User
: core(reqSrvVT
)
1387 The VT the
&X
-Server
; should run on
; auto
-assign if zero
, don
't assign if -1.
1388 Better leave it zero and use ServerVTs.
1390 The VT the &X-Server; should run on.
1391 <option>ServerVTs</option> should be used instead of this option.
1392 Leave it zero to let &kdm; assign a <acronym>VT</acronym> automatically.
1393 Set it to <literal>-1</literal> to avoid assigning a <acronym>VT</acronym>
1394 alltogether - this is required for setups with multiple physical consoles.
1395 Currently Linux only.
1398 If: !defined(HAVE_VTS)
1402 Instance: :0/DEF_SERVER_TTY
1404 The TTY line (without /dev/) the &X-Server; covers physically.
1406 This option is for <acronym>OS</acronym>s without support for
1407 <acronym>VT</acronym>s, either by &kdm; or the <acronym>OS</acronym> itself.
1408 Currently this applies to all <acronym>OS</acronym>s but Linux.
1410 When &kdm; switches to console mode, it starts monitoring this
1411 <acronym>TTY</acronym> line (specified without the leading
1412 <literal>/dev/</literal>) for activity. If the line is not used for some time,
1413 &kdm; switches back to the X login.
1423 Ping remote display every that many minutes.
1425 See <option>PingTimeout</option>.
1435 Wait for a Pong that many minutes.
1437 To discover when <emphasis>remote</emphasis> displays disappear, &kdm;
1438 regularly pings them.
1439 <option>PingInterval</option> specifies the time (in minutes) between the
1440 pings and <option>PingTimeout</option> specifies the maximum amount of
1441 time (in minutes) to wait for the terminal to respond to the request. If
1442 the terminal does not respond, the session is declared dead and terminated.
1444 If you frequently use X terminals which can become isolated from
1445 the managing host, you may wish to increase the timeout. The only worry
1446 is that sessions will continue to exist after the terminal has been
1447 accidentally disabled.
1449 Key: TerminateServer
1456 Restart instead of resetting the local &X-Server; after session exit.
1457 Use it if the server leaks memory etc.
1459 Whether &kdm; should restart the local &X-Server; after session exit instead
1460 of resetting it. Use this if the &X-Server; leaks memory or crashes the system
1466 CDefault: 1 (SIGHUP)
1471 The signal needed to reset the local &X-Server;.
1473 The signal number to use to reset the local &X-Server;.
1478 CDefault: 15 (SIGTERM)
1483 The signal needed to terminate the local &X-Server;.
1485 The signal number to use to terminate the local &X-Server;.
1494 Create X-authorizations for local displays.
1496 Controls whether &kdm; generates and uses authorization for
1497 <emphasis>local</emphasis> &X-Server; connections.
1498 For &XDMCP; displays the authorization requested by the display is used;
1499 foreign non-&XDMCP; displays do not support authorization at all.
1503 Default: DEF_AUTH_NAME
1508 Which X-authorization mechanisms should be used.
1510 If <option>Authorize</option> is true, use the authorization mechanisms
1511 listed herein. The MIT-MAGIC-COOKIE-1 authorization is always available;
1512 XDM-AUTHORIZATION-1, SUN-DES-1 and MIT-KERBEROS-5 might be available as well,
1513 depending on the build configuration.
1522 Need to reset the &X-Server; to make it read initial Xauth file.
1524 Some <emphasis>old</emphasis> &X-Server;s re-read the authorization file
1525 at &X-Server; reset time, instead of when checking the initial connection.
1526 As &kdm; generates the authorization information just before connecting to
1527 the display, an old &X-Server; would not get up-to-date authorization
1528 information. This option causes &kdm; to send SIGHUP to the &X-Server;
1529 after setting up the file, causing an additional &X-Server; reset to occur,
1530 during which time the new authorization information will be read.
1535 User: core(clientAuthFile)
1539 The name of this &X-Server;'s Xauth file.
1540 If empty
, a random name in the AuthDir directory will be used.
1542 This file is used to communicate the authorization data from
&kdm
; to
1543 the
&X
-Server
;, using the
<option
>-auth
</option
> &X
-Server
; command line
1544 option. It should be kept in a directory which is not world
-writable
1545 as it could easily be removed
, disabling the authorization mechanism in
1546 the
&X
-Server
;. If not specified
, a random name is generated from
1547 <option
>AuthDir
</option
> and the name of the display.
1550 # XXX strictly speaking this is supposed to be a string list
, i think.
1555 Update
: cp_resources
1558 Specify a file with X
-resources for the greeter
, chooser and background.
1559 The KDE frontend does not use this file
, so you do not need it unless you
1560 use another background generator than krootimage.
1562 This option specifies the name of the file to be loaded by
1563 <command
>xrdb
</command
> as the resource database onto the root window
1564 of screen
0 of the display. KDE programs generally do not use
1565 X
-resources
, so this option is only needed if the
<option
>Setup
</option
>
1566 program needs some X
-resources.
1570 Default
: XBINDIR
"/xrdb"
1575 The xrdb program to use to read the above specified recources.
1576 Subject to word splitting.
1578 The
<command
>xrdb
</command
> program to use to read the X
-resources file
1579 specified in
<option
>Recources
</option
>.
1580 The command is subject to word splitting.
1586 # will be overwritten
1591 A program to run before the greeter is shown. Can be used to start an
1592 xconsole or an alternative background generator. Subject to word splitting.
1594 This string is subject to word splitting.
1595 It specifies a program which is
run (as
1596 <systemitem class
="username">root
</systemitem
>) before offering the
1597 greeter window. This may be used to change the appearance of the screen
1598 around the greeter window or to put up other
windows (e.g.
, you may want
1599 to run
<command
>xconsole
</command
> here
).
1600 Usually
, a script named
<command
>Xsetup
</command
> is used here.
1601 See
<xref linkend
="kdmrc-xsetup"/>.
1607 # will be overwritten
1612 A program to run before a user session starts. Subject to word splitting.
1614 This string is subject to word splitting.
1615 It specifies a program which is
run (as
1616 <systemitem class
="username">root
</systemitem
>) after the user
1617 authentication process succeeds.
1618 Usually
, a script named
<command
>Xstartup
</command
> is used here.
1619 See
<xref linkend
="kdmrc-xstartup"/>.
1625 # will be overwritten
1630 A program to run after a user session exits. Subject to word splitting.
1632 This string is subject to word splitting.
1633 It specifies a program which is
run (as
1634 <systemitem class
="username">root
</systemitem
>) after the session
1636 Usually
, a script named
<command
>Xreset
</command
> is used here.
1637 See
<xref linkend
="kdmrc-xreset"/>.
1641 Default
: XBINDIR
"/xterm -ls -T"
1642 #Merge
: xdm
- incompatible
!
1644 # will be overwritten
1648 The program which is run as the user which logs in. It is supposed to
1649 interpret the session
argument (see SessionsDirs
) and start an appropriate
1650 session according to it. Subject to word splitting.
1652 This string is subject to word splitting.
1653 It specifies the session program to be
executed (as the user owning
1655 Usually
, a script named
<command
>Xsession
</command
> is used here.
1656 See
<xref linkend
="kdmrc-xsession"/>.
1660 Default
: XBINDIR
"/xterm"
1665 The program to run if Session fails.
1667 If the
<option
>Session
</option
> program fails to execute
, &kdm
; will
1668 fall back to this program. This program is executed with no arguments
,
1669 but executes using the same environment variables as the session would
1670 have
had (see
<xref linkend
="kdmrc-xsession"/>).
1674 Default
: DEF_USER_PATH
1680 The PATH for the Session program.
1682 The
<envar
>PATH
</envar
> environment variable for
1683 non
-<systemitem class
="username">root
</systemitem
> <option
>Session
</option
>s.
1685 The default depends on the system
&kdm
; was built on.
1689 Default
: DEF_SYSTEM_PATH
1695 The PATH for Setup
, Startup and Reset
, etc.
1697 The
<envar
>PATH
</envar
> environment variable for all programs but
1698 non
-<systemitem class
="username">root
</systemitem
>
1699 <option
>Session
</option
>s. Note that it is good practice not to include
1700 <literal
>.
</literal
> (the current directory
) into this entry.
1702 The default depends on the system
&kdm
; was built on.
1708 Instance
: #
*/"/bin/bash"
1711 The default system shell.
1713 The
<envar
>SHELL
</envar
> environment variable for all programs but the
1714 <option
>Session
</option
>.
1723 Where to put the user
's &X-Server; authorization file if ~/.Xauthority
1726 When &kdm; is unable to write to the usual user authorization file
1727 ($<envar>HOME</envar>/.Xauthority), it creates a unique file name in this
1728 directory and points the environment variable <envar>XAUTHORITY</envar>
1729 at the created file.
1731 Key: ForceUserAuthDir
1738 If true, <option>UserAuthDir</option> will be used unconditionally.
1747 Whether to automatically restart sessions after &X-Server; crashes.
1748 Note that enabling this makes circumventing screen lockers other than
1749 KDE's built
-in one possible
!
1751 If enabled
, &kdm
; will automatically restart a session after an
&X
-Server
;
1752 crash (or if it is killed by Alt
-Ctrl
-BackSpace
). Note that enabling this
1753 feature opens a security hole
: a secured display lock can be circumvented
1754 (unless
&kde
;'s built-in screen locker is used).
1760 User: greeter(showRoot)
1766 If disabled, do not allow <systemitem class="username">root</systemitem>
1767 (and any other user with UID = 0) to log in directly.
1769 Key: AllowNullPasswd
1778 Allow to log in, when user has set an empty password?
1780 If disabled, only users that have passwords assigned can log in.
1784 None/SHUT_NONE: no <guilabel>Shutdown...</guilabel> menu entry is shown at all
1785 Root/SHUT_ROOT: the <systemitem class="username">root</systemitem> password must be entered to shut down
1786 All/SHUT_ALL: everybody can shut down the machine
1792 Merge: kdm:-Greeter/
1795 Who is allowed to shut down the system. This applies both to the
1796 greeter and to the command sockets.
1798 Key: AllowSdForceNow
1800 None: no forced shutdown is allowed at all
1801 Root: the <systemitem class="username">root</systemitem> password must be entered to shut down forcibly
1802 All: everybody can shut down the machine forcibly
1804 User: core(allowNuke)
1805 User: greeter(allowNuke)
1809 Who is allowed to abort active sessions when shutting down.
1813 Schedule: shut down after all active sessions exit (possibly at once)
1814 TryNow: shut down, if no active sessions are open; otherwise, do nothing
1815 ForceNow: shut down unconditionally
1817 User: core(defSdMode)
1818 User: greeter(defSdMode)
1819 Instance: #*/ForceNow
1822 The default choice for the shutdown condition/timing.
1826 Never/SHUT_NEVER: not at all
1827 Optional/SHUT_OPTION: as a button in the simple shutdown dialogs
1828 Always/SHUT_ALWAYS: instead of the simple shutdown dialogs
1831 Instance: #*/Optional
1834 How to offer shutdown scheduling options:
1843 Enable password-less logins on this display. <emphasis>Use with extreme care!</emphasis>
1848 PostProc: PnoPassUsers
1850 Instance: #:*/"fred,ethel"
1851 Merge: xdm(P_noPassUsers)
1853 The users that do not need to provide a password to log in. NEVER list root!
1854 "*" means all non-root users. @<group> means all users in that group.
1856 The users that do not need to provide a password to log in.
1857 Items which are prefixed with <literal>@</literal> represent all users in the
1858 user group named by that item.
1859 <literal>*</literal> means all users but
1860 <systemitem class="username">root</systemitem>
1861 (and any other user with UID = 0).
1862 <emphasis>Never</emphasis> list <systemitem class="username">root</systemitem>.
1864 Key: AutoLoginEnable
1871 Enable automatic login. <emphasis>Use with extreme care!</emphasis>
1876 User: core(autoAgain)
1881 If true, auto-login after logout. If false, auto-login is performed only
1882 when a display session starts up.
1887 User: core(autoDelay)
1891 The delay in seconds before automatic login kicks in.
1893 The delay in seconds before automatic login kicks in. This is also known as
1894 <quote>Timed Login</quote>.
1899 PostProc: PautoLoginX
1900 User: core(autoUser)
1902 Instance: #:0/"fred"
1903 Merge: xdm:autoUser(P_autoUser)
1906 The user to log in automatically. <emphasis>Never</emphasis> specify <systemitem class="username">root</systemitem>!
1911 PostProc: PautoLoginX
1912 User: core(autoPass)
1913 Instance: #:0/"secret!"
1914 Merge: xdm:autoPass(P_autoPass)
1917 The password for the user to log in automatically. This is <emphasis>not</emphasis> required
1918 unless the user is logged into a <acronym>NIS</acronym> or Kerberos domain. If you use this
1919 option, you should <command>chmod <option>600</option> <filename>kdmrc</filename></command> for obvious reasons.
1921 Key: AutoLoginLocked
1924 User: core(autoLock)
1928 Immediately lock the automatically started session. This works only with
1933 Default: *KDMDATA "/sessions"
1936 Instance: */KDMCONF "/sessions," KDMDATA "/sessions"
1937 Update: upd_sessionsdirs
1939 The directories containing session type definitions in .desktop format,
1940 ordered by falling priority.
1942 A list of directories containing session type definitions.
1943 Ordered by falling priority.
1944 # See <xref linkend="kdmrc-sessions"> for details.
1948 Default: ".xsession-errors"
1950 Instance: */".xsession-errors-%d"
1951 Instance: :0/".xsession-errors"
1952 Update: upd_userlogfile
1954 The file (relative to $HOME) to redirect the session output to. The
1955 following character pairs are replaced:
1956 - %d -> current display
1957 - %u -> current user
1958 - %r -> empty at first. See below.
1960 When the constructed filename cannot be used safely and the specification
1961 contains %<stuff>r, other names will be tried - this time expanding %<stuff>r
1962 to <stuff> followed by a random number.
1964 The file (relative to the user's home directory
) to redirect the session
1967 The following character pairs are replaced by their value
:
1970 <term
><parameter
>%d
</parameter
></term
>
1971 <listitem
><para
>name of the current display
</para
></listitem
>
1974 <term
><parameter
>%u
</parameter
></term
>
1975 <listitem
><para
>login name of the current user
</para
></listitem
>
1978 <term
><parameter
>%r
</parameter
></term
>
1979 <listitem
><para
>empty at first. See below.
</para
></listitem
>
1982 <term
><parameter
>%%</parameter
></term
>
1983 <listitem
><para
>a single
<literal
>%</literal
></para
></listitem
>
1986 When the constructed filename cannot be used safely and the specification
1988 <literal
>%</literal
><replaceable
>stuff
</replaceable
><literal
>r
</literal
>,
1989 other names will be tried
- this time expanding
1990 <literal
>%</literal
><replaceable
>stuff
</replaceable
><literal
>r
</literal
>
1991 to
<replaceable
>stuff
</replaceable
> followed by a random number.
1993 Key
: ClientLogFallback
1995 Default
: "/tmp/xerr-%u-%d%-r"
1997 Instance
: #
*/"/var/log/xsession-errors/%u-%d%-r"
2000 Fallback when
<option
>ClientLogFile
</option
> cannot be used. The same expansions are
2001 supported.
<emphasis
>Do not
</emphasis
> use relative paths here.
2009 Whether
&kdm
;'s built-in utmp/wtmp/lastlog registration should be used.
2011 Specify whether &kdm;'s built
-in utmp
/wtmp
/lastlog registration should
2012 be used. If it is not
, the tool
<command
>sessreg
</command
> should be used
2013 in the
<option
>Startup
</option
> and
<option
>Reset
</option
> scripts
, or
,
2014 alternatively
, the pam_lastlog module should be used on
2015 <acronym
>PAM
</acronym
>-enabled systems.
2020 This section class contains options concerning the configuration
2021 of the
&kdm
; frontend (greeter
).
2027 Instance
: #
*/"Plastique"
2028 Update
: upd_guistyle
2031 Specify the widget style for the greeter. Empty means to use the
2032 built
-in default which currently is
<literal
>Oxygen
</literal
>.
2038 Instance
: #
*/"MidnightMeadow"
2041 Specify the widget color scheme for the greeter. Empty means to use the
2042 built
-in default which currently is
<literal
>Oxygen
</literal
>.
2046 None
/LOGO_NONE
: nothing
2047 Logo
/LOGO_LOGO
: the image specified by
<option
>LogoPixmap
</option
>
2048 Clock
/LOGO_CLOCK
: a neat analog clock
2053 What should be shown in the greeter
's logo are:
2055 What should be shown in the greeter righthand of the input lines (if
2056 <option>UserList</option> is disabled) or above them (if
2057 <option>UserList</option> is enabled):
2063 Instance: */KDMDATA "/pics/kdelogo.png"
2065 The image to show when LogoArea=Logo.
2067 The image to show in the greeter if <option>LogoArea</option> is
2068 <literal>Logo</literal>.
2074 Instance: #*/"30,40"
2076 The relative coordinates (X,Y in percent) of the center of the greeter.
2078 The relative coordinates (percentages of the screen size; X,Y) at which
2079 the center of the greeter is put. &kdm; aligns the greeter to the edges
2080 of the screen it would cross otherwise.
2089 The screen the greeter should be displayed on in multi-headed and Xinerama
2090 setups. The numbering starts with 0. For Xinerama, it corresponds to the
2091 listing order in the active ServerLayout section of XF86Config; -1 means
2092 to use the upper-left screen, -2 means to use the upper-right screen.
2096 Default: "Welcome to %s at %n"
2098 Instance: #*/"K Desktop Environment (%n)"
2100 The headline in the greeter. The following character pairs are replaced:
2101 - %d -> current display
2102 - %h -> host name, possibly with domain name
2103 - %n -> node name, most probably the host name without domain name
2104 - %s -> the operating system
2105 - %r -> the operating system's version
2106 - %m
-> the
machine (hardware
) type
2109 The headline in the greeter. An empty greeting means none at all.
2111 The following character pairs are replaced by their value
:
2114 <term
><parameter
>%d
</parameter
></term
>
2115 <listitem
><para
>name of the current display
</para
></listitem
>
2118 <term
><parameter
>%h
</parameter
></term
>
2119 <listitem
><para
>local host name
, possibly with the
2120 domain name
</para
></listitem
>
2123 <term
><parameter
>%n
</parameter
></term
>
2124 <listitem
><para
>local node name
, most probably the host name without the
2125 domain name
</para
></listitem
>
2128 <term
><parameter
>%s
</parameter
></term
>
2129 <listitem
><para
>operating system
</para
></listitem
>
2132 <term
><parameter
>%r
</parameter
></term
>
2133 <listitem
><para
>operating system version
</para
></listitem
>
2136 <term
><parameter
>%m
</parameter
></term
>
2137 <listitem
><para
>machine (hardware
) type
</para
></listitem
>
2140 <term
><parameter
>%%</parameter
></term
>
2141 <listitem
><para
>a single
<literal
>%</literal
></para
></listitem
>
2145 # This needs to come _in front_ of the font settings to be effective
!
2153 Whether the fonts used in the greeter should be antialiased.
2157 Default
: "Serif,20,5,0,50,0"
2158 CDefault
: "Serif,20,bold"
2160 Instance
: #
*/"Serif,20,5,0,50,0"
2163 The font for the greeter headline.
2167 Default
: "Sans Serif,10,5,0,50,0"
2168 CDefault
: "Sans Serif,10"
2169 User
: greeter(normalFont
):font
2170 Instance
: #
*/"Sans Serif,10,5,0,50,0"
2173 The normal font used in the greeter.
2177 Default
: "Sans Serif,10,5,0,75,0"
2178 CDefault
: "Sans Serif,10,bold"
2180 Instance
: #
*/"Sans Serif,10,5,0,75,0"
2183 The font used for the
<quote
>Login Failed
</quote
> message.
2189 Keep
: do not change the state
2191 User
: greeter(numLockStatus
)
2195 What to do with the Num Lock modifier for the time the greeter is running
:
2201 Instance
: #
*/"de_DE"
2202 Update
: upd_language
2205 Language and locale to use in the greeter
, encoded like $
<envar
>LANGUAGE
</envar
>.
2206 If empty
, the settings from the environment are used.
2215 Enable autocompletion in the username line edit.
2223 Enable user
list (names along with images
) in the greeter.
2225 Show a user list with unix login names
, real names
, and images in the greeter.
2229 NotHidden
/SHOW_ALL
: all users except those listed in HiddenUsers
2230 Selected
/SHOW_SEL
: only the users listed in SelectedUsers
2233 Instance
: #
*/Selected
2234 Update
: upd_showusers
2236 User selection for UserCompletion and UserList
:
2238 This option controls which users will be shown in the user view
2239 (<option
>UserList
</option
>) and
/or offered for autocompletion
2240 (<option
>UserCompletion
</option
>).
2241 If it is
<literal
>Selected
</literal
>, <option
>SelectedUsers
</option
> contains
2242 the final list of users.
2243 If it is
<literal
>NotHidden
</literal
>, the initial user list contains all
2244 users found on the system. Users contained in
<option
>HiddenUsers
</option
> are
2245 removed from the list
, just like all users with a UID greater than specified
2246 in
<option
>MaxShowUID
</option
> and users with a non
-zero UID less than
2247 specified in
<option
>MinShowUID
</option
>.
2248 Items in
<option
>SelectedUsers
</option
> and
<option
>HiddenUsers
</option
>
2249 which are prefixed with
<literal
>@
</literal
> represent all users in the
2250 user group named by that item.
2251 Finally
, the user list will be sorted alphabetically
, if
2252 <option
>SortUsers
</option
> is enabled.
2257 User
: greeter
-c(users
)
2258 Instance
: #
*/"root,johndoe"
2261 For ShowUsers
=Selected. @
<group
> means all users in that group.
2263 See
<option
>ShowUsers
</option
>.
2268 User
: greeter
-c(noUsers
)
2270 # depends on
{Min
,Max
}ShowUID
2271 Update
: upd_hiddenusers
/1
2274 For ShowUsers
=NotHidden. @
<group
> means all users in that group.
2276 See
<option
>ShowUsers
</option
>.
2281 User
: greeter(lowUserId
)
2282 # will be overwritten
2284 Update
: upd_minshowuid
2286 Special case of HiddenUsers
: users with a non
-zero UID less than this number
2287 will not be shown as well.
2289 See
<option
>ShowUsers
</option
>.
2294 User
: greeter(highUserId
)
2295 # will be overwritten
2297 Update
: upd_maxshowuid
2299 Complement to MinShowUID
: users with a UID greater than this number will
2300 not be shown as well.
2302 See
<option
>ShowUsers
</option
>.
2310 If false
, the users are listed in the order they appear in
/etc
/passwd.
2311 If true
, they are sorted alphabetically.
2313 See
<option
>ShowUsers
</option
>.
2317 AdminOnly
/FACE_ADMIN_ONLY
: from
<filename
><
;<option
>FaceDir
</option
>>
;/$
<envar
>USER
</envar
>.face
[.icon
]</filename
>
2318 PreferAdmin
/FACE_PREFER_ADMIN
: prefer
<
;<option
>FaceDir
</option
>>
;, fallback on $
<envar
>HOME
</envar
>
2319 PreferUser
/FACE_PREFER_USER
: ... and the other way round
2320 UserOnly
/FACE_USER_ONLY
: from the user
's <filename>$<envar>HOME</envar>/.face[.icon]</filename>
2323 Instance: #*/PreferUser
2325 Specify, where the users' pictures should be taken from.
2327 If
<option
>UserList
</option
> is enabled
, this specifies where
&kdm
; gets the
2332 The images can be in any format Qt recognizes
, but the filename
2333 must match
&kdm
;'s expectations: <literal>.face.icon</literal> should be a
2334 48x48 icon, while <literal>.face</literal> should be a 300x300 image.
2335 Currently the big image is used only as a fallback and is scaled down,
2336 but in the future it might be displayed full-size in the logo area or a
2341 Default: *KDMDATA "/faces"
2343 Instance: #*/"/usr/share/faces"
2346 The directory containing the user images if FaceSource is not UserOnly.
2348 See <option>FaceSource</option>.
2352 None/PRESEL_NONE: do not preselect any user
2353 Previous/PRESEL_PREV: the user which successfully logged in last time
2354 Default/PRESEL_DEFAULT: the user specified in the <option>DefaultUser</option> option
2356 User: greeter(preselUser)
2357 Instance: #*/Previous
2358 Instance: :*/Previous
2359 Instance: #:0/Default
2361 Specify, if/which user should be preselected for log in.
2363 Specify, if/which user should be preselected for log in:
2367 If <option>FocusPasswd</option> is enabled and a user was preselected,
2368 the cursor is placed in the password input field automatically.
2370 <note><para>Enabling user preselection can be considered a security hole,
2371 as it presents a valid login name to a potential attacker, so he
2372 <quote>only</quote> needs to guess the password. On the other hand,
2373 one could set <option>DefaultUser</option> to a fake login name.</para></note>
2380 Instance: #:0/"johndoe"
2382 The user to preselect if PreselectUser=Default.
2384 See <option>PreselectUser</option>.
2393 If this is true, the password input line is focused automatically if
2394 a user is preselected.
2396 See <option>PreselectUser</option>.
2403 Merge: kdm:EchoMode(P_EchoMode)
2406 If this is true, the entered password is echoed as bullets. Otherwise,
2407 no feedback is given at all.
2415 If true, krootimage will be automatically started by &kdm;; otherwise, the
2416 Setup script should be used to setup the background.
2418 If enabled, &kdm; will automatically start the <command>krootimage</command>
2419 program to set up the background; otherwise, the <option>Setup</option>
2420 program is responsible for the background.
2424 Default: *KDMCONF "/backgroundrc"
2429 The configuration file to be used by krootimage.
2431 The configuration file to be used by <command>krootimage</command>.
2432 It contains a section named <literal>[Desktop0]</literal> like
2433 <filename>kdesktoprc</filename> does. Its options are not described
2434 herein; guess their meanings or use the control center.
2442 Hold the &X-Server; grabbed the whole time the greeter is visible. This
2443 may be more secure, but it will disable any background and other
2444 X-clients started from the Setup script.
2446 To improve security, the greeter grabs the &X-Server; and then the keyboard
2447 when it starts up. This option specifies if the &X-Server; grab should be held
2448 for the duration of the name/password reading. When disabled, the &X-Server;
2449 is ungrabbed after the keyboard grab succeeds; otherwise, the &X-Server; is
2450 grabbed until just before the session begins.
2452 <note><para>Enabling this option disables <option>UseBackground</option> and
2453 <option>Setup</option>.</para></note>
2462 How many seconds to wait for grab to succeed.
2464 This option specifies the maximum time &kdm; will wait for the grabs to
2465 succeed. A grab may fail if some other X-client has the &X-Server; or the
2466 keyboard grabbed, or possibly if the network latencies are very high. You
2467 should be cautious when raising the timeout, as a user can be spoofed by
2468 a look-alike window on the display. If a grab fails, &kdm; kills and
2469 restarts the &X-Server; (if possible) and the session.
2478 Warn, if display has no X-authorization (local auth cannot be created,
2479 &XDMCP; display wants no auth, or display is foreign from StaticServers).
2481 Warn, if a display has no X-authorization. This will be the case if
2484 the authorization file for a local &X-Server; could not be created,
2487 a remote display from &XDMCP; did not request any authorization or
2490 the display is a <quote>foreign</quote> display specified in
2491 <option>StaticServers</option>.
2498 LocalOnly/LOGIN_LOCAL_ONLY: only local login possible
2499 DefaultLocal/LOGIN_DEFAULT_LOCAL: start up in local mode, but allow switching to remote mode
2500 DefaultRemote/LOGIN_DEFAULT_REMOTE: ... and the other way round
2501 RemoteOnly/LOGIN_REMOTE_ONLY: only choice of remote host possible
2505 Instance: :*/DefaultLocal
2506 # from make_it_cool branch and SuSE 8.1
2507 Merge: kdm:EnableChooser(P_EnableChooser)
2510 Specify whether the greeter of local displays should start up in host chooser
2511 (remote) or login (local) mode and whether it is allowed to switch to the
2519 Instance: #:*/"*,ugly,sky,dino,kiste.local,login.crap.com"
2521 A list of hosts to be automatically added to the remote login menu. The
2522 special name "*" means broadcast.
2524 A list of hosts to be automatically added to the remote login menu.
2525 The special name <literal>*</literal> means broadcast.
2526 Has no effect if <option>LoginMode</option> is <literal>LocalOnly</literal>.
2533 Update: upd_forgingseed
2535 Random seed for forging saved session types, etc. of unknown users.
2536 This value should be random but constant across the login domain.
2538 Use this number as a random seed when forging saved session types, etc. of
2539 unknown users. This is used to avoid telling an attacker about existing users
2540 by reverse conclusion. This value should be random but constant across the
2544 If: defined(WITH_KDM_XCONSOLE)
2550 Enable &kdm;'s built
-in xconsole. Note that this can be enabled for only
2551 one display at a time.
2553 Enable
&kdm
;'s built-in <command>xconsole</command>.
2554 Note that this can be enabled for only one display at a time.
2555 This option is available only if &kdm; was <command>configure</command>d
2556 with <option>--enable-kdm-xconsole</option>.
2559 If: defined(WITH_KDM_XCONSOLE)
2563 Instance: :0/"/dev/xconsole"
2565 The data source for &kdm;'s built
-in xconsole.
2566 If empty
, a console log redirection is requested from
/dev
/console.
2568 The data source for
&kdm
;'s built-in <command>xconsole</command>.
2569 If empty, a console log redirection is requested from
2570 <filename>/dev/console</filename>.
2571 Has no effect if <option>ShowLog</option> is disabled.
2579 Specify conversation plugins for the login dialog. Each plugin can be
2580 specified as a base name (which expands to $kde_modulesdir/kgreet_$base)
2581 or as a full pathname.
2583 Specify conversation plugins for the login dialog; the first in the list
2584 is selected initially.
2585 Each plugin can be specified as a base name (which expands to
2586 <filename>$<envar>kde_modulesdir</envar>/kgreet_<replaceable>base</replaceable></filename>)
2587 or as a full pathname.
2589 Conversation plugins are modules for the greeter which obtain authentication
2590 data from the user. Currently only the <literal>classic</literal> plugin is
2591 shipped with &kde;; it presents the well-known username and password form.
2593 Key: PluginsShutdown
2597 Instance: #*/"modern"
2600 Same as <option>PluginsLogin</option>, but for the shutdown dialog.
2606 Instance: #*/"SomeKey=randomvalue,Foo=bar"
2608 A list of options of the form Key=Value. The conversation plugins can query
2609 these settings; it is up to them what possible keys are.
2611 A list of options of the form
2612 <replaceable>Key</replaceable><literal>=</literal><replaceable>Value</replaceable>.
2613 The conversation plugins can query these settings; it is up to them what
2619 User: greeter(hasConsole)
2623 Show the <guilabel>Console Login</guilabel> action in the greeter (if <option>ServerTTY</option>/<option>ConsoleTTYs</option>
2633 Show the <guilabel>Restart X Server</guilabel>/<guilabel>Close Connection</guilabel> action in the greeter.
2639 Instance: */KDE_BINDIR "/preloadkde"
2640 Update: upd_preloader
2643 A program to run while the greeter is visible. It is supposed to preload
2644 as much as possible of the session that is going to be started (most
2654 Whether the greeter should be themed.
2660 Instance: */KDMDATA "/themes/oxygen"
2663 The theme to use for the greeter. Can point to either a directory or an XML