source: x/dm/lightdm.xml@ 95abc325

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 95abc325 was 95abc325, checked in by Pierre Labastie <pieere@…>, 5 years ago

More fixes for lightdm:

  • itstool is required too, and Accountsservice may be used at run time
  • having pam_elogind in the PAM files allows users to shutdown, restart, hibernate, or suspend the machine

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

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