The GDM package contains GNOME's Display Manager daemon. This is useful for allowing configurable graphical logins.
Download (HTTP): http://ftp.gnome.org/pub/gnome/sources/gdm/2.14/gdm-2.14.10.tar.bz2
Download MD5 sum: e880558dc3574f804f3abca869992a4f
Download size: 3.0 MB
Estimated disk space required: 54.6 MB
Estimated build time: 0.6 SBU
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/gdm
It is recommended to have a dedicated user and group to take control of the gdm-binary daemon after it is started. Issue the following commands as the root user:
groupadd -g 21 gdm && useradd -c "GDM Daemon Owner" -d /dev/null \ -g gdm -s /bin/bash -u 21 gdm
Install GDM by running the following commands as an unprivileged user:
./configure --prefix=$(pkg-config --variable=prefix ORBit-2.0) \ --sysconfdir=/etc/gnome/2.14.3 \ --localstatedir=/var/lib \ --libexecdir=$(pkg-config \ --variable=prefix ORBit-2.0)/lib/gdm \ --mandir=$(pkg-config \ --variable=prefix ORBit-2.0)/share/man \ --with-pam-prefix=/etc && make
This package does not come with a test suite.
Now, as the root user:
--prefix=$(pkg-config --variable=prefix ORBit-2.0): Setting the prefix using this parameter instead of with $GNOME_PREFIX will ensure that the prefix is consistent with the installation environment and the package will be installed in the correct location.
--sysconfdir=/etc/gnome/2.14.3: This parameter causes the configuration files to be installed in /etc/gnome/2.14.3 instead of $GNOME_PREFIX/etc. Additionally (if applicable), the parameter ensures that the GConf-2 database is correctly updated.
--localstatedir=/var/lib: This command puts files in /var/lib instead of $GNOME_PREFIX/var. This also has the downside affect of using /var/lib/log/gdm as the log directory. See the “Configuration Information” section below for instructions on relocating the log file directory.
--libexecdir=$(pkg-config --variable=prefix ORBit-2.0)/lib/gdm: This parameter is used so that the GDM internal support programs are installed in the preferred location of $GNOME_PREFIX/lib/gdm instead of $GNOME_PREFIX/libexec.
--mandir=$(pkg-config --variable=prefix ORBit-2.0)/share/man: This parameter causes the man.(X) files to be installed in $GNOME_PREFIX/share/man/man(X) instead of $GNOME_PREFIX/man/man(X).
--with-pam-prefix=/etc: This command puts PAM configuration files in /etc/pam.d instead of /etc/gnome/2.14.3.
Starting with the 2.14.x version of GNOME, the default configuration parameters are stored in a static file ($GNOME_PREFIX/share/gdm/defaults.conf). This file is not intended to be edited. If modification of the configuration is necessary, you should add parameters to the /etc/gnome/2.14.3/gdm/custom.conf file. The settings in this file will override the settings in the static file. The same parameters in the static file are used in the configuration file.
Change the directory containing the GDM log files to the /var/log hierarchy by creating a directory and modifying the /etc/gnome/2.14.3/gdm/custom.conf configuration file. Issue the following commands as the root user:
install -v -m755 -d /var/log/gdm && sed -i.orig "/\[daemon\]/ a LogDir=/var/log/gdm" \ /etc/gnome/2.14.3/gdm/custom.conf && rmdir -v /var/lib/log/gdm && rmdir -v /var/lib/log
The GDM PAM configuration files contain modules not present in a BLFS installation. If you have PAM installed, issue the following commands as the root user to replace those files with files containing correctly specified modules:
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
If you have D-BUS installed and you want to start the session D-BUS daemon when you start the GNOME desktop environment using gdm, you'll need to create a new Xsession file. Create the file using the following command as the root user.
cat > $GNOME_PREFIX/share/xsessions/gnome-dbus.desktop << "EOF" [Desktop Entry] Encoding=UTF-8 Name=GNOME with D-BUS Comment=GNOME Desktop with D-BUS support Exec=dbus-launch --exit-with-session gnome-session TryExec=/usr/bin/dbus-launch Icon= Type=Application EOF chmod -v 644 $GNOME_PREFIX/share/xsessions/gnome-dbus.desktop
Choose this session using the session selection dialog on the display manager login screen. You also have the opportunity to make this your default session.
You may use the .desktop file created above as an example to create additional .desktop files and add any other desired items to the GDM display manager session selection menu.
gdm can be tested by executing it as the root user. Use the gdm-stop command if you wish to stop the display manager.
To start a graphical login when the system is booted, install the /etc/rc.d/init.d/gdm init script included in the blfs-bootscripts-20060910 package. If your GNOME_PREFIX environment variable is anything other than /usr or /opt/gnome-2.14.3, you will need to modify the PATH statement in the script to include the path where you have GNOME installed.
Now edit /etc/inittab so that the line containing:
is changed to:
is a wrapper script to execute the GDM binary, the configurable GNOME based login prompt.
sends the HUP signal to the GDM daemon so that it restarts. It's used after the config file is edited
sends the USR1 signal to the GDM daemon so that it restarts. It's used after the config file is edited.
is a graphical interface to edit the gdm.conf file.
Last updated on 2007-01-14 12:11:18 -0600