Enabling gnome extensions across a number of users


This is progress! 🙂 A user posted a question about deploying an extension across multiple users. I got interested and so looked it up and I’m getting somewhere with this stuff I’m poring over.

Now if you’re here as a user, all you need to do is point your browser to this url, you’ll see all the installed extensions and the option to enable them:

https://extensions.gnome.org/local/

As an admin, here’s what I posted:

This page gives you the bare bones of what needs to be done:
https://live.gnome.org/GnomeShell/Extensions

In short you need to do two things:
1. Install the extensions system-wide or per user
2. Enable the extensions

Step 1. Install the extension system-wide or per user:
If system wide then they need to be copied to the folders:
/usr/share/gnome-shell/extensions and
/usr/local/share/gnome-shell/extensions.

If per user then in folder:
~/.local/share/gnome-shell/extensions

The name of the folder is the extension name that you’ll use in the next step.

Step 2.
Enable it. Enabling involves using gsettings like so:
gsettings set org.gnome.shell enabled-extensions "[‘<name of folder>’,'<name of folder>’]"

So on my machine, it is:
gsettings set org.gnome.shell enabled-extensions "[‘ext-helper@amanda.darkdna.net’, ‘dock@gnome-shell-extensions.gcampax.github.com’]"

And there it is – the heart of the script. To an admin this should make sense.

And here’s the rough script for you:

Should work on Debian 7.

#!/bin/bash
apt-get install gnome-shell-extensions
gsettings set org.gnome.shell enabled-extensions "[‘ext-helper@amanda.darkdna.net’, ‘dock@gnome-shell-extensions.gcampax.github.com’]"

Paste the text into a file with an extension .sh and set it’s permissions to executable.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s