source: gnome/add/gdm.xml@ df8d7e93

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since df8d7e93 was fc516d9, checked in by Wayne Blaszczyk <wblaszcz@…>, 15 years ago

Fixed GDM greeter shutdown problem.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@8026 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 15.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY gdm-download-http "&gnome-download-http;/gdm/&gnome-version;/gdm-&gdm-version;.tar.bz2">
8 <!ENTITY gdm-download-ftp "&gnome-download-ftp;/gdm/&gnome-version;/gdm-&gdm-version;.tar.bz2">
9 <!ENTITY gdm-md5sum "c2c15f8b741962f278fa7e790aaa9a2b">
10 <!ENTITY gdm-size "2.4 MB">
11 <!ENTITY gdm-buildsize "52 MB">
12 <!ENTITY gdm-time "0.5 SBU">
13]>
14
15<sect1 id="gdm" xreflabel="GDM-&gdm-version;">
16 <?dbhtml filename="gdm.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>GDM-&gdm-version;</title>
24
25 <indexterm zone="gdm">
26 <primary sortas="a-GDM">GDM</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to GDM</title>
31
32 <para>The <application>GDM</application> package contains
33 <application>GNOME</application>'s Display Manager daemon. This is
34 useful for allowing configurable graphical logins.</para>
35
36 &lfs65_checked;
37
38 <bridgehead renderas="sect3">Package Information</bridgehead>
39 <itemizedlist spacing="compact">
40 <listitem>
41 <para>Download (HTTP): <ulink url="&gdm-download-http;"/></para>
42 </listitem>
43 <listitem>
44 <para>Download (FTP): <ulink url="&gdm-download-ftp;"/></para>
45 </listitem>
46 <listitem>
47 <para>Download MD5 sum: &gdm-md5sum;</para>
48 </listitem>
49 <listitem>
50 <para>Download size: &gdm-size;</para>
51 </listitem>
52 <listitem>
53 <para>Estimated disk space required: &gdm-buildsize;</para>
54 </listitem>
55 <listitem>
56 <para>Estimated build time: &gdm-time;</para>
57 </listitem>
58 </itemizedlist>
59
60 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
61 <itemizedlist spacing="compact">
62 <listitem>
63 <para>Required patch: <ulink
64 url="&patch-root;/gdm-&gdm-version;-libxklavier-&libxklavier-version;-1.patch"/></para>
65 </listitem>
66 <listitem>
67 <para>Required patch: <ulink
68 url="&patch-root;/gdm-&gdm-version;-sysconfdir-1.patch"/></para>
69 </listitem>
70 </itemizedlist>
71
72 <bridgehead renderas="sect3">GDM Dependencies</bridgehead>
73
74 <bridgehead renderas="sect4">Required</bridgehead>
75 <para role="required"><xref linkend="dbus-glib"/>,
76 <xref linkend="GConf"/>, and
77 <xref linkend="gnome-panel"/></para>
78
79 <bridgehead renderas="sect4">Recommended</bridgehead>
80 <para role="recommended"><xref linkend="consolekit"/>
81 (Required for Shutdown/Restart functionality)</para>
82
83 <bridgehead renderas="sect4">Optional</bridgehead>
84 <para role="optional"><xref linkend="intltool"/>,
85 <xref linkend="linux-pam"/>,
86 <xref linkend="tcpwrappers"/>, and
87 <ulink url="http://hal.freedesktop.org/releases/">polkit-gnome</ulink></para>
88
89 <para condition="html" role="usernotes">User Notes:
90 <ulink url="&blfs-wiki;/gdm"/></para>
91
92 </sect2>
93
94 <sect2 role="installation">
95 <title>Installation of GDM</title>
96
97 <para>It is recommended to have a dedicated user and group to take
98 control of the <command>gdm-binary</command> daemon after it is
99 started. Issue the following commands as the
100 <systemitem class="username">root</systemitem> user:</para>
101
102<screen role='root'><userinput>groupadd -g 21 gdm &amp;&amp;
103useradd -c "GDM Daemon Owner" -d /var/lib/gdm \
104 -g gdm -s /bin/false -u 21 gdm</userinput></screen>
105
106 <para>Install <application>GDM</application> by running
107 the following commands as an unprivileged user:</para>
108
109<screen><userinput>patch -Np1 -i ../gdm-&gdm-version;-libxklavier-&libxklavier-version;-1.patch &amp;&amp;
110patch -Np1 -i ../gdm-&gdm-version;-sysconfdir-1.patch &amp;&amp;
111./configure --prefix=$(pkg-config --variable=prefix ORBit-2.0) \
112 --sysconfdir=&gnome-etc-dir; \
113 --localstatedir=/var \
114 --libexecdir=$(pkg-config \
115 --variable=prefix ORBit-2.0)/lib/gdm \
116 --with-pam-prefix=/etc &amp;&amp;
117make</userinput></screen>
118
119 <para>This package does not come with a test suite.</para>
120
121 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
122
123<screen role='root'><userinput>make install &amp;&amp;
124ln -s $(pkg-config --variable=prefix \
125 ORBit-2.0)/lib/gnome-settings-daemon/gnome-settings-daemon $(pkg-config \
126 --variable=prefix ORBit-2.0)/lib/gdm &amp;&amp;
127ln -s $(pkg-config --variable=prefix \
128 ORBit-2.0)/lib/ConsoleKit/ck-get-x11-display-device $(pkg-config \
129 --variable=prefix ORBit-2.0)/lib/gdm
130</userinput></screen>
131
132 </sect2>
133
134 <sect2 role="commands">
135 <title>Command Explanations</title>
136
137 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
138 href="../../xincludes/gnome-prefix.xml"/>
139
140 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
141 href="../../xincludes/gnome-sysconfdir.xml"/>
142
143 <para><parameter>--localstatedir=/var</parameter>: This command
144 puts files in <filename class="directory">/var</filename> instead of
145 <filename class="directory">$GNOME_PREFIX/var</filename>.</para>
146
147 <para><parameter>--libexecdir=$(pkg-config
148 --variable=prefix ORBit-2.0)/lib/gdm</parameter>: This parameter is
149 used so that the <application>GDM</application> internal support programs
150 are installed in the preferred location of
151 <filename class='directory'>$GNOME_PREFIX/lib/gdm</filename> instead
152 of <filename class='directory'>$GNOME_PREFIX/libexec</filename>.</para>
153
154 <para><parameter>--with-pam-prefix=/etc</parameter>: This command puts
155 <application>PAM</application> configuration files in
156 <filename class="directory">/etc/pam.d</filename> instead of
157 <filename class="directory">&gnome-etc-dir;</filename>.</para>
158
159 </sect2>
160
161 <sect2 role="configuration">
162 <title>Configuring GDM</title>
163
164 <sect3 id="gdm-config">
165 <title>Config Files</title>
166
167 <para><filename>&gnome-etc-dir;/gdm/custom.conf</filename>,
168 <filename>$GNOME_PREFIX/share/gdm/defaults.conf</filename></para>
169
170 <indexterm zone="gdm gdm-config">
171 <primary sortas="e-etc-gnome-&gnome-version;&gnome-minor-version;gdm-custom.conf">
172 &gnome-etc-dir;/gdm/custom.conf</primary>
173 </indexterm>
174 <indexterm zone="gdm gdm-config">
175 <primary sortas="e-$GNOME_PREFIX-share-gdm-defaults.conf">
176 $GNOME_PREFIX/share/gdm/defaults.conf</primary>
177 </indexterm>
178
179 </sect3>
180
181 <sect3>
182 <title>Configuration Information</title>
183
184 <para>Starting with the 2.14.x version of GNOME, the default
185 configuration parameters are stored in a static file
186 (<filename><envar>$GNOME_PREFIX</envar>/share/gdm/defaults.conf</filename>).
187 This file is not intended to be edited. If modification of the
188 configuration is necessary, you should add parameters to the
189 <filename>&gnome-etc-dir;/gdm/custom.conf</filename> file. The settings
190 in this file will override the settings in the static file. The same
191 parameters in the static file are used in the configuration file.</para>
192
193 <para>The <application>GDM</application> <application>PAM</application>
194 configuration files contain modules not present in a BLFS installation.
195 If you have <application>PAM</application> installed, issue the following
196 commands as the <systemitem class="username">root</systemitem> user to
197 replace those files with files containing correctly specified
198 modules:</para>
199
200<screen role="root"><userinput>cat &gt; /etc/pam.d/gdm &lt;&lt; "EOF"
201<literal>auth required pam_unix.so
202auth requisite pam_nologin.so
203account required pam_unix.so
204password required pam_unix.so
205session required pam_unix.so</literal>
206
207EOF
208cat &gt; /etc/pam.d/gdm-autologin &lt;&lt; "EOF"
209<literal>auth required pam_env.so
210auth requisite pam_nologin.so
211auth required pam_permit.so
212account required pam_unix.so
213password required pam_unix.so
214session required pam_unix.so</literal>
215
216EOF</userinput></screen>
217
218 <indexterm zone="gdm gdm-config">
219 <primary sortas="e-etc-pam.d-gdm">/etc/pam.d/gdm</primary>
220 </indexterm>
221 <indexterm zone="gdm gdm-config">
222 <primary
223 sortas="e-etc-pam.d-gdm-autologin">/etc/pam.d/gdm-autologin</primary>
224 </indexterm>
225
226 <para id="gdm-config-dbus">If you have <application>D-BUS</application>
227 installed and you want to start the session
228 <application>D-BUS</application> daemon when you start the GNOME desktop
229 environment using <command>gdm</command>, you'll need to create a new
230 Xsession file. Create the file using the following command as the root
231 user.</para>
232
233<screen role="root"><userinput>cat &gt; $GNOME_PREFIX/share/xsessions/gnome-dbus.desktop &lt;&lt; "EOF"
234<literal>[Desktop Entry]
235Encoding=UTF-8
236Name=GNOME with D-BUS
237Comment=GNOME Desktop with D-BUS support
238Exec=dbus-launch --exit-with-session gnome-session
239TryExec=/usr/bin/dbus-launch
240Icon=
241Type=Application</literal>
242
243EOF
244chmod -v 644 $GNOME_PREFIX/share/xsessions/gnome-dbus.desktop</userinput></screen>
245
246 <para>Choose this session using the session selection dialog on the
247 display manager login screen. You also have the opportunity to make this
248 your default session.</para>
249
250 <note>
251 <para>You may use the <filename class='extension'>.desktop</filename>
252 file created above as an example to create additional
253 <filename class='extension'>.desktop</filename> files and add any other
254 desired items to the <application>GDM</application> display manager session
255 selection menu.</para>
256 </note>
257
258 <para><command>gdm</command> can be tested by executing it as the
259 <systemitem class="username">root</systemitem> user. Use the
260 <command>gdm-stop</command> command if you wish to stop the display
261 manager.</para>
262
263 </sect3>
264
265 <sect3 id="gdm-init">
266 <title>Boot Script</title>
267
268 <para>To start a graphical login when the system is booted, install the
269 <filename>/etc/rc.d/init.d/gdm</filename> init script included in the
270 <xref linkend="bootscripts"/> package. If your
271 <envar>GNOME_PREFIX</envar> environment variable is anything other than
272 <filename class='directory'>/usr</filename> or <filename
273 class='directory'>/opt/gnome-&gnome-version;&gnome-minor-version;</filename>,
274 you will need to modify the <envar>PATH</envar> statement in the script
275 to include the path where you have <application>GNOME</application>
276 installed.</para>
277
278 <indexterm zone="gdm gdm-init">
279 <primary sortas="f-gdm">gdm</primary>
280 </indexterm>
281
282<screen role="root"><userinput>make install-gdm</userinput></screen>
283
284 <para>Now edit <filename>/etc/inittab</filename> with the following
285 commands.</para>
286
287<screen role="root"><userinput>mv /etc/inittab /etc/inittab.org &amp;&amp;
288sed s/id:3:initdefault:/id:5:initdefault:/g /etc/inittab.org &gt; \
289/etc/inittab &amp;&amp;
290rm /etc/inittab.org</userinput></screen>
291
292 </sect3>
293
294 </sect2>
295
296 <sect2 role="content">
297 <title>Contents</title>
298
299 <segmentedlist>
300 <segtitle>Installed Programs</segtitle>
301 <segtitle>Installed Libraries</segtitle>
302 <segtitle>Installed Directories</segtitle>
303
304 <seglistitem>
305 <seg>gdm, gdm-binary, gdm-crash-logger, gdm-factory-slave,
306 gdmflexiserver, gdm-host-chooser, gdm-product-slave, gdm-restart,
307 gdm-safe-restart, gdm-screenshot, gdm-session-worker,
308 gdm-simple-chooser, gdm-simple-greeter, gdm-simple-slave, gdm-stop,
309 gdm-user-switch-applet, and gdm-xdmcp-chooser-slave</seg>
310 <seg>None</seg>
311 <seg>&gnome-etc-dir;/gdm{Init,PostLogin,PostSession,PreSession},
312 /var/lib/gdm/.gconf.mandatory,/var/lib/run/gdm,/var/log/gdm,
313 <envar>$GNOME_PREFIX</envar>/share/{gdm/autostart/LoginWindow,
314 gnome-2.0/ui,/gnome/help/gdm,omf/gdm}</seg>
315 </seglistitem>
316 </segmentedlist>
317
318 <variablelist>
319 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
320 <?dbfo list-presentation="list"?>
321 <?dbhtml list-presentation="table"?>
322
323 <varlistentry id="gdmflexiserver">
324 <term><command>gdmflexiserver</command></term>
325 <listitem>
326 <para>is the flexi server mechanism which allows to run GDM sessions
327 on demand, in a new virtual console.</para>
328 <indexterm zone="gdm gdmflexiserver">
329 <primary sortas="b-gdmflexiserver">gdmflexiserver</primary>
330 </indexterm>
331 </listitem>
332 </varlistentry>
333
334 <varlistentry id="gdm-screenshot">
335 <term><command>gdm-screenshot</command></term>
336 <listitem>
337 <para>is a screenshot tool.</para>
338 <indexterm zone="gdm gdm-screenshot">
339 <primary sortas="b-gdm-screenshot">gdm-screenshot</primary>
340 </indexterm>
341 </listitem>
342 </varlistentry>
343
344 <varlistentry id="gdm-prog">
345 <term><command>gdm</command></term>
346 <listitem>
347 <para>is a wrapper script to execute the
348 <application>GDM</application> binary, the configurable
349 <application>GNOME</application> based login prompt.</para>
350 <indexterm zone="gdm gdm-prog">
351 <primary sortas="b-gdm">gdm</primary>
352 </indexterm>
353 </listitem>
354 </varlistentry>
355
356 <varlistentry id="gdm-binary">
357 <term><command>gdm-binary</command></term>
358 <listitem>
359 <para>is the <application>GNOME</application> based login prompt.</para>
360 <indexterm zone="gdm gdm-binary">
361 <primary sortas="b-gdm-binary">gdm-binary</primary>
362 </indexterm>
363 </listitem>
364 </varlistentry>
365
366 <varlistentry id="gdm-restart">
367 <term><command>gdm-restart</command></term>
368 <listitem>
369 <para>sends the HUP signal to the <application>GDM</application>
370 daemon so that it restarts. It's used after the config file
371 is edited</para>
372 <indexterm zone="gdm gdm-restart">
373 <primary sortas="b-gdm-restart">gdm-restart</primary>
374 </indexterm>
375 </listitem>
376 </varlistentry>
377
378 <varlistentry id="gdm-safe-restart">
379 <term><command>gdm-safe-restart</command></term>
380 <listitem>
381 <para>sends the USR1 signal to the <application>GDM</application>
382 daemon so that it restarts. It's used after the config file
383 is edited.</para>
384 <indexterm zone="gdm gdm-safe-restart">
385 <primary sortas="b-gdm-safe-restart">gdm-safe-restart</primary>
386 </indexterm>
387 </listitem>
388 </varlistentry>
389
390 <varlistentry id="gdm-stop">
391 <term><command>gdm-stop</command></term>
392 <listitem>
393 <para>sends the TERM signal to the <application>GDM</application>
394 daemon so that it stops. It's used after the config file is
395 edited.</para>
396 <indexterm zone="gdm gdm-stop">
397 <primary sortas="b-gdm-stop">gdm-stop</primary>
398 </indexterm>
399 </listitem>
400 </varlistentry>
401
402 </variablelist>
403
404 </sect2>
405
406</sect1>
Note: See TracBrowser for help on using the repository browser.