Changing the default window manager

Learn how to change your default window manager or desktop. Switching window managers isn’t hard, but it’s still one of the hardest things to figure out. I’m not covering kdm or gdm here, this tuXfile teaches you how to change the default window manager if you’re using xdm or starting the X Window System manually with the startx command.

Edit a text file >

Alright, you’ve installed a really fancy new window manager and want to try it out? If you’re booting to command line and starting X manually with the startx command, you’re probably wondering how to make that new fancy window manager your default. Or, if you use xdm as your display manager, you’re probably wondering the same thing because it doesn’t provide you with any menu that lets you change your window manager. You need some other way of telling X what window manager you want to use.

The good news is that changing the default window manager or desktop in Linux is really simple: you just need to edit a little config file. For editing that file you can use any text editor you’re familiar with.

startx and .xinitrc >

If you use the startx command for starting up the X Window System, you’ll need to edit a file called .xinitrc that is located in your home directory. If the file already is there, just open it with your favorite text editor. If you don’t have such a file in your home directory, create a new file with that name. Note the dot in the file name – it shows you that the file is a hidden file and doesn’t show when you do a normal directory listing.

If you already have a .xinitrc file in your home directory, it may be a huge scary-looking text file with a lot of text that makes just as much sense as a file produced with a random number generator and encrypted after writing. If you want to make a backup of this file, rename it to something like .xinitrc.backup or whatever you wish:
mv .xinitrc .xinitrc.backup

Now you can use your text editor for creating a new, blank .xinitrc file. Although the file may be a complicated multi-line geeky script, it can be very simple, too. In its simplest it just contains a single line with the name of your new window manager. So, add a line like this to your file:
exec windowmanager
where windowmanager is the command that starts the window manager you want to be your default. For example, to make Window Maker your default window manager, you’d have a line like this:
exec wmaker

The commands for starting some popular window managers and desktop environments are:

  • KDE = startkde
  • Gnome = gnome-session
  • Blackbox = blackbox
  • FVWM = fvwm (or, for FVWM2 it’s fvwm2, surprise)
  • Window Maker = wmaker
  • IceWM = icewm

After editing the .xinitrc file, save your changes. The next time you do a startx, the new window manager will be your default.

xdm and .xsession >

If you have a graphical login and have xdm as your display manager, you may also be wondering how to change the default window manager because xdm doesn’t provide a way of choosing your window manager when you log in. You’ll have to edit a text file just like in the case of editing the .xinitrc file, but this time you need to edit a file called .xsession.

The .xsession file is also located in your home directory, and you edit it exactly the same way as you’d edit .xinitrc, only the file name is different. So everything I said above applies to .xsession too. If the file isn’t already in your home directory, just create it. After editing .xsession and saving the changes, your new window manager starts up the next time you log in via xdm.