source: archive/sddm.xml@ fda29e4

11.0 11.1 11.2 11.3 12.0 12.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 fda29e4 was 45ab6c7, checked in by Xi Ruoyao <xry111@…>, 3 years ago

more SVN prop clean up

Remove "$LastChanged$" everywhere, and also some unused $Date$

  • Property mode set to 100644
File size: 19.1 KB
RevLine 
[9fa25aa]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
[d6aa5ce]7 <!ENTITY sddm-download-http "https://github.com/sddm/sddm/releases/download/v&sddm-version;/sddm-&sddm-version;.tar.xz">
[9fa25aa]8 <!ENTITY sddm-download-ftp " ">
[d6aa5ce]9 <!ENTITY sddm-md5sum "b41182cc9d53d75485c112ab82dc95d0">
10 <!ENTITY sddm-size "3.2 MB">
11 <!ENTITY sddm-buildsize "20 MB">
12 <!ENTITY sddm-time "0.6 SBU ">
[9fa25aa]13]>
14
[f2cedb8]15<sect1 id="sddm" xreflabel="sddm-&sddm-version;">
[9fa25aa]16 <?dbhtml filename="sddm.html"?>
17
18 <sect1info>
19 <date>$Date$</date>
20 </sect1info>
21
22 <title>sddm-&sddm-version;</title>
23
24 <indexterm zone="sddm">
25 <primary sortas="a-SDDM">SDDM</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to SDDM</title>
30
31 <para>
32 The <application>SDDM</application> package contains a lightweight
[1def00f]33 display manager based upon <application>Qt</application> and QML.
[9fa25aa]34 </para>
35
[02d9cc8]36 &lfs81_checked;
[9fa25aa]37
38 <bridgehead renderas="sect3">Package Information</bridgehead>
39 <itemizedlist spacing="compact">
40 <listitem>
41 <para>
42 Download (HTTP): <ulink url="&sddm-download-http;"/>
43 </para>
44 </listitem>
45 <listitem>
46 <para>
47 Download (FTP): <ulink url="&sddm-download-ftp;"/>
48 </para>
49 </listitem>
50 <listitem>
51 <para>
52 Download MD5 sum: &sddm-md5sum;
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download size: &sddm-size;
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Estimated disk space required: &sddm-buildsize;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Estimated build time: &sddm-time;
68 </para>
69 </listitem>
70 </itemizedlist>
71
72 <bridgehead renderas="sect3">SDDM Dependencies</bridgehead>
73
74 <bridgehead renderas="sect4">Required</bridgehead>
75 <para role="required">
[68cba69d]76 <xref linkend="cmake"/>,
77 <xref linkend="extra-cmake-modules"/> and
[9fa25aa]78 <xref linkend="qt5"/>
79 </para>
80
81 <bridgehead renderas="sect4">Recommended</bridgehead>
82 <para role="recommended">
[395be1c]83 <xref linkend="linux-pam"/> and
84 <xref linkend="upower"/>
[9fa25aa]85 </para>
86
87 <bridgehead renderas="sect4">Optional</bridgehead>
88 <para role="optional">
[d3ea9e8]89 <xref linkend="docutils"/> (for the man pages)
[9fa25aa]90 </para>
91
[e71a98d9]92 <bridgehead renderas="sect4" revision="sysv">Runtime Dependency</bridgehead>
[f1ce80b]93 <para role="required" revision="sysv">
[e71a98d9]94 <xref role="runtime" linkend="consolekit"/>
[9fa25aa]95 </para>
96
97 <para condition="html" role="usernotes">User Notes:
98 <ulink url="&blfs-wiki;/sddm"/>
99 </para>
100 </sect2>
101
102 <sect2 role="installation">
103 <title>Installation of SDDM</title>
104
105 <para>
[1def00f]106 First, create a dedicated user and group to take
[9fa25aa]107 control of the <command>sddm</command> daemon after it is
108 started. Issue the following commands as the
109 <systemitem class="username">root</systemitem> user:
110 </para>
111
112<screen role="root"><userinput>groupadd -g 64 sddm &amp;&amp;
[6d772cc]113useradd -c "SDDM Daemon" \
114 -d /var/lib/sddm \
115 -u 64 -g sddm \
116 -s /bin/false sddm</userinput></screen>
[9fa25aa]117
[f2cedb8]118 <para revision="sysv">
[68cba69d]119 Next, fix the application to start <command>upowerd</command>,
[eca7a58]120 if necessary, and after login, start the session with
121 <command>ck-launch-session</command>:
122 </para>
123
[f2cedb8]124<screen revision="sysv"><userinput>sed -e '/UPOWER_SERVICE)/ s:^://:' \
[eca7a58]125 -i src/daemon/PowerManager.cpp &amp;&amp;
126
[4d3f03f6]127sed -e '/\$@$/s/exec/&amp; ck-launch-session/' \
[eca7a58]128 -i data/scripts/Xsession</userinput></screen>
129
[d6aa5ce]130 <para revision="sysv">
131 For sddm-0.16.0, ConsoleKit support has been added, but is broken. Remove
132 it with:
133 </para>
134<!-- This removes also logind support. Hopefully should be fixed for next
135 version -->
136<screen revision="sysv"><userinput>sed -e '/available.*true/s/true/false/' \
137 -i src/daemon/LogindDBusTypes.cpp</userinput></screen>
138
[9fa25aa]139 <para>
140 Install <application>SDDM</application> by running the following
141 commands:
142 </para>
143
[f2cedb8]144<screen revision="sysv"><userinput>mkdir build &amp;&amp;
[9fa25aa]145cd build &amp;&amp;
146
147cmake -DCMAKE_INSTALL_PREFIX=/usr \
148 -DCMAKE_BUILD_TYPE=Release \
149 -DENABLE_JOURNALD=OFF \
[eca7a58]150 -DDBUS_CONFIG_FILENAME=sddm_org.freedesktop.DisplayManager.conf \
[9fa25aa]151 -Wno-dev .. &amp;&amp;
152make</userinput></screen>
153
[f2cedb8]154<screen revision="systemd"><userinput>mkdir build &amp;&amp;
155cd build &amp;&amp;
156
157cmake -DCMAKE_INSTALL_PREFIX=/usr \
158 -DCMAKE_BUILD_TYPE=Release \
159 -Wno-dev .. &amp;&amp;
160make</userinput></screen>
161
[9fa25aa]162 <para>
163 This package does not come with a test suite.
164 </para>
165
166 <para>
167 Now, as the <systemitem class="username">root</systemitem> user:
168 </para>
169
170<screen role="root"><userinput>make install &amp;&amp;
171install -v -dm755 -o sddm -g sddm /var/lib/sddm</userinput></screen>
172
173 </sect2>
174
175 <sect2 role="commands">
176 <title>Command Explanations</title>
177
178 <para>
179 <parameter>-DCMAKE_BUILD_TYPE=Release</parameter>: This switch is used to
[1def00f]180 apply additional compiler optimizations.
[9fa25aa]181 </para>
182
[f2cedb8]183 <para revision="sysv">
[9fa25aa]184 <parameter>-DENABLE_JOURNALD=OFF</parameter>: This switch is used because
[d6aa5ce]185 this version of BLFS does not support <application>systemd</application>.
[9fa25aa]186 </para>
187
[f2cedb8]188 <para revision="sysv">
[eca7a58]189 <parameter>-DDBUS_CONFIG_FILENAME=sddm_org.freedesktop.DisplayManager.conf</parameter>:
[4d3f03f6]190 This switch prevents the file <filename>
191 /etc/dbus-1/system.d/org.freedesktop.DisplayManager.conf</filename> from
192 being overwritten, as it may be used by other DM's.
[eca7a58]193 </para>
194
[395be1c]195 <para>
196 <option>-DBUILD_MAN_PAGES=ON</option>: This switch may be used if you want
197 the man pages to be installed. Notice that you need
[d3ea9e8]198 <xref linkend="docutils"/> to build them.
[395be1c]199 </para>
200
[9fa25aa]201 </sect2>
202
203 <sect2 role="configuration">
204 <title>Configuring SDDM</title>
205
[395be1c]206 <sect3 id="sddm-config">
[d6aa5ce]207 <title>Config Files</title>
[395be1c]208
209 <para>
[d6aa5ce]210 /usr/lib/sddm/sddm.conf.d/*, /etc/sddm.conf.d/*, and /etc/sddm.conf
[395be1c]211 </para>
212
213 <indexterm zone="sddm sddm-config">
[d6aa5ce]214 <primary sortas="e-usr-lib-sddm.conf.d">/usr/lib/sddm/sddm.conf.d</primary>
[395be1c]215 </indexterm>
216
[d6aa5ce]217 <indexterm zone="sddm sddm-config">
218 <primary sortas="e-sddm.conf.d">/etc/sddm.conf.d</primary>
219 </indexterm>
[6bb5b3b1]220
[d6aa5ce]221 <indexterm zone="sddm sddm-config">
222 <primary sortas="e-sddm.conf">/etc/sddm.conf</primary>
223 </indexterm>
[d09eb9b]224
[6bb5b3b1]225 <para>
[d6aa5ce]226 Only <filename>/etc/sddm.conf</filename> is installed, but the
227 configuration files are read in the following order: all files in
228 <filename class="directory">/usr/lib/sddm/sddm.conf.d</filename> in
229 alphabetical order, then all files in <filename class="directory">
230 /etc/sddm.conf.d</filename> in alphabetical order, and finally
231 <filename>/etc/sddm.conf</filename>.
[eca7a58]232 </para>
233
234 <para>
235 Normally, you want to edit this file. For example, if Xorg is installed
[0b789c7]236 in /opt, use your preferred editor as the <systemitem
237 class="username">root</systemitem> user to replace the default
238 <emphasis>XauthPath</emphasis> value by
[d09eb9b]239 <emphasis>/opt/xorg/bin/xauth</emphasis>. Or, as the <systemitem
[0b789c7]240 class="username">root</systemitem> user, issue:
[6bb5b3b1]241 </para>
242
[c6e23bd]243<screen role="root"><userinput>sed -e '/ServerPath/ s|usr|opt/xorg|' \
[6bb5b3b1]244 -i.orig /etc/sddm.conf</userinput></screen>
245
246 <para>
247 This command will do the substitution and create a copy of the original
248 file with name <filename>/etc/sddm.conf.orig</filename>.
249 </para>
250
[eca7a58]251 <para>
[d09eb9b]252 From now on, we will describe how to modify configurations using sed.
253 Of course, you may instead use your preferred editor as the <systemitem
[0b789c7]254 class="username">root</systemitem> user.
255 </para>
256
257 <para>
258 For security reasons, you normally want the default
259 <emphasis>ServerArguments=-nolisten tcp</emphasis>, unless a remote
260 machine needs access to the local X server. In that case, as the
[d09eb9b]261 <systemitem class="username">root</systemitem> user, issue:
[eca7a58]262 </para>
263
264<screen role="root"><userinput>sed -e 's/-nolisten tcp//'\
265 -i /etc/sddm.conf</userinput></screen>
266
267 <para>
268 Desktop (Notebook) users, normally wish the Num Lock key on (off). For
269 that, as the <systemitem
270 class="username">root</systemitem> user, issue:
271 </para>
272
273<screen role="root"><userinput>sed -e 's/\"none\"/\"on\"/' \
274 -i /etc/sddm.conf</userinput></screen>
275
276 <para>
[d09eb9b]277 for Desktop users. For Notebook users, replace \"on\" by \"off\",
278 in the command above.
[eca7a58]279 </para>
280
[6bb5b3b1]281 </sect3>
[395be1c]282
[1def00f]283 <sect3 id="sddm-bootscript">
284 <title>Boot Script</title>
285
286 <para>
[d6aa5ce]287 Install the <filename revision="sysv">/etc/rc.d/init.d/sddm</filename>
288 init script from the <xref linkend="bootscripts" revision="sysv"/>
[3c7bd00]289 <xref linkend="systemd-units" revision="systemd"/> package.
[1def00f]290 </para>
291
292 <indexterm zone="sddm sddm-bootscript">
293 <primary sortas="f-sddm">sddm</primary>
294 </indexterm>
295
[f2cedb8]296<screen role="root" revision="sysv"><userinput>make install-sddm</userinput></screen>
297
298<screen role="root" revision="systemd"><userinput>systemctl enable sddm</userinput></screen>
[1def00f]299
300 </sect3>
301
[9fa25aa]302 <sect3>
303 <title>Linux PAM Configuration</title>
304
305 <para>
306 If you have built <application>SDDM</application>
307 with <application>Linux PAM</application> support,
308 create the necessary configuration files by running
309 the following commands as the <systemitem
310 class="username">root</systemitem> user:
311 </para>
312
[f2cedb8]313<screen role="root" revision="sysv"><userinput>cat &gt; /etc/pam.d/sddm &lt;&lt; "EOF"
[9fa25aa]314<literal># Begin /etc/pam.d/sddm
315
316auth requisite pam_nologin.so
317auth required pam_env.so
318
319auth required pam_succeed_if.so uid &gt;= 1000 quiet
320auth include system-auth
321
322account include system-account
323password include system-password
324
325session required pam_limits.so
326session include system-session
327
328# End /etc/pam.d/sddm</literal>
329EOF
[1def00f]330
[c6e23bd]331cat &gt; /etc/pam.d/sddm-autologin &lt;&lt; "EOF"
[9fa25aa]332<literal># Begin /etc/pam.d/sddm-autologin
333
334auth requisite pam_nologin.so
335auth required pam_env.so
336
337auth required pam_succeed_if.so uid &gt;= 1000 quiet
338auth required pam_permit.so
339
340account include system-account
341
342password required pam_deny.so
343
344session required pam_limits.so
345session include system-session
346
347# End /etc/pam.d/sddm-autologin</literal>
348EOF
[1def00f]349
[9fa25aa]350cat &gt; /etc/pam.d/sddm-greeter &lt;&lt; "EOF"
351<literal># Begin /etc/pam.d/sddm-greeter
352
353auth required pam_env.so
354auth required pam_permit.so
355
356account required pam_permit.so
357password required pam_deny.so
358session required pam_unix.so
359-session optional pam_systemd.so
360
[f2cedb8]361# End /etc/pam.d/sddm-greeter</literal>
362EOF</userinput></screen>
363
364<screen role="root" revision="systemd"><userinput>cat &gt; /etc/pam.d/sddm &lt;&lt; "EOF" &amp;&amp;
365<literal># Begin /etc/pam.d/sddm
366
367auth requisite pam_nologin.so
368auth required pam_env.so
369
[8ca9229]370auth required pam_succeed_if.so uid &gt;= 1000 quiet
[f2cedb8]371auth include system-auth
372
373account include system-account
374password include system-password
375
376session required pam_limits.so
377session include system-session
378
379# End /etc/pam.d/sddm</literal>
380EOF
381
382cat &gt; /etc/pam.d/sddm-autologin &lt;&lt; "EOF" &amp;&amp;
383<literal># Begin /etc/pam.d/sddm-autologin
384
385auth requisite pam_nologin.so
386auth required pam_env.so
387
[8ca9229]388auth required pam_succeed_if.so uid &gt;= 1000 quiet
[f2cedb8]389auth required pam_permit.so
390
391account include system-account
392
393password required pam_deny.so
394
395session required pam_limits.so
396session include system-session
397
398# End /etc/pam.d/sddm-autologin</literal>
399EOF
400
401cat &gt; /etc/pam.d/sddm-greeter &lt;&lt; "EOF"
402<literal># Begin /etc/pam.d/sddm-greeter
403
404auth required pam_env.so
405auth required pam_permit.so
406
407account required pam_permit.so
408password required pam_deny.so
409session required pam_unix.so
410-session optional pam_systemd.so
411
[9fa25aa]412# End /etc/pam.d/sddm-greeter</literal>
413EOF</userinput></screen>
414
415 </sect3>
416
[f2cedb8]417 <sect3 id="sddm-init" revision="sysv">
[9fa25aa]418 <title>Starting sddm</title>
419
420 <para>
[d09eb9b]421 If the sddm bootscript has been installed, start sddm by running, as the
[1def00f]422 <systemitem class="username">root</systemitem> user:
[9fa25aa]423 </para>
424
425<screen role="root"><userinput>/etc/rc.d/init.d/sddm start</userinput></screen>
426
427 <para>
[395be1c]428 By convention, X should be executed at runlevel 5, consequently, the
[1def00f]429 same is true for <application>sddm</application>. However, LFS default
430 runlevel is 3. Changing to runlevel 5, from a console terminal, as
431 <systemitem class="username">root</systemitem> user, starts the
432 <command>sddm</command> bootscript, bringing up the greeter screen:
[9fa25aa]433 </para>
434
435<screen role="root"><userinput>init 5</userinput></screen>
436
437 <para>
[1def00f]438 In order to permanently set the default to 5, starting the
439 <command>sddm</command> greeter screen automatically, modify
440 <filename>/etc/inittab</filename>. As the <systemitem
441 class="username">root</systemitem> user:
[9fa25aa]442 </para>
443
444<screen role="root"><userinput>cp -v /etc/inittab{,-orig} &amp;&amp;
445sed -i '/initdefault/ s/3/5/' /etc/inittab</userinput></screen>
446
447 </sect3>
448
[395be1c]449 <sect3 id="sddm-sessions">
450 <title>Available Sessions</title>
451
452 <para>
453 The greeter offers a list of available sessions,
454 depending on the Window Managers and Desktop Environments installed. The
[5ee1266]455 list includes sessions which have a corresponding
[395be1c]456 <filename>.desktop</filename> file installed under
457 <filename class="directory">/usr/share/xsessions</filename>. Most of the
458 Window Managers and Desktop Environments automatically provide those
459 files, but if necessary, you may include a custom one.
460 </para>
461
462 </sect3>
463
464 <sect3 id="sddm-themes">
465 <title>Themes</title>
466
467 <para>
[d6aa5ce]468 Three themes are installed at <filename class="directory">
[395be1c]469 /usr/share/sddm/themes</filename>:
470 elarun,
471 maldives, and
[d6aa5ce]472 maya.
473 There is also a default theme, which is not present in that directory.
474 You can install other themes in that directory. In order to change the
475 theme, you need to edit <filename>/etc/sddm.conf</filename>,
476 to change the default (empty) theme, replacing <quote>Current=</quote>
477 with <quote>Current=&lt;new theme&gt;</quote>, e.g.
[6bb5b3b1]478 <quote>Current=maldives</quote>.
[395be1c]479 </para>
480
481 <para>
482 In order to see the theme without leaving the session, issue:
483 </para>
484
485<screen><userinput>sddm-greeter --test-mode --theme <replaceable>&lt;theme path&gt;</replaceable></userinput></screen>
486
487 </sect3>
488
489 <sect3 id="sddm-Issues">
490 <title>Known Issues</title>
491
492 <para>
[c64f201]493 This application works well, but there are issues. You find the
[395be1c]494 mainstream known issues at
[a65d410]495 <ulink url="https://github.com/sddm/sddm/issues">Issues</ulink>.
496 The BLFS development team have found some issues.
[395be1c]497 </para>
498
[eca7a58]499 <note>
500 <para>
501 In the next couple of paragraphs, due to a problem with sddm-greeter,
502 we mention how to define the keyboard used there. Notice that this is
503 also the keyboard that will be used in the X session, unless there is
504 a configuration in the Desktop Environment or in the Window Manager
505 overriding it, afterwards.
506 </para>
507 </note>
508
[395be1c]509 <para>
510 Keyboard selection: the greeter shows a double question mark or the
511 wrong keyboard. When you start to type the password or user name
[a65d410]512 (depending on the theme, only password), the right keyboard selection
513 magically appears. Optionally, a workaround is to include the keyboard
514 list in <command>/usr/share/sddm/scripts/Xsetup</command> script, as the
[395be1c]515 <systemitem class="username">root</systemitem> user:
516 </para>
517
[6d772cc]518<screen role="root"><userinput>echo 'setxkbmap <replaceable>"&lt;your keyboard comma separated list&gt;"</replaceable>' &gt;&gt; \
519 /usr/share/sddm/scripts/Xsetup</userinput></screen>
[a65d410]520
521 <para>
[eca7a58]522 E.g. <command>echo 'setxkbmap "fr,gb,br,us"' &gt;&gt;
[d09eb9b]523 /usr/share/sddm/scripts/Xsetup</command>. A very accurate definition
524 of the keyboard(s) is possible, for example: <command>echo 'setxkbmap
525 -model pc105 -layout br,us -variant abnt2,dvorak -keycodes evdev'
526 &gt;&gt; /usr/share/sddm/scripts/Xsetup</command>. See man setxkbmap.
[a65d410]527 </para>
[395be1c]528
529 <para>
530 Dircolors: the <filename>/etc/dircolors</filename> file is not
531 honoured. Particularly, the compressed files are not displayed in red
532 colour. If this happens, a workaround is to issue, as the
533 <systemitem class="username">root</systemitem> user:
534 </para>
535
536<screen role="root"><userinput>echo "source /etc/profile.d/dircolors.sh" &gt;&gt; /etc/bashrc</userinput></screen>
537
538 <para>
[d09eb9b]539 It has been reported that problems may happen with this package, if
540 Xorg is installed with a prefix other than <filename
541 class="directory">/usr</filename>. So far, BLFS development team has
542 not hit any problem, in this case.
[395be1c]543 </para>
544
545 </sect3>
546
[9fa25aa]547 </sect2>
548
549 <sect2 role="content">
550 <title>Contents</title>
551
552 <segmentedlist>
553 <segtitle>Installed Programs</segtitle>
554 <segtitle>Installed Libraries</segtitle>
555 <segtitle>Installed Directories</segtitle>
556
557 <seglistitem>
558 <seg>
559 sddm and sddm-greeter
560 </seg>
561 <seg>
562 None
563 </seg>
564 <seg>
565 $QT5DIR/qml/SddmComponents,
[1def00f]566 /usr/share/sddm, and
[9fa25aa]567 /var/lib/sddm
568 </seg>
569 </seglistitem>
570 </segmentedlist>
571
572 <variablelist>
573 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
574 <?dbfo list-presentation="list"?>
575 <?dbhtml list-presentation="table"?>
576
577 <varlistentry id="sddm-prog">
578 <term><command>sddm</command></term>
579 <listitem>
580 <para>
581 is a display and login manager based on
[1def00f]582 <application>Qt</application> libraries.
[9fa25aa]583 </para>
584 <indexterm zone="sddm sddm-prog">
585 <primary sortas="b-sddm">sddm</primary>
586 </indexterm>
587 </listitem>
588 </varlistentry>
589
590 <varlistentry id="sddm-greeter">
591 <term><command>sddm-greeter</command></term>
592 <listitem>
593 <para>
594 is an auxiliary process that displays the greeter,
[1def00f]595 a graphical user interface that performs user
596 authentication and initiates the selected window manager
597 or display environment.
[9fa25aa]598 </para>
599 <indexterm zone="sddm sddm-greeter">
600 <primary sortas="b-sddm-greeter">sddm-greeter</primary>
601 </indexterm>
602 </listitem>
603 </varlistentry>
604
605 </variablelist>
606
607 </sect2>
608
609</sect1>
Note: See TracBrowser for help on using the repository browser.