So now that you know how to get Compiz working properly, what do you do if it still refuses to enable itself via the “Desktop Effects” program?
Justin had this exact problem on his machine. It appears that the compiz-gtk script wouldn’t start and my theory was that it’s unable to replace Metacity (for some reason).
So I fixed this by editing his gconf file directly
sed -i 's/metacity/compiz-gtk/' \
This means that Metacity is never loaded to begin with, instead calling compiz-gtk to do its magic.
This is exactly what is set after successfully enabling Compiz via the “Desktop Effects” program, so we’re just bypassing whatever problem was stopping it from being enabled (like I said, I think it was unable to replace Metacity).
If you have the same problem, try this fix. If it can’t start Compiz it will safely revert to Metacity.
Fedora uses the older method of enabling Compiz, via the gconf plugin.
The “Desktop Effects” program under System -> Preferences runs the
/usr/bin/compiz-gtk script (part of the
compiz-gnome package) to enable Compiz, or fall back to Metacity (GNOME’s window manager).
compiz-gtk script executes the command:
compiz --ignore-desktop-hints glib gconf gnomecompat
On systems here (with NVIDIA cards at least), the gconf backend package was not installed. This means that even though NVIDIA and 3D is all working, Compiz won’t start. So, installing the required gconf backend package should make it all work.
su -c 'yum -y install compizconfig-backend-gconf'
Now try again.
Upstream however, Compiz has moved away from gconf and is using libcompizconfig (ccp) and the CompizConfig Settings Manager (ccsm) to handle settings.
ccsm package under Fedora and changing Compiz settings using the graphical manager (CompizConfig Settings Manager) results in none of those taking effect.
This is because the
compiz-gtk script is not loading the
ccp module. So the workaround is to install
ccsm and then modify the script to replace
su -c "sed -i 's/gconf/ccp/' /usr/bin/compiz-gtk"
Now try again.
Keep in mind that updated versions of the
compiz-gnome package may overwrite this file, so you’ll need to edit it again in future if this happens.