Giving xdm a Face Lift
Both my partner (Kate) and I enjoy a fairly minimalistic environment when it comes to our X setup/configurations. She got me hooked on Gentoo, while I got her rather attached to IceWM as a Window Manager.
IceWM has loads style for little cost, it all fits in minimal memory, it’s quick and very useable. We don’t need, nor particularly like the featureset of “desktop environments” and the Windows-wanna-be approach that Gnome and KDE tend to take. Taking this a step further, we both use xdm as a Display Manager, and yes - it is ugly. This is how I’ve made it a little more asthetically pleasing.
You should be able to find all of the configuration files for xdm in /etc/X11/xdm or somewhere similiar depending upon the distribution you’re using.
Firstly, make sure you’re actually using xdm (as opposed to gdm or kdm or one of the others), under Gentoo you can do this in /etc/rc.conf, look for the environment variable DISPLAYMANAGER, it should be set to “xdm”.
Starting with the /etc/X11/xdm/Xresources file, we first want to make the login box look a little prettier:
xlogin*greeting: Identify Yourself xlogin*namePrompt: User ID: xlogin*passwdPrompt: Password: xlogin*fail: ACCESS DENIED! xlogin*greetFont: -*-clean-bold-*-*-*-15-*-*-*-*-*-*-* xlogin*font: -*-clean-bold-*-*-*-15-*-*-*-*-*-*-* xlogin*promptFont: -*-clean-bold-*-*-*-15-*-*-*-*-*-*-* xlogin*failFont: -*-clean-bold-*-*-*-15-*-*-*-*-*-*-* xlogin*width: 300 xlogin*height: 120 xlogin*x: 10 xlogin*y: 10 xlogin*borderWidth: 2 xlogin*frameWidth: 0 xlogin*innerFramesWidth: 0 xlogin*shdColor: black xlogin*hiColor: black xlogin*background: #333333 xlogin*greetColor: yellow xlogin*failColor: red xlogin*promptColor: #ffffff xlogin*Foreground: red xlogin*Background: black xlogin*useShape: false xlogin*logoPadding: 0
You can leave the xlogin.translations bit as is, unless you particularly want to play with it), you can leave the Chooser section as is as well, unless you particularly want it customised.
Now to add a touch of interest to the root window while we’re waiting for someone to login. I decided to use the glslideshow component
to add some movement and interest. xdm generally runs as root, so you may want to copy your .xscreensaver file from your home directory to root’s to keep some configuration options (like the directory for glslideshow to pull it’s images from with xscreensaver-getimage).
Next setup your Xsetup_0 file, I tend to remove the xconsole entry, I find it annoying and if I want to check the console log, I’m more then capable of doing it myself. So I first black the screen, then start a glslideshow of images:
#!/bin/sh # $Xorg: Xsetup_0,v 1.3 2000/08/17 19:54:17 cpqbld Exp $ xsetroot -solid black /usr/lib/misc/xscreensaver/glslideshow -root -duration 26 -letterbox -zoom 50 -pan 4 -fade 5 -delay 0 &
You could of course replace glslideshow with anything, even tuxracer if you wanted to!
Enjoy your slightly prettier xdm configuration.