この記事は編集レビューを必要としています。ぜひご協力ください。
この記事ではGaiaコードベースがローカルにてどう実行されるか、セットアップでどんなツールが使えるのかを一通り詳しく見て行きます。
まず初めに、Gaiaにコントリビュート(貢献)するには、GeckoやB2Gをビルドする必要はないことを理解すべきです。ただGaiaのソースコードをダウンロードし、同じ方法で実行、編集できる事が必要です。
Gaiaを実行するには、いくつかの方法があります:
- 更新されたGaiaビルドを電話機に焼く
- WebIDEの内部でGaiaを実行する
- Firefox Muletツール内でデスクトップのGaiaを起動する
異なる方法で実行する上での正確な情報はGaiaを実行する色々な方法のページで見つかり、加えて要求されるより詳細な情報へのリンクがあります。一般に、これらは最も複雑なもの(しかし最も現実的な体験がある)から最も易しいもの(しかし最も現実的でない)の順番に並んでいます。
この記事ではデスクトップ版 Firefox Mulet か WebIDE 内で実行するのに集中します。— Gaiaコードベースへの大半の変更に対して、これが更新をテストする最速のメカニズムになります、しかし明らかにいくつかの機能 (デバイスAPI群や電話機のハードウェアとのやりとりのようなもの) で実機端末が必要となるものもあります。
記: これ以上のGaiaヘルプを得るのに最良な場所は、IRCチャンネルの #fxos (Mozilla IRCに詳細情報あり) と dev-fxos のメーリングリストです。
独自ビルドのGaiaを実行する
記: 簡単で、一発のビルドプロセスのために、Foxbox ツールを試してください。Windows ユーザは、不通のGaiaビルド手順が標準Windows環境で動作しないために、特にこれの恩恵を受けます。
- 最初に、 GithubのGaiaリポジトリをフォークします。
- 次に、ローカルにクローンします。:
git clone https://github.com/your-username/gaia.git
- upstreamをこのように追加します:
cd gaia git remote add upstream https://github.com/mozilla-b2g/gaia
- 今はGaiaのデバッグプロファイルを作る必要があります。リポジトリフォルダで
make を実行することで、
profileディレクトリ内に
任意デバッグ用のプロファイルが作成されます。 - デバッグプロファイルが生成された時、"Profile Ready: please run [b2g|firefox] -profile /Users/chris/git/gaia/profile" という行を伴ったメッセージが出てきます。これは無視して、その代わりに Mulet や WebIDE を、リンク先の手順を使って実行します。
トラブルシューティングと既知の問題
Error: Python 実行ファイル"python3" は v3.x で、これは gyp によりサポートされていない。
いくつかのLinux ディストリビューション (例: Archlinux)で、デフォルトのpython
はpython3です。これは
npm
がコマンドを実行する (例. テスト実行時) 時に失敗の元になります。きっぱりと修正するために、次のコマンドを実行できます:
npm config set python python2
この Stack Overflow ページ で他の解決法を探せます。
次に node_modules
ディレクトリを削除して、失敗したコマンドを再実行します。
NodeJSをインストールして下さい -- (linuxでは aptitude を、osxでは homebrew を使う)
それで、インストールしたつもりでもこのエラーが出ます。Debian や、Ubuntuのような他のDebianベースのディストリビューションで起こりえます。こうしたディストリビューションでは、NodeJS は nodejs
パッケージに含まれていて、全て正しくセットアップするには nodejs-legacy
パッケージをインストールできます:
sudo aptitude install nodejs-legacy
このパッケージのインストールに問題がある場合、 あなたはChris Lea's PPA for Nodeを使っているかもしれません; 先に進む前にこれを削除して下さい。
異なる Gaia のブランチでは異なる node のバージョンが必要になります。; 例えば以前 node 0.10 と v2.5 のブランチで構築し、master ブランチに切り替えたい場合、以下のように実施します:
npm use 4.2 && rm -r node_modules && npm install --production