Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(173)

Side by Side Diff: chrome/common/extensions/docs/static/external_extensions.html

Issue 9963120: Introduces an additional extension loader that load extra extensions based on per-extension json fi… (Closed) Base URL: https://src.chromium.org/svn/trunk/src/
Patch Set: Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <div id="pageData-name" class="pageData">Other Deployment Options</div> 1 <div id="pageData-name" class="pageData">Other Deployment Options</div>
2 <div id="pageData-showTOC" class="pageData">true</div> 2 <div id="pageData-showTOC" class="pageData">true</div>
3 3
4 <p> 4 <p>
5 Usually, users install their own extensions. 5 Usually, users install their own extensions.
6 But sometimes you might want an extension 6 But sometimes you might want an extension
7 to be installed automatically. 7 to be installed automatically.
8 Here are two typical cases: 8 Here are two typical cases:
9 </p> 9 </p>
10 10
11 <ul> 11 <ul>
12 <li> 12 <li>
13 An extension is associated with some other software, 13 An extension is associated with some other software,
14 and the extension should be installed 14 and the extension should be installed
15 whenever the user installs that other software. 15 whenever the user installs that other software.
16 The extension could also be uninstalled 16 The extension could also be uninstalled
17 when the user removes that other software. 17 when the user removes that other software.
18 </li> 18 </li>
19 <li> 19 <li>
20 A network admin wants to install the same extensions 20 A network admin wants to install the same extensions
21 throughout the company. 21 throughout the company.
22 </li> 22 </li>
23 </ul> 23 </ul>
24 24
25 <p> 25 <p>
26 An extension that's installed automatically is known as an 26 An extension that's installed automatically is known as an
27 <em>external extension</em>. 27 <em>external extension</em>.
28 Google Chrome supports two ways of 28 Google Chrome supports three ways of
29 installing external extensions: 29 installing external extensions:
30 </p> 30 </p>
31 31
32 <ul> 32 <ul>
33 <li> Using a preferences JSON file </li> 33 <li> Using a preferences JSON file </li>
34 <li> Using the Windows registry (Windows only) </li> 34 <li> Using the Windows registry (Windows only) </li>
35 <li> Using per-extension preference files (Linux only) </li>
35 </ul> 36 </ul>
36 37
37 <p> 38 <p>
38 Both ways support installing an extension from a <code>.crx</code> extension 39 Each method supports installing an extension from a <code>.crx</code> extension
39 file on the user's computer. The preferences JSON file also supports installing 40 file on the user's computer. The preferences JSON file also supports installing
40 an extension hosted at an 41 an extension hosted at an
41 <a href="autoupdate.html#H2-1">update URL</a>. 42 <a href="autoupdate.html#H2-1">update URL</a>.
42 See <a href="hosting.html">hosting</a> for details on hosting an extension. 43 See <a href="hosting.html">hosting</a> for details on hosting an extension.
43 </p> 44 </p>
44 45
45 <h2 id="prereqs">Before you begin</h2> 46 <h2 id="prereqs">Before you begin</h2>
46 47
47 <p> 48 <p>
48 First, package a 49 First, package a
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 <ul> 214 <ul>
214 <li>path: <code>\\server\share\extension.crx</code> </li> 215 <li>path: <code>\\server\share\extension.crx</code> </li>
215 <li>version: <code>1.0</code> </li> 216 <li>version: <code>1.0</code> </li>
216 </ul> 217 </ul>
217 </li> 218 </li>
218 <li>Launch the browser and go to 219 <li>Launch the browser and go to
219 <b>chrome://extensions</b>; you should 220 <b>chrome://extensions</b>; you should
220 see the extension listed. </li> 221 see the extension listed. </li>
221 </ol> 222 </ol>
222 223
224 <h2 id="per-extension-install">Using per-extension preference files (Linux only) </h2>
225
226 <ol>
227 <li>Make the <code>.crx</code> extension file available
228 to the machine you want to install the extension on.
229 </li>
230 <li>Find or create the folder:
231 <ul>
232 <li> For a Google Chrome build: <code>/usr/share/google-chrome/extensions</cod e> </li>
233 <li> For a Chromium build: <code>/usr/share/chromium/extensions</code> </li>
234 </ul>
235 </li>
236 <li>Create a file under this folder with the following name:
237 <code>aaaaaaaaaabbbbbbbbbbcccccccccc.json</code> where the file name (without t he extension)
238 corresponds to your extension's ID.
239 </li>
240 <li>In the file created during step 4) above, specify the extension's
241 associated <code>.crx</code> complete path along with the
242 version your extension:
243 <p>
244 Example:
245 <pre>
246 {
247 "external_crx": "/home/share/extension.crx",
248 "external_version": "1.0"
249 }
250 </pre>
251 </p>
252 </li>
253 <li>
254 Launch the browser and go to <b>chrome://extensions</b>; you
255 should see the extension listed with the proper version number.
256 </li>
257 </ol>
258
223 <h2 id="updating">Updating and uninstalling</h2> 259 <h2 id="updating">Updating and uninstalling</h2>
224 260
225 <p>Google Chrome scans the metadata entries 261 <p>Google Chrome scans the metadata entries
226 in the preferences and registry 262 in the preferences and registry
227 each time the browser starts, and makes 263 each time the browser starts, and makes
228 any necessary changes to the installed 264 any necessary changes to the installed
229 external extensions. </p> 265 external extensions. </p>
230 266
231 <p>To update your extension to a new version, 267 <p>To update your extension to a new version,
232 update the file, and then update the version 268 update the file, and then update the version
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 <li>Not specifying the same id/version 322 <li>Not specifying the same id/version
287 as the one listed in the <code>.crx</code> </li> 323 as the one listed in the <code>.crx</code> </li>
288 <li>Key created in the wrong location in the registry </li> 324 <li>Key created in the wrong location in the registry </li>
289 <li>Registry entry points to the wrong path to the <code>.crx</code> file 325 <li>Registry entry points to the wrong path to the <code>.crx</code> file
290 (or path specified but no filename) </li> 326 (or path specified but no filename) </li>
291 <li>Permissions problems on a network share </li> 327 <li>Permissions problems on a network share </li>
292 </ul> 328 </ul>
293 329
294 <br> 330 <br>
295 331
332 <p><b>What are some common mistakes when installing with the per-extension file? </b> </p>
333 <ul>
334 <li>Not specifying the same id/version
335 as the one listed in the <code>.crx</code> </li>
336 <li>Extension preference file created in the wrong location or with the wrong extension ID name </li>
337 <li>Extension entry points to the wrong path to the <code>.crx</code> file
338 (or path specified but no filename) </li>
339 <li>Permissions problems on a network share </li>
340 <li>
341 Syntax error in JSON file
342 (forgetting to separate entries with comma or
343 leaving a trailing comma somewhere) </li>
344 </ul>
345
346 <br>
347
296 <p><b>What if the user uninstalls the extension?</b> </p> 348 <p><b>What if the user uninstalls the extension?</b> </p>
297 <p>If the user uninstalls the extension through the UI, it will no 349 <p>If the user uninstalls the extension through the UI, it will no
298 longer be installed or updated on each startup. In other words, the 350 longer be installed or updated on each startup. In other words, the
299 external extension is blacklisted. </p> 351 external extension is blacklisted. </p>
300 352
301 <br> 353 <br>
302 354
303 <p><b>How do I get off the blacklist?</b> </p> 355 <p><b>How do I get off the blacklist?</b> </p>
304 <p>If the user uninstalls your extension, you should respect that 356 <p>If the user uninstalls your extension, you should respect that
305 decision. However, if you (the developer) accidentally uninstalled 357 decision. However, if you (the developer) accidentally uninstalled
306 your extension through the UI, 358 your extension through the UI,
307 you can remove the blacklist tag 359 you can remove the blacklist tag
308 by installing the extension normally 360 by installing the extension normally
309 through the UI, and then uninstalling it. </p> 361 through the UI, and then uninstalling it. </p>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698