December 2008 Archives
Wed Dec 31 17:36:54 ART 2008
Installing awesome 3.1 on Debian SID
As suggested by a couple of friends I decided to give awesome 3.1 a try. Unfortunately it wasn't available at Debian Sid's repository. So I had to download it from awesome home page and installing it from scratch. Usually this kind of things are very easy, but in this case awesome had a dependency library which was not available at Debian. So it wasn't THAT easy.
Because I didn't want my Debian installation get dirty due instalation of third-party libs on my root filesystem, I decided to install awesome and its dependency libraries in a sort of sandbox. Here it is a very short recipe:
First you have to download xcb-utils-0.3.x, which is the only dependecy not packaged in Debian. Then you must run:
$ ./configure --prefix=/sandboxdir/xcb-util
$ make
$ make install
where /sanboxdir is the sandbox directory where your third-party stuff will be located.
Then you need to download awesome-3.1.tar.gz and untar it inside your sandbox directory. The awesome windows manager uses cmake for the building process and you will need to tell cmake where to find the xcb-util lib recently installed. That's when PKG_CONFIG_PATH enviroment variable came out to solve the issue. This enviroment variable tells pkg-config where to find more metainformation about installed libraries. You have to point PKG_CONFIG_PATH where xcb-utils *.pc files are located.
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/sandboxdir/xcb-util/lib/pkconfig/
Then you must edit awesomeConfig.cmake and add sandboxdir/xcb-util/lib to the link_directories configuration option.
link_directories(/usr/local/lib sanboxdir/xcb-util/lib)
If you have already installed all the awesome's dependecy libraries, that is all you have to do. Now , you only need to execute make for starting awesome's building proccess. If everything goes well, you will find the awesome binary inside the build directory.
Finally you migth add sandboxdir/xcb-util to your LD_LIBRARY_PATH. You probably want to add the line below into your .bashrc file, in case you are using bash as your shell.
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/sandboxdir/xcb-util/
Well that's it. And you must remeber that all of this will be obsolete when xcb-util is updated on Debian.
