source: x/dm/lightdm.xml@ 2ad1b08

11.3 12.0 12.1 kea ken/TL2024 ken/tuningfonts lazarus lxqt plabs/newcss python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since 2ad1b08 was f65482c, checked in by Xi Ruoyao <xry111@…>, 16 months ago

lightdm: Add xorg-server as runtime dependency

  • Property mode set to 100644
File size: 14.7 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 "e62a5da6c35f612e4d9575eda5c8d467">
11 <!ENTITY lightdm-size "508 KB">
12 <!ENTITY lightdm-buildsize "20 MB">
13 <!ENTITY lightdm-time "0.2 SBU ">
14
15<!-- lightdm-gtk-greeter -->
16 <!ENTITY lightdm-gtk-greeter-download-http "https://github.com/Xubuntu/lightdm-gtk-greeter/releases/download/lightdm-gtk-greeter-&lightdm-gtk-greeter-version;/lightdm-gtk-greeter-&lightdm-gtk-greeter-version;.tar.gz">
17 <!ENTITY lightdm-gtk-greeter-download-ftp " ">
18 <!ENTITY lightdm-gtk-greeter-md5sum "373c73c67367df511eb544e09a2da281">
19 <!ENTITY lightdm-gtk-greeter-size "569.7 KB">
20 <!ENTITY lightdm-gtk-greeter-buildsize "5.5 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
28 <title>lightdm-&lightdm-version;</title>
29
30 <indexterm zone="lightdm">
31 <primary sortas="a-lightdm">lightdm</primary>
32 </indexterm>
33
34 <sect2 role="package">
35 <title>Introduction to Lightdm</title>
36
37 <para>
38 The <application>lightdm</application> package contains a lightweight
39 display manager based upon GTK.
40 </para>
41
42 &lfs113_checked;
43
44 <bridgehead renderas="sect3">Lightdm Package Information</bridgehead>
45 <itemizedlist spacing="compact">
46 <listitem>
47 <para>
48 Download (HTTP): <ulink url="&lightdm-download-http;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download (FTP): <ulink url="&lightdm-download-ftp;"/>
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download MD5 sum: &lightdm-md5sum;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Download size: &lightdm-size;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated disk space required: &lightdm-buildsize;
69 </para>
70 </listitem>
71 <listitem>
72 <para>
73 Estimated build time: &lightdm-time;
74 </para>
75 </listitem>
76 </itemizedlist>
77
78 <bridgehead renderas="sect3">Additional download</bridgehead>
79
80 <note>
81 <para>
82 The greeter is a program to present a graphical login screen. There
83 are several alternative greeters, but the gtk+ package is the reference
84 implementation. For a list of other greeters, see <ulink
85 url="https://en.wikipedia.org/wiki/LightDM"/>.
86 </para>
87 </note>
88
89 <itemizedlist spacing="compact">
90 <listitem>
91 <para>
92 Download (HTTP): <ulink url="&lightdm-gtk-greeter-download-http;"/>
93 </para>
94 </listitem>
95 <listitem>
96 <para>
97 Download (FTP): <ulink url="&lightdm-gtk-greeter-download-ftp;"/>
98 </para>
99 </listitem>
100 <listitem>
101 <para>
102 Download MD5 sum: &lightdm-gtk-greeter-md5sum;
103 </para>
104 </listitem>
105 <listitem>
106 <para>
107 Download size: &lightdm-gtk-greeter-size;
108 </para>
109 </listitem>
110 <listitem>
111 <para>
112 Estimated disk space required: &lightdm-gtk-greeter-buildsize;
113 </para>
114 </listitem>
115 <listitem>
116 <para>
117 Estimated build time: &lightdm-gtk-greeter-time;
118 </para>
119 </listitem>
120 </itemizedlist>
121
122 <bridgehead renderas="sect3">Lightdm Dependencies</bridgehead>
123
124 <bridgehead renderas="sect4">Required</bridgehead>
125 <para role="required">
126 <xref linkend="exo"/> (for the greeter),
127<!-- required by exo <xref linkend="gtk3"/>, -->
128 <xref linkend="libgcrypt"/>,
129 <xref linkend="itstool"/>,
130 <xref linkend="linux-pam"/>, and
131<!-- Neither lightdm-1.30.0 nor lightdm-gtk-greeter-2.0.8
132 mention pcre in their configure scripts
133 <xref linkend="pcre"/>-->
134 <xref role='runtime' linkend='xorg-server'/> (Runtime)
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 role="runtime" linkend="accountsservice"/> (run time),
147 <xref linkend="at-spi2-core"/>,
148 <xref linkend="gtk-doc"/>,
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 revision="sysv">
177 Then change the <application>Linux-PAM</application> configuration files
178 so that <application>elogind</application> is used:
179 </para>
180
181<screen revision="sysv"><userinput>sed -i s/systemd/elogind/ data/pam/*</userinput></screen>
182
183 <para>
184 Install <application>lightdm</application> by running the following
185 commands:
186 </para>
187
188<screen><userinput>./configure --prefix=/usr \
189 --libexecdir=/usr/lib/lightdm \
190 --localstatedir=/var \
191 --sbindir=/usr/bin \
192 --sysconfdir=/etc \
193 --disable-static \
194 --disable-tests \
195 --with-greeter-user=lightdm \
196 --with-greeter-session=lightdm-gtk-greeter \
197 --docdir=/usr/share/doc/lightdm-&lightdm-version; &amp;&amp;
198make</userinput></screen>
199
200 <para>
201 This package does not come with a test suite.
202 </para>
203
204 <para>
205 Now, as the <systemitem class="username">root</systemitem> user:
206 </para>
207
208<screen role="root"><userinput>make install &amp;&amp;
209cp tests/src/lightdm-session /usr/bin &amp;&amp;
210sed -i '1 s/sh/bash --login/' /usr/bin/lightdm-session &amp;&amp;
211rm -rf /etc/init &amp;&amp;
212install -v -dm755 -o lightdm -g lightdm /var/lib/lightdm &amp;&amp;
213install -v -dm755 -o lightdm -g lightdm /var/lib/lightdm-data &amp;&amp;
214install -v -dm755 -o lightdm -g lightdm /var/cache/lightdm &amp;&amp;
215install -v -dm770 -o lightdm -g lightdm /var/log/lightdm</userinput></screen>
216
217 <para>
218 Now build the greeter:
219 </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 --prefix=/usr \
225 --libexecdir=/usr/lib/lightdm \
226 --sbindir=/usr/bin \
227 --sysconfdir=/etc \
228 --with-libxklavier \
229 --enable-kill-on-sigterm \
230 --disable-libido \
231 --disable-libindicator \
232 --disable-static \
233 --disable-maintainer-mode \
234 --docdir=/usr/share/doc/lightdm-gtk-greeter-&lightdm-gtk-greeter-version; &amp;&amp;
235make</userinput></screen>
236
237 <para>
238 Now, as the <systemitem class="username">root</systemitem> user:
239 </para>
240
241<screen role="root"><userinput>make install</userinput></screen>
242
243 <note>
244 <para>
245 If you installed Xorg in /opt, you will need to create a symbolic
246 link so lightdm can find the Xorg server. As the
247 <systemitem class="username">root</systemitem> user:
248 </para>
249
250 <screen role="nodump"><userinput>ln -sf /opt/xorg/bin/Xorg /usr/bin/X</userinput></screen>
251 </note>
252
253
254 </sect2>
255
256 <sect2 role="commands">
257 <title>Command Explanations</title>
258 <para>
259
260 <command>sed ... /usr/bin/lightdm-session</command>:
261 This command ensures that the initial login via the greeter sources
262 /etc/profile and ~/.bash_profile. Without this, commands that depend on
263 different environment variables may not work as expected.
264 </para>
265<!--
266 <para>
267 <parameter>ITSTOOL=/bin/true</parameter>: although
268 <xref linkend="itstool"/> is not needed in a normal build,
269 <command>configure</command> throws an error if it is not found on the
270 system. This parameter prevents the error.
271 </para>
272
273 <para>
274 <parameter>HAVE_EXO_CSOURCE=yes</parameter>: although
275 <command>exo-csource</command> is not needed in a normal build,
276 <command>configure</command> throws an error if it is not found on the
277 system. This parameter prevents the error.
278 </para>
279-->
280 </sect2>
281
282 <sect2 role="configuration">
283 <title>Configuring lightdm</title>
284
285 <sect3 id="lightdm-config">
286 <title>Config Files</title>
287
288 <para>
289 /etc/lightdm/{lightdm,users,keys}.conf
290 </para>
291
292 <indexterm zone="lightdm lightdm-config">
293 <primary sortas="e-etc-lightdm-lightdm.conf">/etc/lightdm/lightdm.conf</primary>
294 </indexterm>
295
296 <indexterm zone="lightdm lightdm-config">
297 <primary sortas="e-users.conf">/etc/lightdm/users.conf</primary>
298 </indexterm>
299
300 <indexterm zone="lightdm lightdm-config">
301 <primary sortas="e-keys.conf">/etc/lightdm/keys.conf</primary>
302 </indexterm>
303
304 <indexterm zone="lightdm lightdm-config">
305 <primary sortas="e-lightdm-gtk-greeter.conf">
306 /etc/lightdm/lightdm-gtk-greeter.conf</primary>
307 </indexterm>
308
309 </sect3>
310
311 <sect3 id="lightdm-bootscript">
312 <title><phrase revision="sysv">Boot Script</phrase>
313 <phrase revision="systemd">Systemd Unit</phrase></title>
314
315 <indexterm zone="lightdm lightdm-bootscript">
316 <primary sortas="f-lightdm">lightdm</primary>
317 </indexterm>
318
319 <para revision="sysv">
320 To start <command>lightdm</command> automatically when the system is
321 switched to runlevel 5, install the
322 <filename>/etc/rc.d/init.d/xdm</filename> script and the
323 <filename>/etc/sysconfig/xdm</filename> configuration file
324 included in the <xref linkend="bootscripts"/> package
325 and adjust <filename>/etc/inittab</filename> by running
326 as the <systemitem class="username">root</systemitem> user:
327 </para>
328
329<screen role="root" revision="sysv"><userinput>make install-lightdm</userinput></screen>
330
331 <para revision="systemd">
332 Install the <filename>lightdm.service</filename> unit included in
333 the <xref linkend="systemd-units"/> package:
334 </para>
335
336<screen role="root" revision="systemd"><userinput>make install-lightdm</userinput></screen>
337
338 </sect3>
339 <sect3 id="lightdm-init" revision="sysv">
340 <title>Starting lightdm</title>
341
342 <para>
343 The <command>lightdm</command> greeter can be started from the
344 command line as the <systemitem class="username">root</systemitem>
345 user:
346 </para>
347
348<screen role="nodump"><userinput>telinit 5</userinput></screen>
349
350<!-- "make install-lightdm already does this already
351 <para>
352 Alternatively the runlevel can be permanently set to 5, starting the
353 <command>lightdm</command> greeter screen automatically, by modifying
354 <filename>/etc/inittab</filename>. As the <systemitem
355 class="username">root</systemitem> user:
356 </para>
357
358<screen role="root"><userinput>cp -v /etc/inittab{,-orig} &amp;&amp;
359sed -i '/initdefault/ s/3/5/' /etc/inittab</userinput></screen>
360-->
361 </sect3>
362
363 <sect3 id="lightdm-sessions">
364 <title>Available Sessions</title>
365
366 <para>
367 The greeter offers a list of available sessions,
368 depending on the Window Managers and Desktop Environments installed. The
369 list includes sessions which have a corresponding
370 <filename>.desktop</filename> file installed under
371 <filename class="directory">/usr/share/xsessions</filename>. Most of the
372 Window Managers and Desktop Environments automatically provide those
373 files, but if necessary, you may include a custom one.
374 </para>
375
376 </sect3>
377
378 </sect2>
379
380 <sect2 role="content">
381 <title>Contents</title>
382
383 <segmentedlist>
384 <segtitle>Installed Programs</segtitle>
385 <segtitle>Installed Libraries</segtitle>
386 <segtitle>Installed Directories</segtitle>
387
388 <seglistitem>
389 <seg>
390 dm-tool,
391 lightdm, and
392 lightdm-gtk-greeter
393 </seg>
394 <seg>
395 liblightdm-gobject-1.so
396 </seg>
397 <seg>
398 /etc/lightdm,
399 /etc/apparmor.d,
400 /usr/lib/lightdm,
401 /usr/include/lightdm-gobject-1,
402 /usr/share/help/C/lightdm
403 /usr/share/gtk-doc/html/lightdm-gobject-1,
404 /usr/share/doc/lightdm-gtk-greeter-&lightdm-gtk-greeter-version;,
405 /var/lib/lightdm,
406 /var/lib/lightdm-data,
407 /var/cache/lightdm, and
408 /var/log/lightdm
409 </seg>
410 </seglistitem>
411 </segmentedlist>
412
413 <variablelist>
414 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
415 <?dbfo list-presentation="list"?>
416 <?dbhtml list-presentation="table"?>
417
418 <varlistentry id="lightdm-prog">
419 <term><command>lightdm</command></term>
420 <listitem>
421 <para>
422 is a display and login manager
423 </para>
424 <indexterm zone="lightdm lightdm-prog">
425 <primary sortas="b-lightdm">lightdm</primary>
426 </indexterm>
427 </listitem>
428 </varlistentry>
429
430 <varlistentry id="lightdm-gtk-greeter">
431 <term><command>lightdm-gtk-greeter</command></term>
432 <listitem>
433 <para>
434 is an auxiliary process that displays the greeter,
435 a graphical user interface that performs user
436 authentication and initiates the selected window manager
437 or display environment
438 </para>
439 <indexterm zone="lightdm lightdm-gtk-greeter">
440 <primary sortas="b-lightdm-gtk-greeter">lightdm-gtk-greeter</primary>
441 </indexterm>
442 </listitem>
443 </varlistentry>
444
445 </variablelist>
446
447 </sect2>
448
449</sect1>
Note: See TracBrowser for help on using the repository browser.