Xubuntu 20.04.3 with Compiz
I cannot seem to get Compiz (0.9.14.1) working correctly with XFCE (4.14) in Xubuntu (20.04.3).
I have installed compiz, have it running, but it is not loading the window decorator theme.
I enabled Window Decoration, but I get an error saying Failed to find a valid file for 'Adwaita'.
I then installed metacity through apt and still the same error.
I also made a symbolic link at /usr/local/share/themes that points to /usr/share/themes.
Same problem.
Trying
gtk-window-decorator --metacity-theme Adwaita --replace
Gives me the same error, cannot find theme/file.
(gtk-window-decorator:5038): WARNING **: 18:44:24.857: Failed to load metacity theme 'Adwaita': Failed to find a valid file for theme 'Adwaita'
I also tried a custom theme that has a metacity folder with metacity xml files and still the same error. It's like the default directory for metacity themes is somewhere other than Xubuntu's default directory. The custom theme I have is also installed in ~/.themes.
I've read countless posts about this setup on older versions of Xubuntu, none of which seem to apply to this scenario. The deconf-editor and changing gnome settings does not work at all. I tried every combo listed elsewhere. The issue is gtk-window-decorator not working correctly, ie doesn't know where themes are or isn't loading them correctly.
Does anyone know how to get window decorator themes working in Compiz on Xubuntu?
Solution 1:
Turns out there were permission problems on my theme files.
I found a script that can change the theme
#!/bin/bash
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
if [ ! -f /usr/bin/metacity ]; then
zenity --warning --text="<b>You do not appear to have Metacity installed.</b>\n\nThe Compiz GTK window decorator uses Metacity libraries to operate. The Metacity theme is what this tool adjusts.\n\nInstall the metacity package if you would like to use the Compiz GTK window decorator."
fi
main_window() {
selection=$(
zenity --height 450 --width 320 --list --ok-label="Apply" --cancel-label="Close" --title="Metacity themes" \
--column="Current theme: $( if [ $(gsettings get org.gnome.desktop.wm.preferences theme) == "''" ]; then
echo Default
else
gsettings get org.gnome.desktop.wm.preferences theme
fi)" \
"Compiz GWD default" \
$(
for d in /usr/share/themes/*/metacity-1; do
echo $d | sed 's:/usr/share/themes/::' | sed 's:/metacity-1::'
done
)
)
}
while [ $? = 0 ]; do
if [ "$selection" == "Compiz GWD default" ]; then
gsettings set org.gnome.desktop.wm.preferences theme ""
elif [ "$selection" != "" ]; then
gsettings set org.gnome.desktop.wm.preferences theme "$selection"
fi
main_window
done
IFS=$SAVEIFS
And I noticed all the themes worked except for ones I've downloaded (WhiteSur-GTK themes). I realized I was unable to cd into one of the directories in the theme's metacity directory so I changed all the permissions to 755 and now it is working.