GDM-2.4.1.4

Introduction to GDM

The GDM package contains GNOME's Display Manager daemon. This is useful for allowing configurable graphical logins.

Package information

Installation of GDM

Install GDM by running the following commands:

groupadd gdm &&
useradd -c gdm -d /dev/null -g gdm -s /bin/bash gdm &&
./configure --prefix=$GNOME_PREFIX --sysconfdir=/etc/gnome \
--localstatedir=/var/lib --with-pam-prefix=/etc &&
make &&
make install

Command explanations

--sysconfdir=/etc/gnome: This command puts configuration files in /etc/gnome instead of /opt/gnome2/etc.

--localstatedir=/var/lib: This command puts files in /var/lib instead of /opt/gnome2/var.

--with-pam-prefix=/etc: This command puts PAM configuration files in /etc/pam.d instead of /etc/gnome.

Configuring GDM

Config files

/opt/gnome2/gdm.conf, /opt/gnome2/gnomerc

Configuration Information

The GDM PAM config files contain modules not present in a BLFS installation. The following commands will replace those files:

cat > /etc/pam.d/gdm << "EOF"
auth        required    pam_unix.so
auth        required    pam_nologin.so
account     required    pam_unix.so
password    required    pam_unix.so
session     required    pam_unix.so
EOF
cat > /etc/pam.d/gdm-autologin << "EOF"
auth        required    pam_env.so
auth        required    pam_nologin.so
auth        required    pam_permit.so
account     required    pam_unix.so
password    required    pam_unix.so
session     required    pam_unix.so
EOF

gdm can be tested by executing it from a root console.

To automate the running of gdm, use the following command to create the init.d script if your GNOME_PREFIX=/opt/gnome-2.2. The fully qualified paths can be removed for GNOME_PREFIX=/usr:

cat > /etc/rc.d/init.d/gdm << "EOF"
#!/bin/bash
# Begin $rc_base/init.d/gdm

# Based on sysklogd script from LFS-3.1 and earlier.
# Rewritten by Gerard Beekmans  - gerard@linuxfromscratch.org

source /etc/sysconfig/rc
source $rc_functions

case "$1" in
        start)
                echo "Starting GDM..."
                loadproc /opt/gnome-2.2/bin/gdm
                ;;

        stop)
                echo "Stopping GDM..."
		if [ -f /var/run/gdm.pid ]; then
                loadproc /opt/gnome-2.2/sbin/gdm-stop
		fi
                ;;

        reload)
                echo "Reloading GDM..."
                reloadproc /opt/gnome-2.2/sbin/gdm-safe-restart
                ;;

        restart)
                echo "Restarting GDM..."
		loadproc /opt/gnome-2.2/sbin/gdm-restart
                ;;

        *)
                echo "Usage: $0 {start|stop|reload|restart}"
                exit 1
                ;;
esac

# End $rc_base/init.d/gdm
EOF
chmod 755 /etc/rc.d/init.d/gdm

Create the symbolic links to this file in the relevant rc.d directory with the following commands:

cd /etc/rc.d/init.d &&
ln -sf ../init.d/gdm ../rc0.d/K05gdm &&
ln -sf ../init.d/gdm ../rc1.d/K05gdm &&
ln -sf ../init.d/gdm ../rc2.d/K05gdm &&
ln -sf ../init.d/gdm ../rc3.d/K05gdm &&
ln -sf ../init.d/gdm ../rc4.d/K05gdm &&
ln -sf ../init.d/gdm ../rc5.d/S95gdm &&
ln -sf ../init.d/gdm ../rc6.d/K05gdm

To autostart with a graphical login, edit /etc/inittab so that the line reading

id:3:initdefault:

is changed to

id:5:initdefault:

Contents

The GDM package contains gdm, gdm-binary, gdmXnestchooser, gdmchooser, gdmflexiserver, gdmgreeter, gdmlogin, gdmmktemp, gdmphotosetup, gdmsetup, gdmthemetester, gdm-restart, gdm-safe-restart, gdm-stop, gdmaskpass, gdmconfig and gdmopen.

Description

gdm

gdm is a wrapper script to execute the GDM binary, the configurable GNOME based login prompt.

gdmchooser

gdmchooser is an application for selecting XDMCP enabled hosts on the local network.

gdmsetup

gdmsetup is a graphical interface to edit the gdm.conf.

gdm-restart and gdm-safe-restart

gdm-restart sends the HUP signal and gdm-safe-restart sends the USR1 signal to the daemon so that it restarts. They are used after the config file is edited.

gdmconfig

gdmconfig is an application for managing the configuration of the entire GDM applications suite. It handles look and feel, security, XDMCP, GDMchooser and more.