~ubuntu-branches/ubuntu/wily/gnome-user-docs/wily

« back to all changes in this revision

Viewing changes to system-admin-guide/C/extensions-lockdown.page

  • Committer: Package Import Robot
  • Author(s): Luca Falavigna
  • Date: 2014-07-15 22:20:04 UTC
  • mfrom: (1.1.15)
  • Revision ID: package-import@ubuntu.com-20140715222004-pce2zyc0v4ycke4o
Tags: 3.12.2-1
* Team upload.
* New upstream release.
* debian/control.in:
  - Bump Standards-Version to 3.9.5.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<page xmlns="http://projectmallard.org/1.0/"
 
2
      xmlns:its="http://www.w3.org/2005/11/its"
 
3
      type="topic" style="task"
 
4
      id="extensions-lockdown">
 
5
 
 
6
  <info>
 
7
    <link type="guide" xref="software#extension" />
 
8
    <link type="seealso" xref="extensions-enable" />
 
9
    <link type="seealso" xref="extensions" />
 
10
    <revision pkgversion="3.12" date="2014-06-17" status="review"/>
 
11
 
 
12
    <credit type="author copyright">
 
13
      <name>Petr Kovar</name>
 
14
      <email its:translate="no">pknbe@volny.cz</email>
 
15
      <years>2014</years>
 
16
    </credit>
 
17
 
 
18
    <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude"/>
 
19
 
 
20
    <desc>Disallow the user to enable or disable GNOME Shell extensions.</desc>
 
21
  </info>
 
22
 
 
23
  <title>Lock down enabled extensions</title>
 
24
  
 
25
  <p>In GNOME Shell, you can prevent the user from enabling or disabling
 
26
  extensions by locking down the
 
27
  <code>org.gnome.shell.enabled-extensions</code> and
 
28
  <code>org.gnome.shell.development-tools</code> keys. This allows you to
 
29
  provide a set of extensions that the user has to use.</p>
 
30
   
 
31
  <p>Locking down the <code>org.gnome.shell.development-tools</code> key
 
32
  ensures that the user cannot use GNOME Shell's integrated debugger and
 
33
  inspector tool (<app>Looking Glass</app>) to disable any mandatory
 
34
  extensions.</p>
 
35
   
 
36
  <steps>
 
37
    <title>Lock down the org.gnome.shell.enabled-extensions and
 
38
    org.gnome.shell.development-tools keys</title>
 
39
    <item>
 
40
      <p>Create a <code>user</code> profile in
 
41
      <file>/etc/dconf/profile/user</file>:</p>
 
42
      <listing>
 
43
        <code>
 
44
user-db:user
 
45
system-db:local
 
46
</code>
 
47
      </listing>
 
48
    </item>
 
49
    <item>
 
50
      <p>Create a <code>local</code> database for machine-wide settings in
 
51
      <file>/etc/dconf/db/local.d/00-extensions</file>:</p>
 
52
      <listing>
 
53
        <code>
 
54
[org/gnome/shell]
 
55
# List all extensions that you want to have enabled for all users
 
56
enabled-extensions=['<input>myextension1@myname.example.com</input>', '<input>myextension2@myname.example.com</input>']
 
57
# Disable access to Looking Glass
 
58
development-tools=false
 
59
</code>
 
60
      </listing>
 
61
      <p>The <code>enabled-extensions</code> key specifies the enabled
 
62
      extensions using the extensions' uuid
 
63
      (<code>myextension1@myname.example.com</code> and
 
64
      <code>myextension2@myname.example.com</code>).</p>
 
65
      <p>The <code>development-tools</code> key is set to false to disable
 
66
      access to Looking Glass.</p>
 
67
    </item>
 
68
    <item>
 
69
      <p>Override the user's setting and prevent the user from changing it in
 
70
      <file>/etc/dconf/db/local.d/locks/extensions</file>:</p>
 
71
      <listing>
 
72
        <code>
 
73
# Lock the list of enabled extensions
 
74
/org/gnome/shell/enabled-extensions
 
75
/org/gnome/shell/development-tools
 
76
</code>
 
77
</listing>
 
78
    </item>
 
79
    <include href="dconf-snippets.xml"
 
80
      xpointer="xpointer(/*/*[@xml:id='dconf-update'])"
 
81
      xmlns="http://www.w3.org/2001/XInclude"/>
 
82
  </steps>
 
83
  
 
84
  <p>After locking down the <code>org.gnome.shell.enabled-extensions</code> and
 
85
  <code>org.gnome.shell.development-tools</code> keys, any extensions installed
 
86
  in <file>~/.local/share/gnome-shell/extensions</file> or
 
87
  <file>/usr/share/gnome-shell/extensions</file> that are not listed in the
 
88
  <code>org.gnome.shell.enabled-extensions</code> key will not be loaded by
 
89
  GNOME Shell, thus preventing the user from using them.</p>
 
90
 
 
91
</page>