スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
Date: --.--.-- Category: スポンサー広告   

Chromium OS にパッケージを追加する (ビルドする場合とフォントに関する注意)

前回書けなかった、Chromium OS にパッケージを追加するときにソースからビルドして追加する方法です。
今回追加しようとするのはフォントの VL ゴシック。これは Ubuntu のパッケージがありますし、フォントはほとんど環境に依存しないのでそのまま使えるはずですが、逆に言えばフォントならビルドの際に問題も出にくいでしょうし、確実に Ubuntu パッケージは作れるという意味でも、Chromium OS にパッケージを追加するという作業の確認にはちょうどいいのではないかと思います。

では以前書いた Adding a new package のステップに沿って進めていきましょう。

1. ソースを入手して、Debian パッケージが作成できるようにビルドが行えるようにする
2. ソースディレクトリ内に debian ディレクトリを作成し、その中に control、changelog、rules ファイルを作成する
これは簡単です。Chromium OS をビルドしている環境が Ubuntu でしょうから、その Ubuntu のターミナル上で

apt-get source ttf-vlgothic

と実行します。
これで現在のディレクトリに VL ゴシックのソースと、それを .deb パッケージにビルドするためのパッチが適用されたディレクトリ (今回は ttf-vlgothic-20090204 という名前のディレクトリ) が作成されます。今回はこれでこの 2 つのステップは完了です。

3. ソースディレクトリのトップに make_pkg.sh ファイルを作成する
これは Chromium OS 向けのスクリプトのようです。記述しなければならない項目はある程度決まっているようですが、基本的に他のパッケージからコピーして、パッケージ名の部分だけ書き換える方法が推奨だと思います。
~/chromiumos/src/third_party/ 以下にいくつかディレクトリがあり、その中に make_pkg.sh ファイルがあると思うので、それを ttf-vlgothic-20090204 のディレクトリにコピーして、末尾の make_pkg_common の後を「"ttf-vlgothic"」に書き換えれば OK です。
その後、ttf-vlgothic-20090204 ディレクトリを ~/chromiumos/src/third_party/ ディレクトリにコピーします。

4. ソースディレクトリのトップに README ファイルを作成する
Chromium OS のサイトでは README ファイルと書いていますが、他のパッケージのソースを見ると README.chromium という名前のように思います。このファイルは無くてもビルドできますが、パッケージに関する説明、ソースの入手先、ライセンス、Chromium OS でビルドするにあたって適用したパッチなどを記述します。これも他のパッケージからひな形としてコピーして、適切な内容に書き換えるといいと思います。
また、明記されていませんが LICENSE という名前のファイルでライセンスを置きます。大体のソースアーカイブには同じようなファイル名でライセンスが明記されていると思いますので、それにリンクを張ってもいいようです。

5. 依存関係にあるパッケージを追加する
今回追加するパッケージにはありませんので、このステップはパスします。ビルドに必要な物は chroot 環境に、動作に必要な物はイメージに追加されるようにしなくてはならないと思います。

6. build_platform_packages.sh と build_image.sh ファイルを編集し、追加するパッケージもビルドとイメージに追加がされるようにする
このステップはそのうち変更がされることがあると思いますが、現在ではビルド対象のパッケージは build_platform_packages.sh のスクリプト内に直接書かれています。ですので、このスクリプトを書き換えないとビルドされません。通常の場合は build_image.sh を編集する必要は無いと思いますが、イメージ作成手順でファイルやディレクトリを増減している場合もあるので、インストールしたはずのパッケージが正常に動作しない場合はこちらもチェックが必要です。
まず build_platform_packages.sh の編集カ所です。このファイルの 34 行目付近に、「THIRD_PARTY_PACKAGES=」で始まる行があります。ここにビルドしたいパッケージのソースを配置したディレクトリを記述していきます。ディレクトリ名は ~/chromiumos/src/third_party/ ディレクトリからの位置で指定します。行を追加する場合はバックスラッシュを行末に追加し、最後の行はダブルクォーテーションで終わるようにします。
ビルドされた .deb パッケージは ~/chromiumos/src/build/x86/local_packages/ に配置されるので、~/chromiumos/src/package_repo/package-list-prod.txt ファイルにビルドしたパッケージ名を追記すればイメージ作成のときにパッケージがインストールされます。

これでうまくいくはずですが、今回のフォントの追加がうまくいきませんでした。作成したイメージで起動してみると、/usr/share/fonts/truetype/ 以下が ttf-droid しか存在しません。ここに vlgothic ディレクトリが追加されるはずです。試しに
dpkg -L ttf-vlgothic
と実行してみると、パッケージは正常にインストールされて /usr/share/fonts/truetype/vlgothic/
にフォントがインストールされている、という形になっています。

ここで build_image.sh の内容を確認してみると、同じディレクトリの customize_rootfs.sh というスクリプトを呼び出しています。このスクリプトの 218 行目あたりに
UNNEEDED_TRUETYPE_FONTS=$(ls -d /usr/share/fonts/truetype/* | grep -v ttf-droid)
という行があります。この後で UNNEEDED_TRUETYPE_FONTS に入っているディレクトリを削除しているので、ここで ttf-droid 以外のフォントが削除されているようです。なので、フォントを追加する場合はこの行を
UNNEEDED_TRUETYPE_FONTS=$(ls -d /usr/share/fonts/truetype/* | grep -v "ttf-droid\|vlgothic")
のように書き換えます。
ついでに、そのすこし下で gtk-font-name に DroidSans を割り当てているので、これを VL PGothic に変更すれば UI のフォントも VL ゴシックになります。フォントサイズに 8 を指定していますが、これを大きくすると Options 画面のボタンが押せなくなったりするので注意が必要です。

ブラウザ内のフォントを指定するには、Options の Under the Hood タブを開き、Web Content 項目にある Change font and language settings ボタンをクリックすれば、フォントを指定することができます。

こんな感じでパッケージをビルドして追加することができます。とはいえ、Ubuntu や Debian のパッケージがそのまま使える可能性が高いことを考えれば、ビルドをしなければならないパターンはそんなにないかもしれません。
スポンサーサイト
Date: 2009.11.26 Category: Chrome OS  Comments (0) Trackbacks (0)

この記事へのコメント:


管理人のみ通知 :

トラックバック:


最新記事
最新コメント
ウィジェット
月別アーカイブ
カテゴリ
プロフィール

SC3WO06A

Author:SC3WO06A
FC2ブログへようこそ!


検索フォーム
RSSリンクの表示
リンク
このブログをリンクに追加する
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
最新トラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。