source: x/dm/sddm.xml@ 77a6d25

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt nosym perl-modules 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 77a6d25 was 77a6d25, checked in by Igor Živković <igor@…>, 8 years ago

misspellings

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

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