My StumpWM setup

I use StumpWM instead of e.g. Gnome. StumpWM is a tiling window manager, which means that it's a good window manager.

Problems

I never had any problems with StumpWM until I upgraded to Trisquel 4.0 and Trisquel 4.5, after which StumpWM irregularly threw errors such as:

g_dbus_connection_real_closed: Remote peer vanished with error: Underlying
GIOStream returned 0 bytes on an async read (g-io-error-quark, 0). Exiting.

and also some fatal X errors which killed StumpWM and all its running programs. This naturally annoyed me. I soon realized that it had nothing to do with Trisquel, it was just that dependencies on things like D-Bus was getting on StumpWM's nerves. I had always used an Xsession file to login to StumpWM:

[Desktop Entry]
Encoding=UTF-8
Type=XSession
Exec=stumpwm
TryExec=stumpwm
Name=StumpWM
Comment=Stump window manager

but clearly, this wasn't good enough. Whenever I ran the default gnome-session and whatever window manager was associated to that, there were no problems. And while in gnome-session, I could always run:

stumpwm --replace

to replace metacity or whatever with StumpWM. Except for an annoying gnome-panel and Gnome taking over some of my keybindings, this worked alright. The best thing was that when the fatal X error occured, only StumpWM was killed — all windows were maintained. This made me realize that one could create a script which starts a new StumpWM instance whenever an old StumpWM crashes, to create the illusion of a continually running StumpWM.

Solution

I added this to my .profile:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
if [ "$DISPLAY" ] ; then
    pkill stumpwm
    # Restart StumpWM when it crashes
    while [ 1 ] ; do
        stumpwm --replace
        pkill stumpwm
    done
fi

# Since StumpWM will continue forever, this .profile file will block
# gnome-session from loading misc. crap.

You may also have to edit gnome-panel out of /desktop/gnome/session/required_components in gconf-editor.

Links

Title:My StumpWM setup
Modified:Sat, 13 Aug 2011 18:09:32 +0200
Created:Sat, 13 Aug 2011 18:09:32 +0200
Revision:0 (local), 33 (global)
Summary:How I've set up StumpWM on Trisquel
License:Creative Commons Attribution-ShareAlike 3.0 Unported (or any later version)

JavaScript License Information | View source