Debian Squeeze: Install Emerald Windows Decorator And Theme Manager

last updated in Categories Debian Linux

The Emerald Window Decorator is a custom window decorator shipped with Compiz Fusion that allows for theming and full composite window decorations with the use of engines. Emerald allows for all sorts of different configurations and layouts of buttons, look, title bars and frames. Emerald Window Decorator is completely independent of any desktop, and you specify your own themes to use for it. In this post I will describe how to install emerald under Debian Linux 6 amd64.


Install emerald

Unfortunately emerald windows decorator package does not come with Debian Linux 6. You can install it using source code. First, install required libraries using the apt-get command/apt command:
# apt-get install intltool build-essential libxrender-dev libgtk2.0-dev libwnck-dev libdecoration0-dev libwnck1.0-cil-dev git autoconf libtool gawk
Next, download latest source code for emerald using git command:
$ cd /tmp
$ git clone git://

Sample outputs:

Cloning into emerald...
remote: Counting objects: 2272, done.
remote: Compressing objects: 100% (2221/2221), done.
remote: Total 2272 (delta 1622), reused 0 (delta 0)
Receiving objects: 100% (2272/2272), 857.72 KiB | 211 KiB/s, done.
Resolving deltas: 100% (1622/1622), done.

To configure emerald, enter:
$ cd emerald
$ ./

Sample outputs:

autoreconf: Entering directory `.'
autoreconf: not using Gettext
autoreconf: running: aclocal 
autoreconf: tracing
autoreconf: running: libtoolize --copy
libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in
autoreconf: running: /usr/bin/autoconf
autoreconf: running: /usr/bin/autoheader
autoreconf: running: automake --add-missing --copy --no-force installing `./config.guess'
config.status: creating libengine/emeraldengine.pc
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating include/Makefile
config.status: creating engines/Makefile
config.status: creating themer/Makefile
config.status: creating pixmaps/Makefile
config.status: creating libengine/Makefile
config.status: creating misc/Makefile
config.status: creating doc/Makefile
config.status: creating po/
config.status: creating defaults/Makefile
config.status: creating defaults/theme/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default-1 commands
config.status: executing po/stamp-it commands

To compile emerald, enter:
$ make
To install emerald, enter:
# make install

How do I use emerald?

First, turn on the Windows Decoration plugin which provides a window border for your windows. The decoration plugin is essentially. Type the following command:
$ ccsm
Click on the “Effects” > Enable “Windows Decorations”:

Enable Compiz Windows Decoration Effect
Fig.01: Enable Compiz Windows Decoration Effect

Close the ccsm. Next, type the following command to replace current decorator:
$ emerald --replace
The default theme is ‘Beryl Red’. To change theme, you will need to use the Emerald Theme Manger. Type the following command to start Emerald Theme Manger:
$ emerald-theme-manager
Sample outputs:

Debian Linux Running Emerald Theme Manager
Fig.02: Emerald Theme Manager

How do I install new themes?

Visit this site to grab new emerald themes. To import themes, click on Import… and navigate to the .emerald file you wish to import. Alternatively, you can double-click on the files in a file manager, and Emerald will open the Import dialog.

Linux Compiz Emerald Theme
Fig.03: Linux Compiz Emerald Theme in Action – click to enlarge

How do I setup emerald to start automatically when I log in?

Your emerald settings and themes are stored in ~/.emerald/ directory. You can choose for certain programs to be started automatically when you log in to a session. The Sessions preference tool allows you to define which programs are started automatically when you log in. Click on
System > Preferences > Startup Applications
To add a new startup program called emerald, perform the following steps:

  1. Click Add. This will open the Add Startup Program dialog box.
  2. Use the Name text box to specify a name for the new startup program (set it to “emerald”).
  3. Use the Command text box to specify the command which will invoke the application. (set it to “/usr/local/bin/emerald –replace”)
  4. Enter a description of the application in the Comments text box. You will see this as the description of the program in the list of startup programs.
  5. Debian Linux Adding Emerald Windows Decorator - Startup Option
    Fig.04 – Adding a new starup program called emerald
  6. Click Add. The application will be added to the list of startup programs with its checkbox in the checked (enabled) state.
  7. Debian Linux Gnome Startup Applications Preferences
    Fig.05: Debian Linux Gnome Startup Applications Preferences

Stay tuned for for dock installation.

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.


9 comment

        1. OK so found the library and got that installed, ran the git command, all looked lovely, then make and make install and everything looked fine.
          However when I type ccsm I simply get “Command not found”

Leave a Comment