Dev : Extensions : install.rdf: Difference between revisions

From MozillaZine Knowledge Base
Jump to navigationJump to search
mNo edit summary
No edit summary
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
A new Extension Manager is used in Firefox 0.9 and Thunderbird 0.7 upwards. In order to be supported by the new EM you have to package your extensions as described in [http://www.mozilla.org/projects/firefox/extensions/packaging/extensions.html this mozilla.org document].
#REDIRECT [[Install.rdf]]
 
==Creating install.rdf for your extension using tools==
You can use any of these tools: [http://ted.mielczarek.org/code/mozilla/ffinstall/ Ted Mielczarek's] webapp for install.rdf creation or [http://willbert.unserious.com/?go=extenzilla Extenzilla] - Windows-only install.rdf and XPI generator by Will Ryan ([http://forums.mozillazine.org/viewtopic.php?t=96578 disscussion thread at MZ forums]).
 
==Creating from a template==
Alternatively you can create it from template below.
 
<pre>
<?xml version="1.0"?>
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#">
 
<Description about="urn:mozilla:install-manifest">
<em:id>{XXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}</em:id>
<em:name>Sample Extension</em:name>
<em:version>1.0</em:version>
<em:description>A sample extension with advanced features</em:description>
<em:creator>Your Name Here</em:creator>
<!-- optional items -->
<em:contributor>A person who helped you</em:contributor>
<em:contributor>Another one</em:contributor>
<em:homepageURL>http://sampleextension.mozdev.org/</em:homepageURL>
<em:optionsURL>chrome://sampleext/content/settings.xul</em:optionsURL>
<em:aboutURL>chrome://sampleext/content/about.xul</em:aboutURL>
<em:iconURL>chrome://sampleext/skin/mainicon.png</em:iconURL>
<em:updateURL>http://sampleextension.mozdev.org/update.rdf</em:updateURL>
 
<em:file>
<Description about="urn:mozilla:extension:file:sampleext.jar">
<em:package>content/</em:package>
<!-- optional items -->
<em:skin>skin/classic/</em:skin>
<em:locale>locale/en-US/</em:locale>
<em:locale>locale/ru-RU/</em:locale>
</Description>
</em:file>
 
<em:targetApplication> <!-- Firefox -->
<Description>
<em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
<em:minVersion>0.9</em:minVersion>
<em:maxVersion>1.0</em:maxVersion>
</Description>
</em:targetApplication>
<em:targetApplication> <!-- Thunderbird -->
<Description>
<em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id>
<em:minVersion>0.7</em:minVersion>
<em:maxVersion>1.0</em:maxVersion>
</Description>
</em:targetApplication>
</Description>
 
</RDF>
</pre>
 
==Generating a GUID==
You&rsquo;ll have to generate a GUID for each extension you create and put it inside the &lt;em:id&gt; tag. You can either download [http://www.microsoft.com/downloads/details.aspx?FamilyId=94551F58-484F-4A8C-BB39-ADB270833AFC&displaylang=en MS guidgen] (a Windows GUID generator), use uuidgen (for *nix), or go to ''irc://irc.mozilla.org/#botbot'' and say 'botbot uuid'.
 
As Firefox/Thunderbird install each extension in a folder with name taken from &lt;em:id&gt; in install.rdf, some people (e.g. clav) are using human-readable strings as ID for their extensions. However, extensions with such IDs are reported to be rejected by update.mozilla.org, so you need to use a 'real' GUID for your extension if you're going to submit it to u.m.o. ([http://forums.mozillazine.org/viewtopic.php?t=157579 discussion thread])
 
==Extension versioning==
As stated in the [http://www.mozilla.org/projects/firefox/extensions/update.html official documentation] on  mozilla.org, extension versions '''must''' be of form major.minor.release.build[+]. Old-style versions like 0.5pre are now invalid.

Latest revision as of 01:57, 19 December 2004

Redirect to: