lxdm-0.5.3

Introduction to LXDM

The LXDM is a lightweight Display Manager for the LXDE desktop. It can also be used as an alternative to other Display Managers such as GNOME's GDM or LightDM.

This package is known to build and work properly using an LFS-9.1 platform.

Package Information

LXDM Dependencies

Required

GTK+-2.24.32, ISO Codes-4.4, and librsvg-2.46.4 (runtime, for default theme background)

Recommended

Optional

GTK+-3.24.13

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/lxdm

Installation of LXDM

First, some fixes.

cat > pam/lxdm << "EOF"
# Begin /etc/pam.d/lxdm

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/lxdm
EOF

sed -i 's:sysconfig/i18n:profile.d/i18n.sh:g' data/lxdm.in &&
sed -i 's:/etc/xprofile:/etc/profile:g' data/Xsession &&
sed -e 's/^bg/#&/'        \
    -e '/reset=1/ s/# //' \
    -e 's/logou$/logout/' \
    -e "/arg=/a arg=$XORG_PREFIX/bin/X" \
    -i data/lxdm.conf.in

Install LXDM by running the following commands:

./configure --prefix=/usr     \
            --sysconfdir=/etc \
            --with-pam        \
            --with-systemdsystemunitdir=no &&
make

This package does not come with a test suite.

Now, as the root user:

make install

Command Explanations

cat > pam/lxdm << "EOF" ...: Replace default /etc/pam.d/lxdm by another one appropriate for BLFS.

sed -i ... data/lxdm.conf.in: Modifications in the default configuration: (1) fix the background to the default one; (2) restart X when session is close; (3) typo; and (4) include XORG_PREFIX, which may be different from /usr.

sed -i ... data/Xsession: Source /etc/profile, instead of other file, according to BLFS standard.

sed -i ... data/lxdm.in: Fix greeter's locale for BLFS specification.

--with-pam: This parameter enables use of pam authentication.

--with-systemdsystemunitdir=no: BLFS does not support systemd.

Configuring LXDM

Config Files

/etc/lxdm/lxdm.conf

Boot Script

Install the /etc/rc.d/init.d/lxdm init script from the blfs-bootscripts-20191204 package.

make install-lxdm

Configuration Information

The LXDM daemon configuration file (/etc/lxdm/lxdm.conf) specifies options that include numlock on/off, background image (bg), session, etc. You can set a default session by uncommenting the line: session=/usr/bin/startlxde and replacing startlxde with your session of choice. For GNOME session=/usr/bin/gnome-session. For OPENBOX session=/usr/bin/openbox-session and for XFCE session=/usr/bin/startxfce4.

It is also possible to set the preferred session on a per-user basis by editing the ~/.dmrc file for each user and adding:

[Desktop]
        Session=xfce

You can replace the default dummy face in the greeting screen by another image representing your user. For that, copy or symlink the desired image to your home directory with the name .face.

Starting lxdm

You can manually start lxdm, e.g, if the bootscript has been installed, by running, as root user:

/etc/rc.d/init.d/lxdm start

By convention, X should be executed at runlevel 5, consequently, the same is true for lxdm. However, the LFS default runlevel is 3. Changing to runlevel 5, from the console (as root user) starts the lxdm bootscript and presents the greeter screen:

init 5

In order to permanently set the default to 5, starting the lxdm greeter screen automatically, you can modify /etc/inittab. As the root user:

cp -v /etc/inittab{,-orig} &&
sed -i '/initdefault/ s/3/5/' /etc/inittab

You should also disable default elogind power management:

cat >> /etc/elogind/logind.conf << "EOF"
AllowSuspend=no
AllowHibernation=no
EOF
[Note]

Note

One important script, executed after login is /etc/lxdm/Xsession which we have fixed to fit BLFS specifications.

Contents

Installed Programs: lxdm, lxdm-binary and lxdm-config
Installed Libraries: None
Installed Directories: /etc/lxdm and /usr/share/lxdm

Short Descriptions

lxdm

is a script to execute lxdm-binary

lxdm-binary

is the actual Display Manager; needs to be executed with option -d to daemonize

lxdm-config

is a graphical customizing program

Last updated on 2020-02-21 01:01:08 -0800