Added StumpWM
This commit is contained in:
68
site/writings/stumpwm.org
Normal file
68
site/writings/stumpwm.org
Normal file
@@ -0,0 +1,68 @@
|
||||
#+title: My StumpWM setup
|
||||
#&summary
|
||||
How I've set up StumpWM on Trisquel
|
||||
#&
|
||||
#+license: bysa
|
||||
|
||||
* 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:
|
||||
#+BEGIN_SRC
|
||||
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.
|
||||
#+END_SRC
|
||||
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:
|
||||
#+BEGIN_SRC
|
||||
[Desktop Entry]
|
||||
Encoding=UTF-8
|
||||
Type=XSession
|
||||
Exec=stumpwm
|
||||
TryExec=stumpwm
|
||||
Name=StumpWM
|
||||
Comment=Stump window manager
|
||||
#+END_SRC
|
||||
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~:
|
||||
#+BEGIN_SRC sh
|
||||
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.
|
||||
#+END_SRC
|
||||
|
||||
You may also have to edit ~gnome-panel~ out of
|
||||
~/desktop/gnome/session/required_components~ in ~gconf-editor~.
|
||||
|
||||
** Links
|
||||
|
||||
+ [[http://stumpwm.antidesktop.net/][StumpWM]]
|
||||
+ [[https://gitorious.org/nqpz-config/nqpz-config/blobs/raw/master/home/.stumpwmrc][My .stumpwmrc]]
|
||||
|
||||
Reference in New Issue
Block a user