0

I have decided to join the Linux community and have chosen Ubuntu for my initial foray into this new and exciting world.

I am teaching myself the basics using a well recommended text book. I am currently working through the chapter on using the Compiz Window Manager.

On Ubuntu systems, Compiz can be configured using the gconftool-2 command-line utility.

In the text, the following command examines the settings for the Compiz Wobbly Windows plug-in:

gconftool-2 -R /apps/compiz/plugins/wobbly

However, when I enter this command, nothing happens, at all, and the command line simply returns to the next line, awaiting the next command.

My thoughts:

The text I am using is dated and written for Ubuntu 10.04 LTS. I am using Ubuntu 16.04.2. There will, therefore, clearly be differences. I've done the following:

  • I've checked and gconftool-2 is still a legitimate command.
  • I've checked and Compiz is actively running.
  • I’ve searched for the Compiz plugin wobbly, which is also installed.
  • I can see that Compiz is not located in the directory given in the text, i.e. it does not appear under in the following directory ‘/apps/compiz/plugins/wobbly’.

Therefore, I concluded the gconftool-2 command is not working as intended because the directory given ‘/apps/compiz/plugins/wobbly’ is no longer valid in the current version of Ubuntu. Therefore, to resolve the issue, I would simply need to locate the relevant file(s). However, when I run ‘locate compiz’ in the terminal, the list of files returned has to be in excess of a hundred. I ran ‘locate wobbly’ which returned only three files, however running the following command does not work either:

gconftool-2 -R /usr/share/compiz/wobbly

How do you examine and set specific repository keys and new values for the Compiz Window Manager, and its associated plugins, using the command-line in Ubuntu 16.04? How has this changed since 10.04 and how does one know which files to examine, there are simply too many Compiz files to know where to start?

  • Compiz these days use dconf not gconf. More info about that you can read here. – muktupavels Jul 18 '17 at 12:52
  • @muktupavels thank you. I've seriously searched high and low for a solution here, over several days. I was clearly entering the wrong search terms. I might need to think about updating my text-book. – Andrew Hardiman Jul 18 '17 at 14:16

1 Answers1

1

Since it has taking me three days to resolve this, and only after being nudged in the right direction by a fellow user, I considered it would be appropriate to submit an answer.

As kindly pointed out by muktupavels, Compiz now uses dconf, not gconf. More info here.

In order to examine and set specific repository keys and new values for Compiz Manager, you would now use the Gsettings/DConf configuration API and system. The command line utility used for such a task is gsettings. This is the equivalent to the gconftool command line tool referenced in the question.

From the manual man gsettings:

DESCRIPTION

gsettings offers a simple command-line interface to GSettings. It lets you get, 
set or monitor an individual key for changes.

The SCHEMA and KEY arguments are required for most commands to specify the schema
id and the name of the key to operate on. The schema id may optionally have a 
:PATH suffix. Specifying the path is only needed if the schema does not have a 
fixed path.

For the purposes of our example, we wish to activate the Compiz-plugin Wobbly Windows.

We can pull up a list in the terminal to see which of the Compiz-plugins are current active on the system, using the following:

dconf dump /org/compiz/profiles/unity/plugins/core/ | grep active-plugins

The output:

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

From the output, we can see that the Wobbly Windows Plugin is not currently enabled. To activate the Wobbly Windows plugin from the command line, we would use the gsettings utility, with the set command, as follows:

gsettings set org.compiz.core:/org/compiz/profiles/unity/plugins/core/ active-plugins "['core', 'composite', 'opengl', 'snap', 'commands', 'compiztoolbox', 'vpswitch', 'mousepoll', 'imgpng', 'grid', 'copytex', 'place', 'resize', 'move', 'regex', 'session', 'animation', 'workarounds', 'fade', 'cube', 'expo', 'unitymtgrabhandles', 'scale', 'ezoom', 'unityshell', 'wobbly']"

gsettings is the command-line tool, set the command, org.compiz.core is the schema, :PATH specifies the path, active-plugins is the KEY that you want to set, and ”[]” is the value you set to the key. Do not forget to place quotation marks around the array when overwriting the active-plugins value, e.g. "['wobbly']".

You will now see when moving a window that Wobbly Windows plugin is active, you can’t miss it!

You can also check it is active by using the dconf dump command as before or, alternatively, by using the get command with gsettings

gsettings get org.compiz.core:/org/compiz/profiles/unity/plugins/core/ active-plugins