I have installed debian 9 with xfce and compiz. How can I change the theme of gtk-window-decorator?

If I understand correctly gtk-window-decorator uses metacity's configuration. So far I have my ~/.themes directory with a few entries in it but I don't know how to activate them. All I could find with search engines is that I should use gnome-tweak-tool but that doesn't work, because it is for gnome3. I also thought of using gconf-editor and somehow find the key for the current theme's name but it is completely empty.

I am not married to gtk-window-decorator, I would use emerald if I could but that does not compile.

3 Answers 3


Hmm, there might be multiple answers that depends on metacity and compiz versions you have... Please try to change theme using this command:
gsettings set org.gnome.desktop.wm.preferences theme "THEME_NAME"

You need to install libmetacity! gtk-window-decorator use library from metacity to draw window decorations. Otherwise gtk-window-decorator use default / builtin cairo theme.

Oh, it seems that gtk-window-decorator is built without metacity. Debian should update compiz or simply add patches that adds support for libmetacity 3.22.

For everyone! If you have any problems changing theme in gtk-window-decorator and/or metacity please read this post.

Compiz in debian currently needs 4091 - 4094 and 4102 revisions from here to enable Metacity theme support. Remove -DBUILD_METACITY=OFF and then rebuild when required revisions are added.

  • Unfortunately it has no effect. If I read it back using gsettings get ... it retains the value but compiz does not care about it. I don't actually have metacity installed, gtk-window-decorator reads metacity settings. This is compiz from the debian 9 repo.
    – soger
    Jun 26, 2017 at 9:49
  • Please post output of echo $XDG_CURRENT_DESKTOP. Jun 26, 2017 at 9:53
  • it says: XFCE
    – soger
    Jun 26, 2017 at 14:19
  • Just to be sure I've installed libmetacity1 but no change.
    – soger
    Jun 26, 2017 at 14:25
  • You need to rebuild compiz with metacity theme support enabled, otherwise it will not work, sorry! Jun 26, 2017 at 15:01

I managed to compile Emerald which also provides nice decoration. Download it from here: https://github.com/compiz-reloaded/emerald

Under Debian, the dependencies are provided by these packages: libdecoration0-dev libwnck-3-dev intltool

Run this command in the unzipped Emerald directory to compile it, you may need to run it as root: ./autogen.sh && ./configure --prefix /usr && make && make install

Then set Emerald as the window decorator with emerald --replace. For those who want to use Metacity, see the other response from muktupavels.


I'm still new and don't know a whole lot about Linux but I change my window decorations in Window Manager.

If Window Manager works for you then you also need to move all of your window decorations to /usr/share/themes in order to use them in Window Manager.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.