質問

XPIバインディング形式からネイティブ言語XULにFirefoxアドオンをデコードすることは可能ですか?

私はただアドオンの作り方を学ぼうとしています。ですから、Firefoxアドオンをデコードできれば、アドオンアーキテクチャを学ぶことができると思います!

役に立ちましたか?

解決

見たいコードのほとんどは、通常はJARファイルに拡張機能のChromeディレクトリにあります。必要なのは、zipファイルを抽出できるファイル抽出器だけです。 XPIを抽出したら(XPI拡張機能を備えたZIPファイルにすぎません)、Chromeサブフォルダーを開いて、そこにあるものを確認します。 JARファイルの場合は、内容を抽出します(.jarファイルは、別の拡張子を持つzipファイルでもあります)。そこから、おそらくコンテンツフォルダーがあり、XUL、CSS、JSなどのほとんどが必要です。

他のヒント

XPIは単にzipファイルを置くので、その内容を抽出してファイルを読むことができます...

あることも学んだことがあります xpi-unpack そして対応する xpi-pack ubuntu(経由 sudo apt-get install mozilla-devscripts);両方を開梱するようです .xpi 含まれています .jar 考慮されるファイル..

乾杯!

編集:ただし、許可の問題がある場合があります xpi-unpack;これが私が持っていたコマンドラインログの例です。

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:実際、他のファイルにも権限がない可能性があることがわかります。

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

...すべてをchmodするのが最善です: sudo chmod -R 755 colt-dir/ 変更を加えて梱包しようとする前に(のように xpi-pack colt-dir colt-2.xpi)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top