source: x/dm/lightdm.xml@ 79b62423

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 12.2 9.1 gimp3 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/for-12.3 xry111/intltool xry111/llvm18 xry111/soup3 xry111/spidermonkey128 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 79b62423 was 79b62423, checked in by Pierre Labastie <pieere@…>, 5 years ago

Promote Exo to required in lightdm: exo-csource is required for the greeter

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

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