Last updated: 2011-07-23
I couldn’t find a great guide for doing this when I set out on my journey, so I figured some people might find this useful. This guide will walk you through installing the Emerald Window Decorator on Debian 6.0 Squeeze (Stable). The guide should work for either x86 or amd64 architectures. It should also work for Debian Wheezy
Our problem is this: you want Emerald to be your window decorator so everything can be all pretty, but the Debian packages for Emerald are still a long way off (not coming until Sid). Luckily, Compiz and Compiz-Fusion are both in the repositories. If you haven’t already, please install Compiz. There is a great guide for doing that here.
As a heads up, this guide will walk you through compiling Emerald. Don’t be afraid to compile your own software.. sometimes this needs to be done and it isn’t as scary as it sounds.
- Compiz with Compiz Config Settings Manager is installed and working.
- Download the newest version of Emerald
- Make sure you get the latest version
First, you’ll need to install some libraries that you’ll need to compile Emerald. In a terminal execute the following.
$ su # apt-get install intltool build-essential libxrender-dev libgtk2.0-dev libwnck-dev libdecoration0-dev
That should get your system ready. If you don’t often compile your own software, you may be curious as to why we need the -dev versions of the packages. The -dev packages are specifically to provide header files which allow us to compile software so that they are compatible with the libraries installed on our system.
I’m going to assume you know how to use a terminal to get to the directory in which you downloaded emerald on your own, so do that.
$ tar -jxvf emerald-*.tar.bz2 #OR use this if you downloaded the tar.gz: tar -zxvf emerald-*.tar.gz $ cd emerald-* $ ./configure $ make $ su # make install
Configure Library Directories
When compiling and installing Emerald, the default setup puts the compiled binary files into /usr/local/
Debian, by default, does not look here for libraries. If we tried executing Emerald now, we’d get the following error.
emerald: error while loading shared libraries: libemeraldengine.so.0: cannot open shared object file: No such file or directory
In order for Debian to properly locate Emerald’s libraries, we have to tell it where to look.
# echo "/usr/local/lib" > /etc/ld.so.conf.d/emerald.conf
Now we must update the configuration settings.
Test, Configure, and Replace
You should now be able to run Emerald fine, but we aren’t done yet. Currently you are presumably using some other window decorator, so lets test emerald by replacing the current one.
$ emerald --replace
If everything went well, we can now configure Compiz to load Emerald as the default window decorator. Load Compiz Config Setting Manager. Under Effects you should find Window Decoration. In here, set the command to
Reboot, and enjoy!
If everything went well, you should now have replaced your old window decorator with Emerald. If things did not go as planned, as always, feel free to email me ([dan @ my lastname dot ca]) or leave a comment below. If you have found this guide useful, please consider pressing the +1, or leaving me a comment to let me know my work is useful sometimes. 🙂