3 min read

Tweak XDM

We all know that GDM and KDM are huge and bloated, and come with the huge and bloated systems: Gnome and KDE. Well, since we are supposed to be hacking, we really don't want to have a bunch of bloat sitting around now do we? There's a solution.

Most people cringe at the though of using XDM as their display manager for a variety of reasons. The main reason is that they don't feel that there is enough freedom and ease of use with the program. Most of the concerns I have heard voiced over the use of XDM are merely the result of ignorance. Provided, there are some things which XDM might not be best at, most everything you could want to do will be doable through this simple, fast, easy display manager.

Why use XDM?

There are a few reasons. The primary reason is that it is small, fast, and comes with X. You don't have to install every Gnome and KDE library known to man in order to use it. It's approach is simple. There are very few things which are actually complicated about it.

But I can't change Window Managers!?

Aaah, but yes, you can! XDM does have a display switcher, but I prefer not to use it. There is just a little too much bulk there, and I would prefer to allow each person a simple and easy way to configure their system. In Slackware, this is provided with the easy to use and simple xprofile file.

You can configure generic options by using /etc/xprofile and putting commands in there just like you would for an Xsession file. The reason you do this is that XDM calls this file with the command source /etc/xprofile. For the most part, I don't have a file like this, as I don't think it's necessary. I would prefer to allow each user to customize their system the way they want using personalized xprofiles.

You can have a personalized xprofile by simply editing the file ~/.xprofile. Chances are that it will not be there, so just create it. I don't like to have a lot of programs start by default, so the only thing I have in there is a command to set my background, and the window manager command. It looks like this:

xv -bg black -root -quit -rm 5 \
exec fvwm2

What this does is use the program "xv" to set the root window to my desktop background. Then it calls fvwm2 to start my window manager of choice.

Some people may also want to start a clock, a few xterms, and perhaps a chat program or processor monitor. If you want to work with more window manager related items, I would recommend editing the appropriate window manager startup files rather than .xprofile. For example, I have the desktop pager that runs with fvwm2 set to start in my startup file.

But what about all that background and icon stuff?

Yes yes, you can do all that too. XDM provides simple command files in /etc/X11/xdm that you can configure to your liking. For me, I use Xresources to set the icon that shows up on the login window, and I change Xsetup_0 to set the desktop background to my preferences. That's all I really need to do, but you can also change teh colorings, fonts and all sorts of other settings as well.


If you want to use your computer to the fullest potential, you are most likely going to avoid a lot of eye candy and make your computer faster and more functional, rather than make it a plaything. This means that you need fast programs running the backbone of your operation. Unless you enjoy the command line and can do all your work in there, you are going to want to run some kind of window manager. I don't suggest/recommend any of the desktop environments simply because I think they slow you down and don't provide as flexible or effecient an interface as one would really desire.

If you don't use Gnome or KDE, though, you probably don't want to use their display managers either, as that will just make more bloat. The better alternative is to use the aptly flexible, and quite speedy XDM, which can provide you with everything you need to work comfortably, and yet still provide you with the necessary speed and effeciency.

Everything you want to change about XDM can be edited through configuration files located in /etc/X11/xdm. You may also want to do per-user configuration by utilizying the .xprofile source files which can be placed in any users home directory, in the same manner as .xsession and .xinitrc.

I hope everyone at least gives XDM a try, as I think you'll find it much more appropriate than the bloated and overloaded GDM and KDM.