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

Unified Diff: chrome/common/extensions/docs/templates/articles/external_extensions.html

Issue 1137753005: Updating extension hosting docs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: changes to extensions policy Created 5 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: chrome/common/extensions/docs/templates/articles/external_extensions.html
diff --git a/chrome/common/extensions/docs/templates/articles/external_extensions.html b/chrome/common/extensions/docs/templates/articles/external_extensions.html
index ad1cb2b25140dd8c366dc9de4fad387f812403ec..7e8034664abf5011c9963fb56f6ea777279abc3d 100644
--- a/chrome/common/extensions/docs/templates/articles/external_extensions.html
+++ b/chrome/common/extensions/docs/templates/articles/external_extensions.html
@@ -1,9 +1,24 @@
-<h1>Other Deployment Options</h1>
+<h1>Alternative Extension Distribution Options</h1>
<p>
-Usually, users install their own extensions.
+All Chrome extensions must be distributed either directly from the Chrome Web Store,
+using
+<a href="https://developer.chrome.com/webstore/inline_installation">inline installation</a>,
not at google - send to devlin 2015/05/13 18:23:27 For all of these links, you might as well link to
mkearney1 2015/05/13 18:36:36 Done.
+or using the mechanisms described below.
+Failure to comply with one of these distribution methods constitutes
+a violation of the
+<a href="https://developer.chrome.com/extensions/single_purpose">Chrome extension policy</a>
+and may result in the extension
+and/or the software distributing it to be flagged as
+<a href="https://www.google.com/about/company/unwanted-software-policy.html">unwanted software</a>.
+</p>
+
+<p>
+Usually, users install their own extensions from the Chrome Web Store
+or some other site via
+<a href="https://developer.chrome.com/webstore/inline_installation">inline installation</a>.
But sometimes you might want an extension
-to be installed automatically.
+to be installed via other means.
Here are two typical cases:
</p>
@@ -12,53 +27,56 @@ Here are two typical cases:
An extension is associated with some other software,
and the extension should be installed
whenever the user installs that other software.
- The extension could also be uninstalled
- when the user removes that other software.
</li>
<li>
A network admin wants to install the same extensions
- throughout the company.
+ throughout their organization.
</li>
</ul>
<p>
-An extension that's installed automatically is known as an
+An extension that's installed neither from the Chrome West Store
+nor as an inline installation is known as an
<em>external extension</em>.
-Google Chrome supports two ways of
-installing external extensions:
+For developers who want to distribute an extension as part
+of the installation process for other software,
+or for network admins that want to distribute an extension
+throughout their organization,
+Google Chrome supports the following extension installation methods:
</p>
<ul>
- <li> Using a preferences JSON file (Mac OS X and Linux only)</li>
- <li> Using the Windows registry (Windows only) </li>
+ <li> Using a preferences JSON file (for Mac OS X and Linux only)</li>
+ <li> Using the Windows registry (for Windows only) </li>
</ul>
<p>
Both ways support installing an extension hosted at an
<code>update_URL</code>.
-In the Windows registry,
+On Windows and Mac,
the <code>update_URL</code> must point to the Chrome Web Store
-where the extension is hosted.
+where the extension must be hosted.
</p>
<p>
-In the preferences file,
-it can point to your own server where you are hosting the extension
+The preferences file on Linux can point
+to your own server where you are hosting the extension
(see <a href="autoupdate#update_url">autoupdating</a>).
The preferences JSON file also supports installing
an extension from a <code>.crx</code> extension
-file on the user's computer
+file on the user's Linux computer
(see <a href="hosting">hosting</a>).
</p>
<p class="note">
<b>Install extensions from your website:</b>
-The safest option for your users is to publish your extension
+Among these methods,
+the safest option for your users is to publish your extension
in the Chrome Web Store.
Instead of hosting your own extension,
-publish it in the store, and link to the store install using
-<a href="https://developers.google.com/chrome/web-store/docs/inline_installation">inline installation</a>.
+publish it in the store, and provide an
+<a href="https://developers.google.com/chrome/web-store/docs/inline_installation">inline installation</a> link from your website.
</p>
<h2 id="prereqs">Before you begin</h2>
@@ -72,10 +90,13 @@ and make sure that it installs successfully.
<p class="warning">
-<b>Windows installs must come from Chrome Web Store:</b><br>
+<b>Windows and Mac installs must come from Chrome Web Store:</b><br>
As of Chrome 33,
-no external installs are allowed from a path to a local <code>.crx</code>
+no external installs are allowed from a path to a local <code>.crx</code> on Windows
(see <a href="http://blog.chromium.org/2013/11/protecting-windows-users-from-malicious.html">Protecting Windows users from malicious extensions</a>).
+As of Chrome 44,
+no external installs are allowed from a path to a local .crx on Mac
+(see <a href="http://blog.chromium.org/2015/05/continuing-to-protect-chrome-users-from.html">Continuing to protect Chrome users from malicious extensions</a>).
</p>
<p>
@@ -115,7 +136,7 @@ Use <a href="#registry">Windows registry</a> instead.
</p>
<ol>
-<li>If you are installing from a file, make the <code>.crx</code> extension
+<li>If you are installing from a file on Linux, make the <code>.crx</code> extension
file available to the machine you want to install the extension on.
(Copy it to a local directory or to a network share for example,
<code>\\server\share\extension.crx</code>
@@ -148,35 +169,59 @@ or <code>/home/share/extension.crx</code>.)
</dl>
</li>
-<li>If you are installing from a file, specify the extension's location and version with fields
+<li>Linux only: If you are installing from a file, specify the extension's location and version with fields
named "external_crx" and "external_version" in the file created above.
-<p>
-Example:
+ <ul>
+ <li>Example:</li>
+ <li>
<pre>
{
"external_crx": "/home/share/extension.crx",
"external_version": "1.0"
}
</pre>
-</p>
-<p class="note">
-<b>Note:</b>
-You need to escape
-each <code>\</code> character in the location.
-For example,
-<code>\\server\share\extension.crx</code> would be
-<code>"\\\\server\\share\\extension.crx"</code>.
-</p>
-<p>
-<p>
-If you are installing from an update URL, specify the extension's update URL
-with field name "external_update_url".
-</p>
-Example:
-<pre>{
- "external_update_url": "http://myhost.com/mytestextension/updates.xml"
-}</pre>
-<p>
+ </li>
+ <li>
+ <b>Note:</b>
+ You need to escape
+ each <code>\</code> character in the location.
+ For example,
+ <code>\\server\share\extension.crx</code> would be
+ <code>"\\\\server\\share\\extension.crx"</code>.
+ </li>
+ </ul>
+</li>
+
+<li>If you are installing from an update URL, specify the extension's update URL
+with field name "external_update_url".</li>
+
+<li>
+Example of installation from local .crx file (Linux only):
+ <ol>
+ <li>
+<pre>
+ {
+ "external_update_url": "http://myhost.com/mytestextension/updates.xml"
+ }
+</pre>
+ </li>
+ </ol>
+</li>
+
+<li>
+Example of installation from the Chrome Webstore (Mac and Linux):
+ <ol>
+ <li>
+<pre>
+ {
+ "external_update_url": "https://clients2.google.com/service/update2/crx"
+ }
+</pre>
+ </li>
+ </ol>
+</li>
+
+<li>
If you would like to install extension only for some browser locales,
you can list supported locales in field name "supported_locale". Locale may
specify parent locale like "en", in this case the extension will be
@@ -184,12 +229,17 @@ installed for all English locales like "en-US", "en-GB", etc.
If another browser locale is selected that is not supported by the extension,
the external extensions will be uninstalled. If "supported_locales" list
is missing, the extension will be installed for any locale.
-</p>
-Example:
-<pre>{
- "external_update_url": "http://myhost.com/mytestextension/updates.xml",
- "supported_locales": [ "en", "fr", "de" ]
-}</pre>
+ <ul>
+ <li>Example:</li>
+ <li>
+<pre>
+ {
+ "external_update_url": "https://clients2.google.com/service/update2/crx",
+ "supported_locales": [ "en", "fr", "de" ]
+ }
+</pre>
+ </li>
+ </ul>
</li>
<li>Save the JSON file.</li>
<li>Launch Google Chrome and go to <b>chrome://extensions</b>;

Powered by Google App Engine
This is Rietveld 408576698