When Compiz starts up it looks for upgrade scripts in /usr/share/compizconfig/upgrades and runs each of them. For each upgrade, ccsProcessUpgrade (compizconfig/libcompizconfig/src/main.c:4737) sets the Compiz profile to the one mentioned in the filename ("unity" for all the scripts shipped in compiz-gnome); I guess that is so that the affected plugins are made active. But, it doesn't set the profile back afterwards!
So, the workaround for a new user account is:
mkdir -p ~/.config/compiz-1/compizconfig
for file in /usr/share/compizconfig/upgrades/*.upgrade; do basename $f; done > ~/.config/compiz-1/compizconfig/done_upgrades
Then Compiz won't run the upgrade scripts (since we told it they've already been done), and we avoid setting the profile to unity.
Compiz devs, would you please consider trying to fix this bug? If I have time I'll try to submit a patch, but it won't be soon...
Got it. The bug is in Compiz.
When Compiz starts up it looks for upgrade scripts in /usr/share/ compizconfig/ upgrades and runs each of them. For each upgrade, ccsProcessUpgrade (compizconfig/ libcompizconfig /src/main. c:4737) sets the Compiz profile to the one mentioned in the filename ("unity" for all the scripts shipped in compiz-gnome); I guess that is so that the affected plugins are made active. But, it doesn't set the profile back afterwards!
So, the workaround for a new user account is:
mkdir -p ~/.config/ compiz- 1/compizconfig compizconfig/ upgrades/ *.upgrade; do basename $f; done > ~/.config/ compiz- 1/compizconfig/ done_upgrades
for file in /usr/share/
Then Compiz won't run the upgrade scripts (since we told it they've already been done), and we avoid setting the profile to unity.
Compiz devs, would you please consider trying to fix this bug? If I have time I'll try to submit a patch, but it won't be soon...