The problem is as follows. In the end, different types of widget are going to
have distinct configurable options. This means that we need to have a
different section type for every widget type, if we are ever to make the
configuration nice. In fact, a configuration syntax like this would suit us
very well:
textbox name {
foo = bar
}
focuslist name2 {
bar = voing
}
This is all very well, but libconfuse has a limitation - there is no "nice"
way to retrieve the order of disparate sections (i.e. sections of different
types), and order is important to us. This patch goes to some effort to
retrieve the section order by extracting an array of widgets, and sorting them
based on line number.
awesome
=======
awesome is an extremely fast, small, and dynamic window manager for X.
It's based on dwm.
Requirements
------------
In order to build awesome you need the Xlib header files, libconfuse and cairo.
Installation
------------
Edit config.mk to match your local setup (awesome is installed into
the /usr/local namespace by default).
Afterwards enter the following command to build and install awesome (if
necessary as root):
make install
Running awesome
-----------
Add the following line to your .xinitrc to start awesome using startx
or to .xsession to start awesome using gdm/kdm/xdm...:
exec awesome
In order to connect awesome to a specific display, make sure that
the DISPLAY environment variable is set correctly, e.g.:
DISPLAY=foo.bar:1 exec awesome
(This will start awesome on display :1 of the host foo.bar.)
Configuration
-------------
The configuration of awesome is done by creating a ~/.awesomerc file.
An example is provided in the sources.