Firefox 3ではじめる拡張機能開発

第7回 インストーラの作成

この記事を読むのに必要な時間:およそ 4.5 分

前回まででタグヘルパー拡張機能の開発は完了しました。今回は,第6回での「全OS共通スキン」版のソースファイルを元に,タグヘルパー拡張機能を配布するためのインストーラの作成を行います。

なお,実際に作成したインストーラは,下記URLから入手可能です。

インストーラのフォルダ構成

拡張機能のインストーラは,XPI(クロスパッケージインストーラモジュール)と呼ばれる拡張子が「.xpi」のファイルですが,実は単純なZIP形式の圧縮ファイルです。とはいえ,これまで開発してきたソースファイルのフォルダ構成をそのまま単純に圧縮すればよいというものではなく,インストーラ内部のフォルダ構成は,タグヘルパー拡張機能の場合であれば通常図1のようになります。インストーラのファイルを「taghelper.xpi」とすると,その内部には「chrome」フォルダ,インストールマニフェスト,クロムマニフェストの3つが圧縮されており,さらに「chrome」フォルダ内には,「content」,「locale」,「skin」の3フォルダを圧縮した「taghelper.jar」が格納されています。

図1 インストーラのフォルダ構成

図1 インストーラのフォルダ構成

クロムマニフェストの修正

インストーラ内部が図1のようなフォルダ構成となるため,クロムマニフェストに記述した各パッケージのソースファイルを格納したフォルダへの相対パスを,リスト1の内容に変更する必要があります。そこで,テストインストール用のクロムマニフェストをファイル名「chrome.manifest.bak」のようにしてバックアップ後,リスト1のように修正してください。

リスト1 インストーラ作成用のクロムマニフェスト

content  taghelper  jar:chrome/taghelper.jar!/content/ 
locale  taghelper  en-US  jar:chrome/taghelper.jar!/locale/en-US/ 
locale  taghelper  ja-JP  jar:chrome/taghelper.jar!/locale/ja-JP/ 
skin  taghelper  classic/1.0  jar:chrome/taghelper.jar!/skin/classic/ 
overlay  chrome://browser/content/browser.xul  chrome://taghelper/content/overlay.xul 

なお,インストーラ作成後,再びテストインストール状態での拡張機能の開発を続けるには,バックアップした「chrome.manifest.bak」を元に戻してFirefoxを再起動してください。やや面倒ですが,今後はテストインストール用のクロムマニフェストと,インストーラ作成用のクロムマニフェストの両者を管理していく必要があります。

インストーラの作成

引き続き,ファイルを圧縮してリスト1のフォルダ構成のインストーラを作成する作業を行います。なお,圧縮ファイルを作成するには,Windows XPであれば圧縮フォルダ機能(圧縮対象のファイル・フォルダを選択し,右クリックから「送る」「圧縮 (zip 形式) フォルダ」を実行)でも構いません。ただ,7-Zip注1のような圧縮率を指定して圧縮可能なツールを使用すると,最適化されたインストーラを作成することが可能です。

注1)
7-Zipは下記URLから入手可能です。
http://www.7-zip.org/

はじめに,「content」「locale」「skin」の3フォルダを圧縮し,「taghelper.jar」を作成します。次に,作業フォルダ直下へ「chrome」フォルダを作成し,その中へ「taghelper.jar」を格納します。最後に,「chrome」フォルダ,「chrome.manifest」リスト1のように修正済み),「install.rdf」の3ファイルを圧縮し,「taghelper.xpi」を作成します。以上でインストーラの作成は完了です。

なお,圧縮率を指定して圧縮する場合,「taghelper.jar」の圧縮率は低く,「taghelper.xpi」の圧縮率は高くすることでインストーラが最適化されます。

インストーラの動作確認

インストーラの作成が完了したら,実際にインストールできることの確認を行います。ただし,現在開発用に使用しているプロファイルは,タグヘルパー拡張機能がすでにテストインストール済みであるはずですので,別のプロファイル上で動作確認を行う必要があります。

Firefoxのプロファイルマネージャ注2を起動し,新しいプロファイルを作成するか,タグヘルパー拡張機能がインストールされていない別のプロファイルを選択し,Firefoxを起動してください。その後,インストーラのファイル「taghelper.xpi」をFirefoxのウィンドウへドラッグ&ドロップし,インストールが正常に開始されることを確認してください。さらに,インストール完了後Firefoxを再起動し,タグヘルパー拡張機能が正常に動作することを確認してください。

注2)
プロファイルマネージャの使用方法については下記URLを参照してください。
http://support.mozilla.com/ja/kb/プロファイルの管理

著者プロフィール

Gomita

拡張機能開発者。
現在までにScrapBook,FoxAge2ch,Tab Scope,FireGesturesの4つをリリースしている。

URLhttp://www.xuldev.org/

コメント

コメントの記入