List and enable/disable Compiz plugins on command line

How can I see the default set of Compiz plugins and add or remove plugins from the set using the command line interface?

Is there a config file I can edit for system-wide configuration?


Solution 1:

At least in 11.04 & 11.10 this will give you a list of the enabled plugins inside of brackets. []

 gconftool-2 --get  /apps/compiz-1/general/screen0/options/active_plugins

you can take that list, add to or subtract and then set with this, using " around the brackets "[]"

gconftool-2 --set --type=list --list-type=string /apps/compiz-1/general/screen0/options/active_plugins "[list,goes,in,here]"

enter image description here

Solution 2:

From 14.04

List active compiz plugins

Run dconf dump /org/compiz/profiles/unity/ | grep active-plugins in a Terminal. This will give you someting like

active-plugins=['core', 'composite', 'opengl', 'wall', 'resize', 'vpswitch', 'compiztoolbox', 'move', 'snap', 'grid', 'imgpng', 'commands', 'unitymtgrabhandles', 'mousepoll', 'place', 'copytex', 'regex', 'session', 'animation', 'fade', 'expo', 'workarounds', 'ezoom', 'scale', 'unityshell']

Configure settings per user

See answer https://askubuntu.com/a/320677/10475

System-wide configuration

Normally you could make system-wide settings with vendor overrides in gsettings. As it is not possible to write a schema override file that includes a DConf path (see also #1281580) you have to set the settings in dconf directly:

Step 1: Create a file user in /etc/dconf/profile/ with this content:

user-db:user  
system-db:compiz

Step 2: Create a folder compiz.d in /etc/dconf/db/

Step 3:
Create the file 00_default_plugins in /etc/dconf/db/compiz.d/ and put _your list of plugins_ inside (run dconf dump /org/compiz/profiles/unity/ | grep active-plugins to get a list of your actually activated plugins).

Example:

[org/compiz/profiles/unity/plugins/core]  
active-plugins=['core', 'composite', 'opengl', 'move', 'vpswitch', 'copytex', 'grid', 'commands', 'snap', 'compiztoolbox', 'mousepoll', 'place', 'resize', 'imgpng', 'session', 'wall', 'regex',  'unitymtgrabhandles', 'animation', 'winrules', 'fade', 'workarounds', 'expo', 'scale', 'ezoom', 'unityshell']

Step 4:
Make this setting mandatory. Create a folder locks in /etc/dconf/db/compiz.d/ and put a file named 00_compiz_active_plugins with this content inside:

/org/compiz/profiles/unity/plugins/core/active-plugins

Step 5: Run sudo dconf update in a terminal to compile.


Now you can open a guest session and check if the setting is applied.

NB: You can name system-db the way you like but keep in mind that the folder compiz.d in my example has to be named the same as your system-db with a .d appended.

Credits:
https://wiki.gnome.org/Projects/dconf/SystemAdministrators
http://blog.chapus.net/more-gnome-unity-system-defaults/