sdk
| resources: | Home Mailing List Installation Source Code Members |
|---|
Info: Update your contents.rdf files
Extensions/locales/themes installed without the use of the new extension manager can still use the old chrome xpcom mechanism. In this way distributors can provide packages for extensions without the need to rely on the extension managers mechanism.
The idea is to allow package software like debians apt to install extensions that are only deinstallable by the package manager (not by the extension manager). Otherwise upgrading/deleting extensions installed through a package manager would lead to inconsitencies with the state known It would be nearly impossible to keep track, what packages actually installed.
If you are packaging extensions remember to UPDATE your contents.rdf files to make package maintainers life easier: You need to add version information for skins and locales. And don't forget to change the extensions attribute of your package to false (or remove it completely). Examples are given below.
Example - contents.rdf for a skin
<?xml version="1.0"?>
<RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:chrome="http://www.mozilla.org/rdf/chrome#">
<!-- list all the packages being supplied by this jar -->
<RDF:Seq about="urn:mozilla:skin:root">
<RDF:li resource="urn:mozilla:skin:classic/1.0" />
</RDF:Seq>
<!-- enigmail skin information: classic/1.0 -->
<RDF:Description about="urn:mozilla:skin:classic/1.0">
<chrome:packages>
<RDF:Seq about="urn:mozilla:skin:classic/1.0:packages">
<RDF:li resource="urn:mozilla:skin:classic/1.0:enigmail"/>
</RDF:Seq>
</chrome:packages>
</RDF:Description>
<RDF:Description about="urn:mozilla:skin:classic/1.0"
chrome:skinVersion="1.5"/>
</RDF:RDF>
Example - contents.rdf for a locale
add this line:
<RDF:Description about="urn:mozilla:locale:en-US:enigmail"
chrome:localeVersion="1.7"/>
Example - contents.rdf for package
<RDF:Description about="urn:mozilla:package:enigmail" chrome:displayName="Enigmail v0.84.1"
chrome:author="Team Enigmail"
chrome:authorURL="http://enigmail.mozdev.org/"
chrome:name="enigmail"
chrome:extension="false"
chrome:localeVersion="1.7"
chrome:skinVersion="1.5"
chrome:description="This extension adds support for OpenPGP message encryption."
chrome:settingsURL="chrome://enigmail/content/pref-enigmail.xul">