source: x/dm/lightdm.xml@ ba4e992

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.4 9.0 9.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since ba4e992 was ecbf490, checked in by Bruce Dubbs <bdubbs@…>, 6 years ago

Update to mariadb-10.3.10.
Update to cmake-3.12.3.
Update to mercurial-4.7.2.

Install a lightdm support file with fixes
to ensure the system environment matches the environment
when starting the graphical interface from the command line.

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

  • Property mode set to 100644
File size: 14.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<!-- lightdm -->
8 <!ENTITY lightdm-download-http "https://github.com/CanonicalLtd/lightdm/releases/download/&lightdm-version;/lightdm-&lightdm-version;.tar.xz">
9 <!ENTITY lightdm-download-ftp " ">
10 <!ENTITY lightdm-md5sum "3e33b2bd15d769bbcc2e73ac94a1e1ea">
11 <!ENTITY lightdm-size "508 KB">
12 <!ENTITY lightdm-buildsize "22 MB">
13 <!ENTITY lightdm-time "0.2 SBU ">
14
15<!-- lightdm-gtk-greeter -->
16 <!ENTITY lightdm-gtk-greeter-download-http "https://launchpad.net/lightdm-gtk-greeter/2.0/&lightdm-gtk-greeter-version;/+download/lightdm-gtk-greeter-&lightdm-gtk-greeter-version;.tar.gz">
17 <!ENTITY lightdm-gtk-greeter-download-ftp " ">
18 <!ENTITY lightdm-gtk-greeter-md5sum "0274c3bf4387944d322941f85bdf91b9">
19 <!ENTITY lightdm-gtk-greeter-size "560 KB">
20 <!ENTITY lightdm-gtk-greeter-buildsize "4.9 MB">
21 <!ENTITY lightdm-gtk-greeter-time "less than 0.1 SBU ">
22]>
23
24<sect1 id="lightdm" xreflabel="lightdm-&lightdm-version;">
25 <?dbhtml filename="lightdm.html"?>
26
27 <sect1info>
28 <othername>$LastChangedBy$</othername>
29 <date>$Date$</date>
30 </sect1info>
31
32 <title>lightdm-&lightdm-version;</title>
33
34 <indexterm zone="lightdm">
35 <primary sortas="a-lightdm">lightdm</primary>
36 </indexterm>
37
38 <sect2 role="package">
39 <title>Introduction to Lightdm</title>
40
41 <para>
42 The <application>lightdm</application> package contains a lightweight
43 display manager based upon GTK.
44 </para>
45
46 &lfs83_checked;
47
48 <bridgehead renderas="sect3">Lightdm Package Information</bridgehead>
49 <itemizedlist spacing="compact">
50 <listitem>
51 <para>
52 Download (HTTP): <ulink url="&lightdm-download-http;"/>
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download (FTP): <ulink url="&lightdm-download-ftp;"/>
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download MD5 sum: &lightdm-md5sum;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Download size: &lightdm-size;
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Estimated disk space required: &lightdm-buildsize;
73 </para>
74 </listitem>
75 <listitem>
76 <para>
77 Estimated build time: &lightdm-time;
78 </para>
79 </listitem>
80 </itemizedlist>
81
82 <note>
83 <para>
84 The greeter is a program to present a graphical login screen. There
85 are several alternative greeters, but the gtk+ package is the reference
86 implementation. For a list of other greeters, see <ulink
87 url="https://en.wikipedia.org/wiki/LightDM"/>.
88 </para>
89 </note>
90
91 <bridgehead renderas="sect3">Lightdm-gtk-greeter Package Information</bridgehead>
92 <itemizedlist spacing="compact">
93 <listitem>
94 <para>
95 Download (HTTP): <ulink url="&lightdm-gtk-greeter-download-http;"/>
96 </para>
97 </listitem>
98 <listitem>
99 <para>
100 Download (FTP): <ulink url="&lightdm-gtk-greeter-download-ftp;"/>
101 </para>
102 </listitem>
103 <listitem>
104 <para>
105 Download MD5 sum: &lightdm-gtk-greeter-md5sum;
106 </para>
107 </listitem>
108 <listitem>
109 <para>
110 Download size: &lightdm-gtk-greeter-size;
111 </para>
112 </listitem>
113 <listitem>
114 <para>
115 Estimated disk space required: &lightdm-gtk-greeter-buildsize;
116 </para>
117 </listitem>
118 <listitem>
119 <para>
120 Estimated build time: &lightdm-gtk-greeter-time;
121 </para>
122 </listitem>
123 </itemizedlist>
124
125 <bridgehead renderas="sect3">Lightdm Dependencies</bridgehead>
126
127 <bridgehead renderas="sect4">Required</bridgehead>
128 <para role="required">
129 <xref linkend="gtk3"/>,
130 <xref linkend="libgcrypt"/>,
131 <xref linkend="linux-pam"/>, and
132 <xref linkend="pcre"/>
133 </para>
134
135 <bridgehead renderas="sect4">Recommended</bridgehead>
136 <para role="recommended">
137 <xref linkend="gobject-introspection"/>,
138 <xref linkend="libxklavier"/>, and
139 <xref linkend="vala"/>
140 </para>
141
142 <bridgehead renderas="sect4">Optional</bridgehead>
143 <para role="optional">
144 <xref linkend="at-spi2-core"/>,
145 <xref linkend="exo"/>,
146 <xref linkend="gtk-doc"/>,
147 <xref linkend="itstool"/>,
148 <xref linkend="qt5"/>,
149 <ulink url="https://launchpad.net/ido">libido</ulink>, and
150 <ulink url="https://launchpad.net/libindicator">libindicator</ulink>
151
152 </para>
153
154 <para condition="html" role="usernotes">User Notes:
155 <ulink url="&blfs-wiki;/lightdm"/>
156 </para>
157 </sect2>
158
159 <sect2 role="installation">
160 <title>Installation of Lightdm</title>
161
162 <para>
163 First, create a dedicated user and group to take
164 control of the <command>lightdm</command> daemon after it is
165 started. Issue the following commands as the
166 <systemitem class="username">root</systemitem> user:
167 </para>
168
169<screen role="root"><userinput>groupadd -g 65 lightdm &amp;&amp;
170useradd -c "Lightdm Daemon" \
171 -d /var/lib/lightdm \
172 -u 65 -g lightdm \
173 -s /bin/false lightdm</userinput></screen>
174
175 <para>
176 Install <application>lightdm</application> by running the following
177 commands:
178 </para>
179
180<screen><userinput>./configure \
181 --prefix=/usr \
182 --libexecdir=/usr/lib/lightdm \
183 --localstatedir=/var \
184 --sbindir=/usr/bin \
185 --sysconfdir=/etc \
186 --disable-static \
187 --disable-tests \
188 --with-greeter-user=lightdm \
189 --with-greeter-session=lightdm-gtk-greeter \
190 --docdir=/usr/share/doc/lightdm-&lightdm-version; &amp;&amp;
191make</userinput></screen>
192
193 <para>
194 This package does not come with a test suite.
195 </para>
196
197 <para>
198 Now, as the <systemitem class="username">root</systemitem> user:
199 </para>
200
201<screen role="root"><userinput>make install &amp;&amp;
202cp tests/src/lightdm-session /usr/bin &amp;&amp;
203sed -i '1 s/sh/bash --login/' /usr/bin/lightdm-session &amp;&amp;
204rm -rf /etc/init &amp;&amp;
205install -v -dm755 -o lightdm -g lightdm /var/lib/lightdm &amp;&amp;
206install -v -dm755 -o lightdm -g lightdm /var/lib/lightdm-data &amp;&amp;
207install -v -dm755 -o lightdm -g lightdm /var/cache/lightdm &amp;&amp;
208install -v -dm770 -o lightdm -g lightdm /var/log/lightdm</userinput></screen>
209
210 <para>Now build the greeter:</para>
211
212<screen><userinput>tar -xf ../lightdm-gtk-greeter-&lightdm-gtk-greeter-version;.tar.gz &amp;&amp;
213cd lightdm-gtk-greeter-&lightdm-gtk-greeter-version; &amp;&amp;
214
215./configure \
216 --prefix=/usr \
217 --libexecdir=/usr/lib/lightdm \
218 --sbindir=/usr/bin \
219 --sysconfdir=/etc \
220 --with-libxklavier \
221 --enable-kill-on-sigterm \
222 --disable-libido \
223 --disable-libindicator \
224 --disable-static \
225 --docdir=/usr/share/doc/lightdm-gtk-greeter-&lightdm-gtk-greeter-version; &amp;&amp;
226
227make</userinput></screen>
228
229 <para>
230 Now, as the <systemitem class="username">root</systemitem> user:
231 </para>
232
233<screen role="root"><userinput>make install</userinput></screen>
234
235 </sect2>
236
237 <sect2 role="commands">
238 <title>Command Explanations</title>
239 <para>
240
241 <command>sed ... /usr/bin/lightdm-session</command>:
242 This command ensures that the initial login via the greeter sources
243 /etc/profile and ~/.bash_profile. Without this, commands that depend on
244 different environment variables may not work as expected.
245 </para>
246<!--
247 <para>
248 <parameter>ITSTOOL=/bin/true</parameter>: although
249 <xref linkend="itstool"/> is not needed in a normal build,
250 <command>configure</command> throws an error if it is not found on the
251 system. This parameter prevents the error.
252 </para>
253
254 <para>
255 <parameter>CFLAGS=...</parameter>: those two switches ensures some
256 warnings are not treated as errors.
257 </para>
258
259 <para>
260 <parameter>HAVE_EXO_CSOURCE=yes</parameter>: although
261 <command>exo-csource</command> is not needed in a normal build,
262 <command>configure</command> throws an error if it is not found on the
263 system. This parameter prevents the error.
264 </para>
265-->
266 </sect2>
267
268 <sect2 role="configuration">
269 <title>Configuring lightdm</title>
270
271 <sect3 id="lightdm-config">
272 <title>Config Files</title>
273
274 <para>
275 /etc/lightdm/{lightdm,users,keys}.conf
276 </para>
277
278 <indexterm zone="lightdm lightdm-config">
279 <primary sortas="e-etc-lightdm-lightdm.conf">/etc/lightdm/lightdm.conf</primary>
280 </indexterm>
281
282 <indexterm zone="lightdm lightdm-config">
283 <primary sortas="e-users.conf">/etc/lightdm/users.conf</primary>
284 </indexterm>
285
286 <indexterm zone="lightdm lightdm-config">
287 <primary sortas="e-keys.conf">/etc/lightdm/keys.conf</primary>
288 </indexterm>
289
290 <indexterm zone="lightdm lightdm-config">
291 <primary sortas="e-lightdm-gtk-greeter.conf">
292 /etc/lightdm/lightdm-gtk-greeter.conf</primary>
293 </indexterm>
294
295 </sect3>
296
297 <sect3 id="lightdm-bootscript">
298 <title><phrase revision="sysv">Boot Script</phrase>
299 <phrase revision="systemd">Systemd Unit</phrase></title>
300
301 <para revision="sysv">
302 Install the <filename revision="sysv">/etc/rc.d/init.d/lightdm</filename>
303 init script from the <xref linkend="bootscripts"/>
304 </para>
305
306<screen role="root" revision="sysv"><userinput>make install-lightdm</userinput></screen>
307 <indexterm zone="lightdm lightdm-bootscript">
308 <primary sortas="f-lightdm">lightdm</primary>
309 </indexterm>
310
311 <para revision="systemd">
312 Install and enable the systemd unit. From the
313 <xref linkend="systemd-units"/> package:
314 </para>
315
316<screen role="root" revision="systemd"><userinput>make install-lightdm &amp;&amp;
317systemctl enable lightdm</userinput></screen>
318
319 </sect3>
320
321 <sect3 id="lightdm-init" revision="sysv">
322 <title>Starting lightdm</title>
323
324 <para>
325 If the lightdm bootscript has been installed, start lightdm by running, as the
326 <systemitem class="username">root</systemitem> user:
327 </para>
328
329<screen role="root"><userinput>/etc/rc.d/init.d/lightdm start</userinput></screen>
330
331 <para>
332 By convention, X should be executed at runlevel 5, consequently, the
333 same is true for <application>lightdm</application>. However, LFS default
334 runlevel is 3. Changing to runlevel 5, from a console terminal, as
335 <systemitem class="username">root</systemitem> user, starts the
336 <command>lightdm</command> bootscript, bringing up the greeter screen:
337 </para>
338
339<screen role="root"><userinput>init 5</userinput></screen>
340
341 <para>
342 In order to permanently set the default to 5, starting the
343 <command>lightdm</command> greeter screen automatically, modify
344 <filename>/etc/inittab</filename>. As the <systemitem
345 class="username">root</systemitem> user:
346 </para>
347
348<screen role="root"><userinput>cp -v /etc/inittab{,-orig} &amp;&amp;
349sed -i '/initdefault/ s/3/5/' /etc/inittab</userinput></screen>
350
351 </sect3>
352
353 <sect3 id="lightdm-sessions">
354 <title>Available Sessions</title>
355
356 <para>
357 The greeter offers a list of available sessions,
358 depending on the Window Managers and Desktop Environments installed. The
359 list includes sessions which have a corresponding
360 <filename>.desktop</filename> file installed under
361 <filename class="directory">/usr/share/xsessions</filename>. Most of the
362 Window Managers and Desktop Environments automatically provide those
363 files, but if necessary, you may include a custom one.
364 </para>
365
366 </sect3>
367
368 </sect2>
369
370 <sect2 role="content">
371 <title>Contents</title>
372
373 <segmentedlist>
374 <segtitle>Installed Programs</segtitle>
375 <segtitle>Installed Libraries</segtitle>
376 <segtitle>Installed Directories</segtitle>
377
378 <seglistitem>
379 <seg>
380 dm-tool,
381 lightdm, and
382 lightdm-gtk-greeter
383 </seg>
384 <seg>
385 liblightdm-gobject-1.so
386 </seg>
387 <seg>
388 /etc/lightdm,
389 /etc/apparmor.d,
390 /usr/lib/lightdm,
391 /usr/include/lightdm-gobject-1,
392 /usr/share/help/C/lightdm
393 /usr/share/gtk-doc/html/lightdm-gobject-1,
394 /usr/share/doc/lightdm-gtk-greeter-&lightdm-gtk-greeter-version;,
395 /var/lib/lightdm,
396 /var/lib/lightdm-data,
397 /var/cache/lightdm, and
398 /var/log/lightdm
399 </seg>
400 </seglistitem>
401 </segmentedlist>
402
403 <variablelist>
404 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
405 <?dbfo list-presentation="list"?>
406 <?dbhtml list-presentation="table"?>
407
408 <varlistentry id="lightdm-prog">
409 <term><command>lightdm</command></term>
410 <listitem>
411 <para>
412 is a display and login manager.
413 </para>
414 <indexterm zone="lightdm lightdm-prog">
415 <primary sortas="b-lightdm">lightdm</primary>
416 </indexterm>
417 </listitem>
418 </varlistentry>
419
420 <varlistentry id="lightdm-gtk-greeter">
421 <term><command>lightdm-gtk-greeter</command></term>
422 <listitem>
423 <para>
424 is an auxiliary process that displays the greeter,
425 a graphical user interface that performs user
426 authentication and initiates the selected window manager
427 or display environment.
428 </para>
429 <indexterm zone="lightdm lightdm-gtk-greeter">
430 <primary sortas="b-lightdm-gtk-greeter">lightdm-gtk-greeter</primary>
431 </indexterm>
432 </listitem>
433 </varlistentry>
434
435 </variablelist>
436
437 </sect2>
438
439</sect1>
Note: See TracBrowser for help on using the repository browser.