Introduction
This guide helps you install and customise windowlab on ubuntu. Windowlab is a very small, simple, flexible and reliable window manager (wm). Unlike wms such as GNOME there are no icons, no desktop and no frills, just windows, which you may rearrange, open, close and give the focus to, allowing you to get on with whatever prompted you to start your computer in the first place. You might think of it as being 'one step up from X' but if you give it a try and get used to it, you may also find that it's a very productive environment. The background and motivation for windowlab is explained at http://nickgravgaard.com/windowlab/. If you want to decorate your desktop and have multiple screens etc, there are plenty of simple ways of doing that without installing lots of software you may never need. This a characteristically *NIX way of doing things (small, 'sharp' applications glued together).
Installation
Dapper or later
Install using synaptic or by typing
sudo apt-get install windowlab
Breezy
There is no package for Breezy, so you need to download, compile and install from source. Make sure you have gcc installed. Download the latest version of windowlab from http://nickgravgaard.com/windowlab/ and type the following commands:
tar -xvf windowlab-XXX.tar cd windowlab-XXX make sudo make install
Post-Installation
You should now have windowlab installed in /usr/X11R6/bin/. Use the instructions in CustomXSession to make sure that you can use it, and make sure your .xinitrc file ends with the line
exec windowlab
Configuration
You can set a background colour or image for your desktop using xsetroot. Add something like this to .xinitrc:
xsetroot -cursor_name top_left_arrow -solid deepskyblue4
To use rhythmbox (the default ubuntu music app) you need to start ESD automatically (how?) or set gstreamer to use something other than ESD for output. Use gstreamer-properties to select ALSA or OSS etc.
When you start windowlab the menu is visible when right-clicking anywhere outside an active window. To select a menu option, release the mouse over it. You'll start out with the default menu, which lives at /etc/X11/windowlab/windowlab.menurc. To create your own, type:
mkdir ~/.windowlab cp /etc/X11/windowlab/windowlab.menurc ~/.windowlab/
And start editing it, adding lines in the format
label:command
Use gksudo to launch apps that require su privileges, eg
network:gksudo network-admin
Many GUI applications support the standard X option geometry, allowing you to specify the initial size and position of the window in the format WxH+X+Y, e.g. the command
gnome-terminal --geometry 100x30+40+30
will open a terminal 100 characters wide and 30 lines tall, with the top left hand corner 40 pixels from the left edge and 30 pixels from the top edge of the screen. (Applications will more often intepret the W and H coordinates as pixel values.) It is useful to include this option in the windowlab menu commands because windows are otherwise created at the current mouse position.
It's quite easy to select quit from the menu accidentally. To avoid this, install gmessage and create a script like this
# ~/bin/quit-windowlab.sh gmessage -buttons Yes:0,No:1 Quit windowlab? case $? in 0) skill windowlab;; 1) ;; esac
Then change the quit line in windowlab.menurc to
quit:~/bin/quit-windowlab.sh
Show the date and time on the desktop
Install dzen then create this shell script as ~/bin/status.sh and add a line to .xinitrc to call it:
#!/bin/sh while true ; do date +"%H.%M %a %b %d" sleep 60 done | dzen2 -p 10 -ta r -y 20 -fg gray -bg steelblue4 -fn -xos4-terminus-medium-r-normal--16-160-72-72-c-80-iso8859-1
(If that font isn't on your system you can check which ones actually are using xlsfonts.)