Question

Est-il possible de décoder un addon firefox du format contraignant XPI à la langue maternelle XUL?

Je suis juste essayer d'apprendre comment faire un addon. Donc, je pense que si je peux décoder un addon Firefox Je peux alors apprendre l'architecture addon!

Était-ce utile?

La solution

La plupart du code que vous voulez regarder est dans le répertoire chrome de l'extension, généralement dans un fichier jar. Tout ce que vous avez besoin est un extracteur de fichier qui peut extraire des fichiers zip. Une fois que vous extrayez le XPI (il est juste un fichier zip avec une extension XPI), ouvrez le sous-chrome et voir ce qui est là. Si c'est un fichier jar, extraire le contenu de (il .jar sont également à zip fichiers avec une extension différente). A partir de là, il y a probablement un dossier de contenu, ce qui devrait avoir la plupart des XUL, css, js, etc.

Autres conseils

XPI est mis simplement un fichier ZIP, vous pouvez simplement extraire son contenu et lire les fichiers ...

Juste appris il y a aussi XPI-Déballez et xpi-pack correspondant dans Ubuntu (via sudo apt-get install mozilla-devscripts); semble prendre le déballage des deux .xpi et inclus les fichiers .jar compte ..

Vive!

Edit: note cependant, vous pouvez avoir des problèmes d'autorisation avec xpi-unpack; Voici un exemple de journal en ligne de commande que j'avais:

user@PC:Desktop$ xpi-unpack colt.xpi colt-dir
Unpacking colt.xpi
Unpacking ./chrome/colt.jar
Unpacked xpi file.
user@PC:Desktop$ ls -la colt-dir/chrome/colt.jar\!/
total 16
drwxr-xr-x  4 user user 4096 2011-07-05 09:52 .
drwxr-xr-x  3 user user 4096 2011-07-05 09:52 ..
d---------  2 user user 4096 2010-09-12 05:15 content
d--------- 25 user user 4096 2011-01-08 17:08 locale

user@PC:Desktop$ stat -c '%n %a' colt-dir/chrome/colt.jar\!/
colt-dir/chrome/colt.jar!/ 755
user@PC:Desktop$ stat -c '%n %a' colt-dir/chrome/colt.jar\!/content/
colt-dir/chrome/colt.jar!/content/ 0

user@PC:Desktop$ sudo chmod -R 755 colt-dir/chrome/colt.jar\!/ 

user@PC:Desktop$ ls -la colt-dir/chrome/colt.jar\!/
total 16
drwxr-xr-x  4 user user 4096 2011-07-05 09:52 .
drwxr-xr-x  3 user user 4096 2011-07-05 09:52 ..
drwxr-xr-x  2 user user 4096 2010-09-12 05:15 content
drwxr-xr-x 25 user user 4096 2011-01-08 17:08 locale

EDIT2: En fait, tour à tour d'autres fichiers peuvent manquer d'autorisations trop:

user@PC:Desktop$ ls -la colt-dir/
total 28
drwxr-xr-x 4 user user 4096 2011-07-05 09:52 .
drwxr-xr-x 5 user user 4096 2011-07-05 10:04 ..
drwxr-xr-x 3 user user 4096 2011-07-05 10:04 chrome
---------- 1 user user 1337 2011-06-23 00:05 chrome.manifest
drwxr-xr-x 3 user user 4096 2011-07-05 09:52 defaults
---------- 1 user user 1969 2011-06-23 00:05 install.rdf
---------- 1 user user 1275 2010-09-12 05:04 LICENSE.txt
user@PC:Desktop$ stat -c '%n %a' colt-dir/install.rdf 
colt-dir/install.rdf 0

... donc il vaut mieux chmod tout: sudo chmod -R 755 colt-dir/ avant d'essayer de faire des changements et de l'emballage (comme dans xpi-pack colt-dir colt-2.xpi)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top