Commit 52f1bfae authored by Petr Kovář's avatar Petr Kovář
Browse files

Add Shell extensions

parent 3463627a
<page xmlns="http://projectmallard.org/1.0/"
xmlns:its="http://www.w3.org/2005/11/its"
type="topic" style="task"
id="extensions-enable">
<info>
<link type="guide" xref="index#extension" />
<revision pkgversion="3.9" version="0.1" date="2013-08-07" status="stub"/>
<link type="seealso" xref="extensions-mandatory" />
<link type="seealso" xref="extensions-lockdown" />
<link type="seealso" xref="extensions" />
<credit type="author copyright">
<name>Petr Kovar</name>
<email>pknbe@volny.cz</email>
<years>2013</years>
</credit>
<include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude"/>
<desc>Enable GNOME Shell extensions for all users.</desc>
</info>
<title>Enable machine-wide extensions</title>
<p>To make extensions available to all users on the system, install them in
the <file>/usr/share/gnome-shell/extensions</file> directory. Note that
newly-installed machine-wide extensions are disabled by default. To enable
the extensions for all users, you need to set the
<code>org.gnome.shell.enabled-extensions</code> key.</p>
<steps>
<title>Setting the org.gnome.shell.enabled-extensions key</title>
<item>
<p>Create a <code>user</code> profile in <file>/etc/dconf/profile/user</file>:
</p>
<listing>
<code>
user-db:user
system-db:local
</code>
</listing>
</item>
<item>
<p>Create a <code>local</code> database for machine-wide settings in
<file>/etc/dconf/db/local.d/00-extensions</file>:</p>
<listing>
<code>
[org/gnome/shell]
# List all extensions that you want to have enabled for all users
enabled-extensions=['<input>myextension1@myname.example.com</input>', '<input>myextension2@myname.example.com</input>']
</code>
</listing>
</item>
<item>
<p>Update the system databases:</p>
<screen its:translate="no">
<output style="prompt"># </output><input>dconf update</input>
</screen>
</item>
</steps>
</page>
<page xmlns="http://projectmallard.org/1.0/"
xmlns:its="http://www.w3.org/2005/11/its"
type="topic" style="task"
id="extensions-lockdown">
<info>
<link type="guide" xref="index#extension" />
<revision pkgversion="3.9" version="0.1" date="2013-09-03" status="draft"/>
<link type="seealso" xref="extensions-mandatory" />
<link type="seealso" xref="extensions-enable" />
<link type="seealso" xref="extensions" />
<credit type="author copyright">
<name>Petr Kovar</name>
<email>pknbe@volny.cz</email>
<years>2013</years>
</credit>
<include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude"/>
<desc>Disallow the user to enable or disable GNOME Shell extensions.</desc>
</info>
<title>Lock down enabled extensions</title>
<p>In GNOME Shell, you can prevent the user from enabling or disabling
extensions by locking down the <code>org.gnome.shell.enabled-extensions</code>
and <code>org.gnome.shell.development-tools</code> keys.</p>
<p>Locking down the <code>org.gnome.shell.development-tools</code> key ensures
that the user cannot use GNOME Shell's integrated debugger and inspector tool
(<app>Looking Glass</app>) to disable any mandatory extensions.</p>
<steps>
<title>Lock down the org.gnome.shell.enabled-extensions and
org.gnome.shell.development-tools keys</title>
<item>
<p>Create a <code>user</code> profile in <file>/etc/dconf/profile/user</file>:
</p>
<listing>
<code>
user-db:user
system-db:local
</code>
</listing>
</item>
<item>
<p>Create a <code>local</code> database for machine-wide settings in
<file>/etc/dconf/db/local.d/00-extensions</file>:</p>
<listing>
<code>
[org/gnome/shell]
# List all extensions that you want to have enabled for all users
enabled-extensions=['<input>myextension1@myname.example.com</input>', '<input>myextension2@myname.example.com</input>']
# Disable access to Looking Glass
development-tools=false
</code>
</listing>
</item>
<item>
<p>Override the user's setting and prevent the user from changing it in
<file>/etc/dconf/db/local.d/locks/extensions</file>:</p>
<listing>
<code>
# Lock the list of enabled extensions
/org/gnome/shell/enabled-extensions
/org/gnome/shell/development-tools
</code>
</listing>
</item>
<item>
<p>Update the system databases:</p>
<screen its:translate="no">
<output style="prompt"># </output><input>dconf update</input>
</screen>
</item>
</steps>
<p>After locking down the <code>org.gnome.shell.enabled-extensions</code> and
<code>org.gnome.shell.development-tools</code> keys, any extensions installed
in <file>~/.local/share/gnome-shell/extensions</file> or
<file>/usr/share/gnome-shell/extensions</file> that are not listed in the
<code>org.gnome.shell.enabled-extensions</code> key will not be loaded by
GNOME Shell, thus preventing the user from using them.
</p>
</page>
<page xmlns="http://projectmallard.org/1.0/"
xmlns:its="http://www.w3.org/2005/11/its"
type="topic" style="task"
id="extensions-mandatory">
<info>
<link type="guide" xref="index#extension" />
<revision pkgversion="3.9" version="0.1" date="2013-08-07" status="stub"/>
<link type="seealso" xref="extensions-lockdown" />
<link type="seealso" xref="extensions-enable" />
<link type="seealso" xref="extensions" />
<credit type="author copyright">
<name>Petr Kovar</name>
<email>pknbe@volny.cz</email>
<years>2013</years>
</credit>
<include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude"/>
<desc>Set up machine-wide GNOME Shell extensions that are
mandatory to use.</desc>
</info>
<title>Set up mandatory extensions</title>
<p>In GNOME Shell, you can provide a set of extensions that the user has to
use. To do so, install the extensions in the
<file>/usr/share/gnome-shell/extensions</file> directory and then lock down
the <code>org.gnome.shell.enabled-extensions</code> and
<code>org.gnome.shell.development-tools</code> keys.</p>
<p>Locking down the <code>org.gnome.shell.development-tools</code> key ensures
that the user cannot use GNOME Shell's integrated debugger and inspector tool
(<app>Looking Glass</app>) to disable any mandatory extensions.</p>
<steps>
<title>Lock down the org.gnome.shell.enabled-extensions and
org.gnome.shell.development-tools keys</title>
<item>
<p>Create a <code>user</code> profile in <file>/etc/dconf/profile/user</file>:
</p>
<listing>
<code>
user-db:user
system-db:local
</code>
</listing>
</item>
<item>
<p>Create a <code>local</code> database for machine-wide settings in
<file>/etc/dconf/db/local.d/00-extensions-mandatory</file>:</p>
<listing>
<code>
[org/gnome/shell]
# List all mandatory extensions
enabled-extensions=['<input>myextension1@myname.example.com</input>', '<input>myextension2@myname.example.com</input>']
# Disable access to Looking Glass
development-tools=false
</code>
</listing>
</item>
<item>
<p>Override the user's setting and prevent the user from changing it in
<file>/etc/dconf/db/local.d/locks/extensions-mandatory</file>:</p>
<listing>
<code>
# Lock the list of mandatory extensions
/org/gnome/shell/enabled-extensions
/org/gnome/shell/development-tools
</code>
</listing>
</item>
<item>
<p>Update the system databases:</p>
<screen its:translate="no">
<output style="prompt"># </output><input>dconf update</input>
</screen>
</item>
</steps>
</page>
<page xmlns="http://projectmallard.org/1.0/"
xmlns:its="http://www.w3.org/2005/11/its"
type="topic" style="task"
id="extensions">
<info>
<link type="guide" xref="index#extension" />
<revision pkgversion="3.9" version="0.1" date="2013-08-07" status="stub"/>
<link type="seealso" xref="extensions-lockdown" />
<link type="seealso" xref="extensions-enable" />
<link type="seealso" xref="extensions-mandatory" />
<credit type="author copyright">
<name>Petr Kovar</name>
<email>pknbe@volny.cz</email>
<years>2013</years>
</credit>
<include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude"/>
<desc>GNOME Shell extensions allow customizing the default GNOME Shell
interface.</desc>
</info>
<title>What are GNOME Shell extensions?</title>
<p>GNOME Shell extensions allow customizing the default GNOME Shell interface
and its parts, such as window management and application launching.</p>
<p>Each GNOME Shell extension is identified by a unique identifier, the uuid.
The uuid is also used for the name of the directory where an extension is
installed. You can either install the extension per-user in
<file>~/.local/share/gnome-shell/extensions/&lt;uuid&gt;</file>, or
machine-wide in <file>/usr/share/gnome-shell/extensions/&lt;uuid&gt;</file>.
</p>
<p>To view installed extensions, you can use <app>Looking Glass</app>, GNOME
Shell's integrated debugger and inspector tool.</p>
<steps>
<title>View installed extensions</title>
<item>
<p>Press <keyseq type="combo"><key>Alt</key><key>F2</key></keyseq>,
type in <em>lg</em> and press <key>Enter</key> to open
<app>Looking Glass</app>.</p>
</item>
<item>
<p>On the top bar of <app>Looking Glass</app>, click
<gui>Extensions</gui> to open the list of installed extensions.</p>
</item>
</steps>
</page>
......@@ -39,6 +39,10 @@
<title>Default appearance</title>
</section>
<section style="toronto" id="extension">
<title>GNOME Shell Extensions</title>
</section>
<section style="toronto" id="session">
<title>Session management</title>
</section>
......
......@@ -14,6 +14,10 @@ HELP_FILES = \
dconf-nfs-home.page \
dconf-profiles.page \
dconf-favorite-applications.page\
extensions-enable.page \
extensions-lockdown.page \
extensions-mandatory.page \
extensions.page \
fonts.page \
index.page \
keyboard-layout.page \
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment