MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

Gaia のコードに変更を加える

今やデスクトップでGaiaを実行していて、コードベースがどう動作するかをある程度理解し、プロジェクトにコントリビュート(貢献)し始める準備ができているでしょう。この記事では変更を加える方法と、取り組むべきバグの見つけ方を記述します。

Gitのベストプラクティス

  1. Gaiaに変更を加える時は、まず最新をmasterから取得すべきです:
    cd path/to/gaia
    git checkout master
    git pull upstream master
  2. 次に、あなたの修正を乗せるブランチをチェックアウトします:
    git checkout -b my-code-fix
  3. 最後に、 gaia/apps ディレクトリに移動し、アプリファイルを変更します。

簡単なコード変更例

コード変更を見るには:

  1. Gaiaコードベースに必要な変更を加え、変更を保存します。
  2. FirefoxのMuletか、WebIDE内のsimulatorをシャットダウンします。
  3. makeを使ってGaiaプロフィールをリビルドします。
  4. FirefoxのMuletか、WebIDE内のsimulatorを再起動します。

ロックスクリーンの時計の色変更のような簡単な例を見てみましょう:

Gaia lockscreen showing the clock display in white text

  1. スタイルがどうやってセットされているのか見つける最良の方法は、開発者ツールを使うことです。デスクトップ版Firefoxで Ctrl/右 + クリックしてコンテキストメニューから 要素を調査 を選びます。
  2. どのCSSファイルを編集するかがわかったら — ここでは gaia/apps/system/lockscreen/style/lockscreen.css — 画面右手側で、CSSファイルが望み通りの状態になるよう編集します。
  3. 変更に満足したら、ファイルディレクトリに移動して変更します。
  4. 次に、この節の最初で概説したステップに従い、変更を見ます。

Gaia lockscreen showing the clock display modified from white to red text


Gaia Firefox Muletのレンダリング制限:

  • デスクトップ版Firefoxレンダリングでは、アプリは実機の動作と比べてはるかに正確ですが、あちこちに違いがあるかもしれません。
  • デスクトップ版Firefoxでは全てのデバイスAPIをサポートしているわけではありません;有効なデバイスAPI一覧は preferences.js に見ることができます。

取り組むべきバグを見つける場所

Firefox OS のバグを見つける最良の方法は、 Josh Matthews の、Bugs Ahoy(おーいバグ)、アプリです — これはMozilla の Bugzilla からバグを直接引き込んで、検索、閲覧しやすく表示してくれます。 いったん取り組むバグを見つけたら、Bugzilla ページに移動して"assigned to" 項目に自分自身を入力し、下記に示すように、作業を開始します。

有用なヒント

  • 助言つき(mentored)バグに取り組む時、Gaiaコアチームの誰かがあなたの進捗をモニタし、コードとプロセスとの援助を提供します。あなたがFirefox OSの貢献プロセスの初心者である場合、 これらに参加するのは有用です。これらはFirefox OS Bugzilla ページの"Mentors"項目に入力されていることで示されます。 Bugs Ahoy で助言つきバグが一覧できます。
  • あなたが完全に新しいBugzillaユーザーである場合、自身をバグの担当にアサインできないかもしれません。できない場合、権限のある助言者にアサインしてもらうよう依頼するか、もしくは単にバグコメントで依頼して下さい。
  • 多少経験を積んだ後、自身にバグのアサインできる権限を誰かに依頼するべきでしょう。
  • 新しいコントリビューターが簡単なバグを探す場合、もう一つ探すのに良いホワイトボードエントリーは[good first bug]です。最初のバグに適したリストは http://www.joshmatthews.net/bugsahoy/?b2g=1&simple=1 で一覧できます。
  • 貢献したいプロジェクトを探すのには検索結果を保存すべきです。例えば下記では Gaia Clock アプリのバグ検索が取得できます:

https://bugzilla.mozilla.org/buglist.cgi?columnlist=product%2Ccf_blocking_b2g%2Cbug_status%2Cresolution%2Cshort_desc&resolution=---&query_based_on=CLOCK&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Gaia%3A%3AClock&product=Boot2Gecko&known_name=CLOCK&list_id=9776392

参考情報

ドキュメントのタグと貢献者

 このページの貢献者: chrisdavidmills, hamasaki, T.Ukegawa, Uemmra3
 最終更新者: chrisdavidmills,