Introduction to GDM

GDM is a system service that is responsible for providing graphical logins and managing local and remote displays.

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

Package Information

GDM Dependencies


AccountsService-0.6.55, GTK+-3.24.25, ISO Codes-4.5.0, itstool-2.0.6, libcanberra-0.30, libdaemon-0.14, and Linux-PAM-1.5.1



Runtime Dependencies

gnome-session-3.38.0, gnome-shell-3.38.3, and elogind-246.9.2

User Notes:

Installation of GDM

It is recommended to have a dedicated user and group to take control of the gdm daemon after it is started. Issue the following commands as the root user:

groupadd -g 21 gdm &&
useradd -c "GDM Daemon Owner" -d /var/lib/gdm -u 21 \
        -g gdm -s /bin/false gdm &&
passwd -ql gdm

First, adapt GDM to build without systemd present:

sed -i -r '/(^| )systemd_dep/d'

Install GDM by running the following commands:

sed 's@systemd@elogind@' -i data/pam-lfs/gdm-launch-environment.pam &&

mkdir build &&
cd    build &&

meson --prefix=/usr               \
      -Dplymouth=disabled         \
      -Dgdm-xsession=true         \
      -Dpam-mod-dir=/lib/security \
      -Dsystemd-journal=false     \
      -Dsystemdsystemunitdir=/tmp \
      -Dsystemduserunitdir=/tmp   .. &&

This package does not come with a usable test suite.

Now, as the root user:

ninja install &&
rm -rv /tmp/*.{service,target.d}

Command Explanations

-Dinitial-vt=7: Use this switch to make GDM start on VT7 instead of the first free VT.

-Dplymouth=disabled: GDM now explicitly requires plymouth to be installed. Use this switch to disable this dependency.

-Ddefault-pam-config=lfs: Use this switch if you did not create the /etc/lfs-release file or distribution auto detection will fail and you will be unable to use GDM.

-Dgdm-xsession=true: This enables the installation of the GDM Xsession file.

Configuring GDM

Config Files


Configuration Information

The GDM daemon is configured using the /etc/gdm/custom.conf file. Default values are stored in GSettings in the gdm.schemas file. It is recommended that end-users modify the /etc/gdm/custom.conf file because the schemas file may be overwritten when the user updates their system to have a newer version of GDM.

Boot Script

To start gdm automatically when the system is switched to runlevel 5, install the /etc/rc.d/init.d/xdm script and the /etc/sysconfig/xdm configuration file included in the blfs-bootscripts-20210110 package and adjust /etc/inittab by running as the root user:

make install-gdm

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

sed /initdefault/s/3/5/ -i /etc/inittab


Installed Programs: gdm, gdmflexiserver, and gdm-screenshot
Installed Libraries: and (PAM Module)
Installed Directories: /etc/gdm, /usr/include/gdm, /usr/share/gdm, /usr/share/help/*/gdm, /var/cache/gdm, /var/lib/gdm, /var/log/gdm, and /var/run/gdm

Short Descriptions


is a login prompt for GNOME


is a screenshot tool for GDM

Last updated on 2021-02-25 10:01:25 -0800