2012年8月28日火曜日

Paranoid Android for Nexus7 (grouper) をbuildする(覚書) 09/03/2012 更新

やり方はここを参照。
自分でNexus7用CM10をbuildする(その1:環境)
自分でNexus7用CM10をbuildする(その2:ソースのダウンロード)
自分でNexus7用CM10をbuildする(その3:ROMの作成)

$HOME/android/paranoidを作成、移動
repo init -u git://github.com/ParanoidAndroid/android.git -b jellybean
(一回目は公開鍵を作った後エラー、再実行で成功)

manifest.xmlの編集
ParanoidPreferencesを含む行をコメントにする。
(これを忘れると次のステップはいつまでたっても終了しない)

repo sync -j16の実行

local_manifest.xmlの作成(おそらくrepo sync前に実行しておいた方が早い:未検証
CM10と同様 Paranoid androidでは後述のrom-build.sh grouperを実行する際にvendorの入力が要求され、自動的にlocal_manifest.xmlが作成され、必要なソースがダウンロードされる。が、nexus7からのファイルの取り出しが行われない。(09/03/2012 更新)

repo sync -j16の再実行

nexus7から必要なファイルの取り出し
CM10と同様

ccacheを有効にする(未検証、HD容量が少ないので止めておくべき?)
export USE_CCACHE=1
export CCACHE_DIR=/<path_of_your_choice>/.ccache
prebuilt/linux-x86/ccache/ccache -M 10G

rom-build.sh grouperの実行
schedtoolがインストールされてないというエラーが出た場合は
sudo apt-get install schedtoolを実行してインストールする

OpenJDK6ではbuild失敗した。Oracle JDK6をインストールした。
Ubuntu 12.04 LTSにOracle JDK6をインストール
その後、repoによるsyncに失敗していたことが判明(ファイルサイズ0のファイルがあちこちに)。ParanoidPreferencesをダウンロード失敗していたのを正しくない方法で強制終了したせい?どこで失敗したかわからないので全ソース落としなおしたらうまくいった。本当にOpenJDKのせい?

pngcrush, optipng, or pngoutのインストールが要求されていた。前半二つは普通にインストールできたが最後の一つはapt-getで見つからない。とりあえず「or」となっているのでとりあえず放置。(09/03/2012 更新)

インストール後、rom-build.sh grouperの再実行
私の環境では80分でbuild終了
out/target/product/grouper/pa_grouper-2.00-27.zipができていることを確認。
バージョンが2.00になっている。さて、ParanoidPreferences.apkの最新版がないとまずい気がするが、とりあえず1.992の物をzipファイルの/system/appにコピーした。

AirDroidを使ってzipファイルをNexus7にコピー。リカバリを起動していつもの手順でインストール。キャッシュ類は当然クリア。ROMとgappsだけインストールして再起動。

無事再起動!!
ParanoidPreferences.apkが前バージョンのため、起動画面以外の変化は実感できない。前バージョンで保存した設定も復旧できた。

0 件のコメント:

コメントを投稿