--- title: Empaqueter un thème slug: Theme_Packaging tags: - Themes translation_of: Mozilla/Thunderbird/Thunderbird_extensions/Theme_Packaging ---

Ce document décrit comment sont packagés les thèmes pour Firefox et Thunderbird.

Préalables

Construire un thème pour Firefox ou Thunderbird requiert quelques connaissances des feuilles de style en cascade (CSS), probablement de XBL, et quelques notions de design graphique et d'esthétisme (...ou peut-être pas). Ce document décrit seulement comment les thèmes sont packagés afin d'être affichés dans la fenêtre des thèmes de l'application.

Arborescence des fichiers d'un thème

Les thèmes Firefox/Thunderbird sont packagés dans un fichier JAR avec la structure arborescente suivante :

montheme.jar :
  install.rdf
  contents.rdf
  preview.png
  icon.png
  browser/fichiers
  global/fichiers
  mozapps/fichiers
  communicator/fichiers
  ...

install.rdf

Votre fichier manifest install.rdf devrait ressembler à cela :

<?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:type>4</em:type>more properties
  </Description>
</RDF>

Les propriétés requises dans install.rdf

Votre manifest install.rdf doit contenir les propriétés suivantes. Consultez la référence install.rdf pour plus d'informations :

Les propriétés optionnelles d'install.rdf

Il est à noter que si votre thème est disponible sur le site Web officiel http://addons.mozilla.org, il ne devra pas inclure de propriété updateURL.

Exemple de fichier manifest install.rdf

<?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>{18b64b56-d42f-428d-a88c-baa413bc413f}</em:id>
    <em:version>1.0</em:version>
    <em:type>4</em:type>

    <!-- Target Application this extension can install into,
         with minimum and maximum supported versions. -->
    <em:targetApplication>
      <Description>
        <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
        <em:minVersion>0.8</em:minVersion>
        <em:maxVersion>0.9</em:maxVersion>
      </Description>
    </em:targetApplication>

    <!-- Front End MetaData -->
    <em:name>New Theme 1</em:name>
    <em:description>A test theme for Firefox</em:description>
    <em:creator>Ben Goodger</em:creator>
    <em:contributor>John Doe</em:contributor>
    <em:homepageURL>http://www.bengoodger.com/</em:homepageURL>

    <!-- Front End Integration Hooks (used by Theme Manager)-->
    <em:internalName>newtheme1</em:internalName>
  </Description>
</RDF>

Ce qui suit sont les GUID habituels des applications que vous devez utiliser dans la propriété targetApplication :

Firefox      {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
Thunderbird  {3550f703-e582-4d05-9a08-453d09bdfdc6}
Sunbird      {718e30fb-e89b-41dd-9da7-e25a45638b28}

Référence officielle de l'API du toolkit

{{page("/fr/API_du_toolkit/Références_officielles")}}