Erweiterungen sind eine Art installierbare Pakete, welche vom Benutzer heruntergeladen und direkt in der Anwendung installiert werden können. Außerdem können Erweiterungen bereits mit der Anwendung mitgeliefert oder von einem anderen Programm eingebunden werden. Erweiterungen benutzen eine Verzeichnisstruktur, die Platz für Chromedateien, Komponenten und andere Daten bietet, um die Funktionalität der XUL-Anwendung zu erweitern.
Jede Erweiterung benötigt eine install.rdf Datei mit beschreibenden Informationen über die Erweiterung, wie eine einmalige ID, Version, Urheber oder Informationen zur Kompatibilität.
Nachdem die Erweiterung sowie die install.rdf vorbereitet wurden, gibt es verschiedene Wege, um diese zu installieren. Das Erweiterungsverzeichnis kann als Installationspaket (xpinstall) gepackt, direkt in das Anwendungs- oder Profilverzeichnis kopiert oder in der Windows Registry eingetragen werden.
Ab Gecko 2.0 (Firefox 4 / Thunderbird 3.3 / SeaMonkey 2.1) werden XPI Dateien nicht mehr entpackt, wenn Erweiterungen installiert werden. Stattdessen wird die XPI-Datei in das Erweiterungsverzeichnis kopiert und die Dateien werden direkt aus dem Paket geladen. Siehe Erweiterungen für Firefox 4 aktualisieren für weitere Details.
Erweiterung als Installationspaket
Eine XPI-Datei (XPInstall) ist eine einfache Zip-Datei, die die Erweiterung sowie die install.rdf im Wurzelverzeichnis des Archivs enthält. Benutzer können ein Installationspaket sowohl von einer Webseite als auch als lokale Datei installieren. Dazu muss das Paket lediglich geöffnet oder in den Addon-Manager per Drag & Drop gezogen werden.
Der, vom Firefox so erkannte, MIME-Typ einer XPI-Datei ist application/x-xpinstall. Da die meisten HTTP-Server defaultmäßig nicht konfiguriert sind diesen MIME-Typ für das .xpi Endung zurückzugeben, werden Sie vermutlich die Konfiguration Ihres HTTP-Servers anpassen müssen. Beim Apache HTTP-Server kann dies ganz einfach gemacht werden, indem folgende Anweisung in der Konfiguration oder .htaccess-Datei hinzugefügt wird:
AddType application/x-xpinstall .xpi
Eine Erweiterung direkt installieren
Wenn Sie den Pfad der Anwendung kennen, weil Sie z.B. die Erweiterung zusammen mit der Anwendung installieren, können Sie die Erweiterung direkt nach <appdir>/extensions/<extensionID> installieren. Die Erweiterung wird vom Addon-Manager automatisch gefunden sobald die Anwendung das nächste mal gestartet wird.
Wenn Sie diese Methode wählen, müssen Sie sichergehen, dass die Zugriffsrechte für die Verzeichnisse und Dateien richtig gesetzt sind. Ansonsten kann der Addon-Manager unter Umständen nicht richtig mit der Erweiterung funktionieren.
Add-ons in eine benutzerdefinierte Anwendung einfügen
Eine benutzerdefinierte Anwendung kann Add-ons einbinden (auch Erweiterungen und Themes), indem diese in das <appdir>/distribution/bundles
Verzeichnis gepackt werden.
Eine Erweiterung in der Windows Registry registrieren
Externe Installationsroutinen, wie z.B. die Java Laufzeitumgebung, können eine Anwendung als Erweiterung integrieren, obwohl diese noch nicht installiert ist. Die Installation wird dann mit Hilfe der Windows Registry beendet.
Multi-Item Extension XPIs
Manchmal werden mit einer einzelnen XPI-Datei mehrere Erweiterungen/Themes installiert. Ein spezieller Typ Gruppen Paket zeigt wie dieser Typ gepackt wird. (Firefox 1.5/XULRunner 1.8 wird benötigt.)
Offizielle Toolkit API Referenzen
- Struktur eines installierbaren Bündels: Beschreibung der gemeinsamen Struktur von installierbaren Bündeln von Erweiterungen, Themes und XULRunner Anwendungen
- Packen von Erweiterungen: Informationen über das Packen von Erweiterungen
- Packen von Themes: Informationen über das Packen von Themes
- Packen von mehreren Erweiterungen: Informationen über das Packen von mehreren Erweiterungen
- Packen einer XUL Anwendung: Informationen über das Packen von XUL Anwendungen
- Chrome Registrierung