%general-entities; ]> $LastChangedBy$ $Date$ GDM-&gdm-version; GDM Introduction to GDM The GDM package contains GNOME's Display Manager daemon. This is useful for allowing configurable graphical logins. &lfs65_checked; Package Information Download (HTTP): Download (FTP): Download MD5 sum: &gdm-md5sum; Download size: &gdm-size; Estimated disk space required: &gdm-buildsize; Estimated build time: &gdm-time; Additional Downloads Required patch: GDM Dependencies Required and Recommended (Required for Shutdown/Restart functionality) and Optional Check, , , and User Notes: Installation of 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 -fg 21 gdm && useradd -c "GDM Daemon Owner" -d /var/lib/gdm -u 21 \ -g gdm -s /bin/false gdm || [ $? == 9 ] Install GDM by running the following commands as an unprivileged user: patch -Np1 -i ../gdm-&gdm-version;-fixes-1.patch && ./configure --prefix=$(pkg-config --variable=prefix ORBit-2.0) \ --sysconfdir=&gnome-etc-dir; \ --localstatedir=/var \ --libexecdir=$(pkg-config \ --variable=prefix ORBit-2.0)/lib/gdm \ --with-pam-prefix=/etc && make This package does not come with a test suite. Now, as the root user: make install && ln -s $(pkg-config --variable=prefix \ ORBit-2.0)/lib/gnome-settings-daemon/gnome-settings-daemon $(pkg-config \ --variable=prefix ORBit-2.0)/lib/gdm && ln -s /usr/lib/ConsoleKit/ck-get-x11-display-device $(pkg-config \ --variable=prefix ORBit-2.0)/lib/gdm && ln -s /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 $(pkg-config \ --variable=prefix ORBit-2.0)/lib/gdm Command Explanations --localstatedir=/var: This command puts files in /var instead of $GNOME_PREFIX/var. --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. --with-pam-prefix=/etc: This command puts PAM configuration files in /etc/pam.d instead of &gnome-etc-dir;. Configuring GDM Config Files &gnome-etc-dir;/gdm/custom.conf, $GNOME_PREFIX/share/gdm/defaults.conf &gnome-etc-dir;/gdm/custom.conf $GNOME_PREFIX/share/gdm/defaults.conf Configuration Information 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 &gnome-etc-dir;/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. 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 requisite 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 requisite pam_nologin.so auth required pam_permit.so account required pam_unix.so password required pam_unix.so session required pam_unix.so EOF /etc/pam.d/gdm /etc/pam.d/gdm-autologin 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. Boot Script To start a graphical login when the system is booted, install the /etc/rc.d/init.d/gdm init script included in the package. If your GNOME_PREFIX environment variable is anything other than /usr or /opt/gnome-&gnome-version;&gnome-minor-version;, you will need to modify the PATH statement in the script to include the path where you have GNOME installed. gdm make install-gdm Now edit /etc/inittab with the following commands. sed -i 's/id:3:initdefault:/id:5:initdefault:/' \ /etc/inittab Contents Installed Programs Installed Libraries Installed Directories gdm, gdm-binary, gdm-crash-logger, gdm-factory-slave, gdmflexiserver, gdm-host-chooser, gdm-product-slave, gdm-restart, gdm-safe-restart, gdm-screenshot, gdm-session-worker, gdm-simple-chooser, gdm-simple-greeter, gdm-simple-slave, gdm-stop, gdm-user-switch-applet, and gdm-xdmcp-chooser-slave None &gnome-etc-dir;/gdm{Init,PostLogin,PostSession,PreSession}, /var/lib/gdm/.gconf.mandatory,/var/lib/run/gdm,/var/log/gdm, $GNOME_PREFIX/share/{gdm/autostart/LoginWindow, gnome-2.0/ui,/gnome/help/gdm,omf/gdm} Short Descriptions gdmflexiserver is the flexi server mechanism which allows to run GDM sessions on demand, in a new virtual console. gdmflexiserver gdm-screenshot is a screenshot tool. gdm-screenshot gdm is a wrapper script to execute the GDM binary, the configurable GNOME based login prompt. gdm gdm-binary is the GNOME based login prompt. gdm-binary gdm-restart sends the HUP signal to the GDM daemon so that it restarts. It's used after the config file is edited gdm-restart gdm-safe-restart sends the USR1 signal to the GDM daemon so that it restarts. It's used after the config file is edited. gdm-safe-restart gdm-stop sends the TERM signal to the GDM daemon so that it stops. It's used after the config file is edited. gdm-stop