2015-08-02 03:49:50 +08:00
|
|
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
|
|
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
|
|
<!ENTITY % general-entities SYSTEM "../../general.ent">
|
|
|
|
%general-entities;
|
|
|
|
|
|
|
|
<!-- Place this in the general.ent file
|
|
|
|
<!ENTITY TEMPLATE-version "">
|
|
|
|
-->
|
|
|
|
|
2015-08-03 01:52:55 +08:00
|
|
|
<!ENTITY sddm-download-http "&sources-anduin-other-http;/sddm-&sddm-version;.tar.xz">
|
2015-08-02 03:49:50 +08:00
|
|
|
<!ENTITY sddm-download-ftp " ">
|
|
|
|
<!ENTITY sddm-md5sum "e110a7683867400dc9484d4744fd41dd">
|
|
|
|
<!ENTITY sddm-size "4.6 KB">
|
2015-08-03 01:27:34 +08:00
|
|
|
<!ENTITY sddm-buildsize "18 MB">
|
2015-08-02 03:49:50 +08:00
|
|
|
<!ENTITY sddm-time "0.6 SBU ">
|
|
|
|
]>
|
|
|
|
|
|
|
|
<sect1 id="sddm" xreflabel="sddm-&sddm-version;">
|
|
|
|
<?dbhtml filename="sddm.html"?>
|
|
|
|
|
|
|
|
<sect1info>
|
|
|
|
<othername>$LastChangedBy$</othername>
|
|
|
|
<date>$Date$</date>
|
|
|
|
</sect1info>
|
|
|
|
|
|
|
|
<title>sddm-&sddm-version;</title>
|
|
|
|
|
|
|
|
<indexterm zone="sddm">
|
|
|
|
<primary sortas="a-SDDM">SDDM</primary>
|
|
|
|
</indexterm>
|
|
|
|
|
|
|
|
<sect2 role="package">
|
|
|
|
<title>Introduction to SDDM</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
The <application>SDDM</application> package contains a lightweight
|
2015-08-02 07:47:07 +08:00
|
|
|
display manager based upon <application>Qt</application> and QML.
|
2015-08-02 03:49:50 +08:00
|
|
|
</para>
|
|
|
|
|
|
|
|
&lfs77_checked; &gcc5_checked;
|
|
|
|
|
|
|
|
<bridgehead renderas="sect3">Package Information</bridgehead>
|
|
|
|
<itemizedlist spacing="compact">
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Download (HTTP): <ulink url="&sddm-download-http;"/>
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Download (FTP): <ulink url="&sddm-download-ftp;"/>
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Download MD5 sum: &sddm-md5sum;
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Download size: &sddm-size;
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Estimated disk space required: &sddm-buildsize;
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Estimated build time: &sddm-time;
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
|
|
<bridgehead renderas="sect3">SDDM Dependencies</bridgehead>
|
|
|
|
|
|
|
|
<bridgehead renderas="sect4">Required</bridgehead>
|
|
|
|
<para role="required">
|
|
|
|
<xref linkend="cmake"/> and
|
|
|
|
<xref linkend="qt5"/>
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<bridgehead renderas="sect4">Recommended</bridgehead>
|
|
|
|
<para role="recommended">
|
2015-08-03 01:27:34 +08:00
|
|
|
<xref linkend="linux-pam"/> and
|
|
|
|
<xref linkend="upower"/>
|
2015-08-02 03:49:50 +08:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<bridgehead renderas="sect4">Optional</bridgehead>
|
|
|
|
<para role="optional">
|
|
|
|
<ulink url="http://sourceforge.net/projects/docutils/">Docutils</ulink>
|
2015-08-03 01:27:34 +08:00
|
|
|
(for the man pages)
|
2015-08-02 03:49:50 +08:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<bridgehead renderas="sect4">Runtime Dependencies</bridgehead>
|
|
|
|
<para role="required">
|
|
|
|
<xref linkend="consolekit"/>
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para condition="html" role="usernotes">User Notes:
|
|
|
|
<ulink url="&blfs-wiki;/sddm"/>
|
|
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 role="installation">
|
|
|
|
<title>Installation of SDDM</title>
|
|
|
|
|
|
|
|
<para>
|
2015-08-02 07:47:07 +08:00
|
|
|
First, create a dedicated user and group to take
|
2015-08-02 03:49:50 +08:00
|
|
|
control of the <command>sddm</command> daemon after it is
|
|
|
|
started. Issue the following commands as the
|
|
|
|
<systemitem class="username">root</systemitem> user:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen role="root"><userinput>groupadd -g 64 sddm &&
|
2015-08-02 07:47:07 +08:00
|
|
|
useradd -c "SDDM Daemon" -d /var/lib/sddm -u 64 -g sddm -s /bin/false sddm</userinput></screen>
|
2015-08-02 03:49:50 +08:00
|
|
|
|
2015-08-03 01:27:34 +08:00
|
|
|
<para>
|
|
|
|
By default, <application>SDDM</application> starts the X server with the
|
|
|
|
parameter <parameter>-nolisten tcp</parameter>. If you need to remotely
|
|
|
|
connect to X, this is undesirable. You can optionally remove this
|
|
|
|
parameter by running:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen><userinput>sed -e '/nolisten/d' \
|
|
|
|
-i src/daemon/XorgDisplayServer.cpp</userinput></screen>
|
|
|
|
|
2015-08-02 03:49:50 +08:00
|
|
|
<para>
|
|
|
|
Install <application>SDDM</application> by running the following
|
|
|
|
commands:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen><userinput>mkdir build &&
|
|
|
|
cd build &&
|
|
|
|
|
|
|
|
cmake -DCMAKE_INSTALL_PREFIX=/usr \
|
|
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
|
|
-DENABLE_JOURNALD=OFF \
|
|
|
|
-Wno-dev .. &&
|
|
|
|
make</userinput></screen>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
This package does not come with a test suite.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Now, as the <systemitem class="username">root</systemitem> user:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen role="root"><userinput>make install &&
|
|
|
|
install -v -dm755 -o sddm -g sddm /var/lib/sddm</userinput></screen>
|
|
|
|
|
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 role="commands">
|
|
|
|
<title>Command Explanations</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
<parameter>-DCMAKE_BUILD_TYPE=Release</parameter>: This switch is used to
|
2015-08-02 07:47:07 +08:00
|
|
|
apply additional compiler optimizations.
|
2015-08-02 03:49:50 +08:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
<parameter>-DENABLE_JOURNALD=OFF</parameter>: This switch is used because
|
|
|
|
BLFS does not support <application>systemd</application>.
|
|
|
|
</para>
|
|
|
|
|
2015-08-03 01:27:34 +08:00
|
|
|
<para>
|
|
|
|
<option>-DBUILD_MAN_PAGES=ON</option>: This switch may be used if you want
|
|
|
|
the man pages to be installed. Notice that you need
|
|
|
|
<ulink url="http://sourceforge.net/projects/docutils/">Docutils</ulink>
|
|
|
|
to build them.
|
|
|
|
</para>
|
|
|
|
|
2015-08-02 03:49:50 +08:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 role="configuration">
|
|
|
|
<title>Configuring SDDM</title>
|
|
|
|
|
2015-08-03 01:27:34 +08:00
|
|
|
<sect3 id="sddm-config">
|
|
|
|
<title>Config File</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
/etc/sddm.conf
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<indexterm zone="sddm sddm-config">
|
|
|
|
<primary sortas="e-sddm.conf">/etc/sddm.conf</primary>
|
|
|
|
</indexterm>
|
|
|
|
|
|
|
|
</sect3>
|
|
|
|
|
2015-08-02 07:47:07 +08:00
|
|
|
<sect3 id="sddm-bootscript">
|
|
|
|
<title>Boot Script</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Install the <filename>/etc/rc.d/init.d/sddm</filename> init script from
|
|
|
|
the <xref linkend="bootscripts"/> package.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<indexterm zone="sddm sddm-bootscript">
|
|
|
|
<primary sortas="f-sddm">sddm</primary>
|
|
|
|
</indexterm>
|
|
|
|
|
|
|
|
<screen role="root"><userinput>make install-sddm</userinput></screen>
|
|
|
|
|
|
|
|
</sect3>
|
|
|
|
|
2015-08-02 03:49:50 +08:00
|
|
|
<sect3>
|
|
|
|
<title>Linux PAM Configuration</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
If you have built <application>SDDM</application>
|
|
|
|
with <application>Linux PAM</application> support,
|
|
|
|
create the necessary configuration files by running
|
|
|
|
the following commands as the <systemitem
|
|
|
|
class="username">root</systemitem> user:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen role="root"><userinput>cat > /etc/pam.d/sddm << "EOF" &&
|
|
|
|
<literal># Begin /etc/pam.d/sddm
|
|
|
|
|
|
|
|
auth requisite pam_nologin.so
|
|
|
|
auth required pam_env.so
|
|
|
|
|
|
|
|
auth required pam_succeed_if.so uid >= 1000 quiet
|
|
|
|
auth include system-auth
|
|
|
|
|
|
|
|
account include system-account
|
|
|
|
password include system-password
|
|
|
|
|
|
|
|
session required pam_limits.so
|
|
|
|
session include system-session
|
|
|
|
|
|
|
|
# End /etc/pam.d/sddm</literal>
|
|
|
|
EOF
|
2015-08-02 07:47:07 +08:00
|
|
|
|
2015-08-02 03:49:50 +08:00
|
|
|
cat > /etc/pam.d/sddm-autologin << "EOF" &&
|
|
|
|
<literal># Begin /etc/pam.d/sddm-autologin
|
|
|
|
|
|
|
|
auth requisite pam_nologin.so
|
|
|
|
auth required pam_env.so
|
|
|
|
|
|
|
|
auth required pam_succeed_if.so uid >= 1000 quiet
|
|
|
|
auth required pam_permit.so
|
|
|
|
|
|
|
|
account include system-account
|
|
|
|
|
|
|
|
password required pam_deny.so
|
|
|
|
|
|
|
|
session required pam_limits.so
|
|
|
|
session include system-session
|
|
|
|
|
|
|
|
# End /etc/pam.d/sddm-autologin</literal>
|
|
|
|
EOF
|
2015-08-02 07:47:07 +08:00
|
|
|
|
2015-08-02 03:49:50 +08:00
|
|
|
cat > /etc/pam.d/sddm-greeter << "EOF"
|
|
|
|
<literal># Begin /etc/pam.d/sddm-greeter
|
|
|
|
|
|
|
|
auth required pam_env.so
|
|
|
|
auth required pam_permit.so
|
|
|
|
|
|
|
|
account required pam_permit.so
|
|
|
|
password required pam_deny.so
|
|
|
|
session required pam_unix.so
|
|
|
|
-session optional pam_systemd.so
|
|
|
|
|
|
|
|
# End /etc/pam.d/sddm-greeter</literal>
|
|
|
|
EOF</userinput></screen>
|
|
|
|
|
|
|
|
</sect3>
|
|
|
|
|
|
|
|
<sect3 id="sddm-init">
|
|
|
|
<title>Starting sddm</title>
|
|
|
|
|
|
|
|
<para>
|
2015-08-02 07:47:07 +08:00
|
|
|
If the sddm bootscript has been installed, start it by running, as
|
|
|
|
<systemitem class="username">root</systemitem> user:
|
2015-08-02 03:49:50 +08:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen role="root"><userinput>/etc/rc.d/init.d/sddm start</userinput></screen>
|
|
|
|
|
|
|
|
<para>
|
2015-08-03 01:27:34 +08:00
|
|
|
By convention, X should be executed at runlevel 5, consequently, the
|
2015-08-02 07:47:07 +08:00
|
|
|
same is true for <application>sddm</application>. However, LFS default
|
|
|
|
runlevel is 3. Changing to runlevel 5, from a console terminal, as
|
|
|
|
<systemitem class="username">root</systemitem> user, starts the
|
|
|
|
<command>sddm</command> bootscript, bringing up the greeter screen:
|
2015-08-02 03:49:50 +08:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen role="root"><userinput>init 5</userinput></screen>
|
|
|
|
|
|
|
|
<para>
|
2015-08-02 07:47:07 +08:00
|
|
|
In order to permanently set the default to 5, starting the
|
|
|
|
<command>sddm</command> greeter screen automatically, modify
|
|
|
|
<filename>/etc/inittab</filename>. As the <systemitem
|
|
|
|
class="username">root</systemitem> user:
|
2015-08-02 03:49:50 +08:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen role="root"><userinput>cp -v /etc/inittab{,-orig} &&
|
|
|
|
sed -i '/initdefault/ s/3/5/' /etc/inittab</userinput></screen>
|
|
|
|
|
|
|
|
</sect3>
|
|
|
|
|
2015-08-03 01:27:34 +08:00
|
|
|
<sect3 id="sddm-sessions">
|
|
|
|
<title>Available Sessions</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
The greeter offers a list of available sessions,
|
|
|
|
depending on the Window Managers and Desktop Environments installed. The
|
|
|
|
list includes sessions which have a correspoding
|
|
|
|
<filename>.desktop</filename> file installed under
|
|
|
|
<filename class="directory">/usr/share/xsessions</filename>. Most of the
|
|
|
|
Window Managers and Desktop Environments automatically provide those
|
|
|
|
files, but if necessary, you may include a custom one.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
</sect3>
|
|
|
|
|
|
|
|
<sect3 id="sddm-themes">
|
|
|
|
<title>Themes</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Four themes are installed at <filename class="directory">
|
|
|
|
/usr/share/sddm/themes</filename>:
|
|
|
|
circles,
|
|
|
|
elarun,
|
|
|
|
maldives, and
|
|
|
|
maui.
|
|
|
|
The default theme is <quote>maui</quote>. You can install other themes
|
|
|
|
in that directory. In order to change the theme, you need to edit
|
|
|
|
<filename>/etc/sddm.conf</filename>, which is not installed by default.
|
|
|
|
Before proceeding, make a backup of this file, if there is one already
|
|
|
|
installed. In order to generate <filename>/etc/sddm.conf</filename>,
|
|
|
|
issue, as the <systemitem class="username">root</systemitem> user:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen role="root"><userinput>sddm --example-config > /etc/sddm.conf</userinput></screen>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Now, using your preferred text editor, change the default
|
|
|
|
<quote>maui</quote> theme, replacing <quote>Current=maui</quote> by
|
|
|
|
<quote>Current=<replaceable><insert new theme name here></replaceable></quote>,
|
|
|
|
e.g. <quote>Current=maldives</quote>.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
In order to see the theme without leaving the session, issue:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen><userinput>sddm-greeter --test-mode --theme <replaceable><theme path></replaceable></userinput></screen>
|
|
|
|
|
|
|
|
</sect3>
|
|
|
|
|
|
|
|
<sect3 id="sddm-Issues">
|
|
|
|
<title>Known Issues</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
This applications works well, but there are issues. You find the
|
|
|
|
mainstream known issues at
|
|
|
|
<ulink url="https://github.com/sddm/sddm/issues">Issues</ulink>. The BLFS development team have found some issues.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Keyboard selection: the greeter shows a double question mark or the
|
|
|
|
wrong keyboard. When you start to type the password or user name
|
|
|
|
(depending on the theme, only password), magically the right keyboard
|
|
|
|
selection appears. Optionally a workaround is to include it in
|
|
|
|
<command>/usr/share/sddm/scripts/Xsetup</command> script, as the
|
|
|
|
<systemitem class="username">root</systemitem> user:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen role="root"><userinput>echo "setxkbmap -option <replaceable><your keyboard option></replaceable>" >> /usr/share/sddm/scripts/Xsetup</userinput></screen>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Dircolors: the <filename>/etc/dircolors</filename> file is not
|
|
|
|
honoured. Particularly, the compressed files are not displayed in red
|
|
|
|
colour. If this happens, a workaround is to issue, as the
|
|
|
|
<systemitem class="username">root</systemitem> user:
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<screen role="root"><userinput>echo "source /etc/profile.d/dircolors.sh" >> /etc/bashrc</userinput></screen>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
It has been reported that this package does not work with Xorg installed
|
2015-08-03 02:15:31 +08:00
|
|
|
with a prefix other than <filename class="directory">/usr</filename>.
|
2015-08-03 01:27:34 +08:00
|
|
|
</para>
|
|
|
|
|
|
|
|
</sect3>
|
|
|
|
|
2015-08-02 03:49:50 +08:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 role="content">
|
|
|
|
<title>Contents</title>
|
|
|
|
|
|
|
|
<segmentedlist>
|
|
|
|
<segtitle>Installed Programs</segtitle>
|
|
|
|
<segtitle>Installed Libraries</segtitle>
|
|
|
|
<segtitle>Installed Directories</segtitle>
|
|
|
|
|
|
|
|
<seglistitem>
|
|
|
|
<seg>
|
|
|
|
sddm and sddm-greeter
|
|
|
|
</seg>
|
|
|
|
<seg>
|
|
|
|
None
|
|
|
|
</seg>
|
|
|
|
<seg>
|
|
|
|
$QT5DIR/qml/SddmComponents,
|
2015-08-02 07:47:07 +08:00
|
|
|
/usr/share/sddm, and
|
2015-08-02 03:49:50 +08:00
|
|
|
/var/lib/sddm
|
|
|
|
</seg>
|
|
|
|
</seglistitem>
|
|
|
|
</segmentedlist>
|
|
|
|
|
|
|
|
<variablelist>
|
|
|
|
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
|
|
|
<?dbfo list-presentation="list"?>
|
|
|
|
<?dbhtml list-presentation="table"?>
|
|
|
|
|
|
|
|
<varlistentry id="sddm-prog">
|
|
|
|
<term><command>sddm</command></term>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
is a display and login manager based on
|
2015-08-02 07:47:07 +08:00
|
|
|
<application>Qt</application> libraries.
|
2015-08-02 03:49:50 +08:00
|
|
|
</para>
|
|
|
|
<indexterm zone="sddm sddm-prog">
|
|
|
|
<primary sortas="b-sddm">sddm</primary>
|
|
|
|
</indexterm>
|
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
|
|
|
|
<varlistentry id="sddm-greeter">
|
|
|
|
<term><command>sddm-greeter</command></term>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
is an auxiliary process that displays the greeter,
|
2015-08-02 07:47:07 +08:00
|
|
|
a graphical user interface that performs user
|
|
|
|
authentication and initiates the selected window manager
|
|
|
|
or display environment.
|
2015-08-02 03:49:50 +08:00
|
|
|
</para>
|
|
|
|
<indexterm zone="sddm sddm-greeter">
|
|
|
|
<primary sortas="b-sddm-greeter">sddm-greeter</primary>
|
|
|
|
</indexterm>
|
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
|
|
|
|
</variablelist>
|
|
|
|
|
|
|
|
</sect2>
|
|
|
|
|
|
|
|
</sect1>
|