2010年05月26日

HT-03Aでまだまだ戦う (Cyanogenmod 5.0.7 正式リリース版編)

ずっとtestリリースが続いていたCyanogenmod 5.0.7が、ついに正式リリース版となりました。(ぱちぱちぱち)
めでたいので、久しぶりにFullWipeして1から環境構築してみました。

<というわけで一応書いとくお約束>

今さら言うまでもないと思いますが…。
全ての作業は自己責任でお願いしますね。

幸いにして私は今のところトラブルなく作業できていますが、煉瓦になってしまったという話も少しだけ耳にしています。(それでも完全煉瓦ではなく、何とか復旧できるレベルでは収まっているみたいですが)

ある程度Linuxの知識がないと正直しんどいと思います。手順をざっと見て?マークが2つ以上浮かぶようでしたらやめておいた方が無難だと思います。



インストールに使用するファイルは以下のサイトにて公開されております。

Cyanogenmod-5 For Dream/magic - Mean Lean Pastry Machine - V5.0.7 (05/25/2010) - CyanogenMod Forum
http://forum.cyanogenmod.com/index.php?/topic/3908-cyanogenmod-5-for-dreammagic-mean-lean-pastry-machine-v507-05252010/

必要なファイルは以下の2つです。

・Latest ROM 5.0.7-DS ( update-cm-5.0.7-DS-signed.zip )
・Google Addon: ERE36B ( gapps-ds-ERE36B-signed.zip )


ダウンロードしたファイルをSDカードに転送します。方法は何でもいいのですが、一番簡単なのはUSBで母艦と接続して以下のコマンドで送ってしまう事でしょう。
./adb push update-cm-5.0.7-DS-signed.zip /sdcard/cm507.zip
./adb push gapps-ds-ERE36B-signed.zip /sdcard/cm507-gapps.zip

母艦側のファイルパスはあんまり考慮せずに書いてます。適宜自分の環境に合わせて読み替えて下さい。

完了したら一度端末の電源を切り、Homeキーを押しながら電源をONにしてリカバリーモードで起動します。

まずは領域の初期化(Wipe)を実施します。メニューから

 Wipe → Wipe data/factory reset

と選択し、Homeキーを押してWipeを実行します。
完了したら一番上のメニューまで戻り、

 Flash zip from sdcard

を選択します。先ほどSDカードに書き込んだzipファイルが表示されるはずなので、cm507.zipcm507-gapps.zipの順にFlashを実施して下さい。

完了したらReboot system nowを選択して端末の再起動をします。初回起動にはかなり時間がかかりますので、慌てず騒がずじっくり待ちましょう。10分待ってもmyTouch3Gの表示から動かなかった場合はインストールに失敗しているので、一度バッテリを抜いて強制シャットダウンし、リカバリモードでの起動からやり直して下さい。

無事起動したら導入完了です。

test版の頃はこのあとJITパッチとOCパッチの適用をしていたのですが、test7あたりからJITもOCも適用しない方が快適という意見をよく見かけるようになったので、私もとりあえずJIT/OCなしの状態で使用しています。(デフォルトで576MHzまでのクロックアップは施されています) あとswapは使わず、Compcacheは32MBとしています。この辺はとりあえず様子見のレベルなので、しばらく運用したらまた色々変更するかもしれません。

CompcacheはSparePartsから設定すると24MB固定になってしまうため、SparePartsでは設定をOFFにしておき、/sd-ext/userinit.shを以下のように設定して対応しています。(ついでにcpufreqの値も調整しています)
#!/system/bin/sh

# max frequency setting ( by default )
echo 576000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq

# compcache without backing swap (32MB)
modprobe ramzswap
rzscontrol /dev/block/ramzswap0 --disksize_kb=32768 --init
swapon /dev/block/ramzswap0

リリース版になっても残念ながらbmobileSIMを使うためにはライブラリの置き換えが必要でした。ライブラリの置き換えとフォントの入れ替えは必ず実行するので、今回から以下のようなシェルスクリプトを書いて実行してます。
#!/system/bin/sh

mount -o remount,rw /system

cp /sdcard/libhtc_ril.so /system/lib
chmod 644 /system/lib/libhtc_ril.so

cd /system/fonts
ln -s /sd-ext/fonts/DroidSansJapanese.ttf DroidSansJapanese.ttf

実行の前提条件は、bmobileSIMに対応したlibhtc_ril.so/sdcardの下に保存されている事と、使いたい日本語フォントが/sd-ext/fonts/DroidSansJapanese.ttfとして保存されている事です。あと、このシェルスクリプト自体も/sd-extの下に配置し、実行権限を付けておく必要があります。root:root6755にしておくと面倒がなくてよいのではないかと。(セキュリティの観点とかちょっくら無視で)

まだ私自身も数時間しか使っていませんが、今のところ至って絶好調です。何でも出来る万能端末というわけにはいきませんが、ある程度用途さえ絞れば本当にまだまだ最前線で戦えるレベルに仕上がっていると思います。Cyanogenさんとデベロッパーの皆さん、素晴らしいROMの公開本当にありがとうございます。

次期バージョンであるCyanogenmod-6ではFroyo(Android2.2)に対応するのではないかという噂もちらほら。正直非力なHT-03AFroyoがまともに動くのかというとかなり厳しいとは思いますが、きっと未来の一端は体験させていただけるのではないかと思っています。

全ての関係者の皆様に、感謝の気持ちを込めて。
posted by 月水和尚 (とも) at 00:10 | Comment(31) | TrackBack(0) | Android
この記事へのコメント
今晩は〜また遊びに来ました。
相変わらずの素早い更新、さすがです♪

正式版ですが、確かにOC無しでもサクサクに感じますね。
けどマーケットのプチ再起動のような動作が相変わらずなのが残念。あれ原因は何でしょうね?
後はCompcacheを有効にしていると発生する、謎のシャットダウン→再起動が改善されているか、ですね。

にしてもHT-03Aは面白いですね!
いずれ出るであろうFroyoのROMがどの程度の動作になるかは分かりませんが、今後もN1やGalaxySの誘惑を断ち切る端末であって欲しいもんです(笑)
Posted by まりもぅ at 2010年05月26日 02:46
こんばんわ。
先ほどCM正式版に焼きなおししたのですが
Google Addonがうまくいってないようで
3G接続できない、マーケットがない状態から
抜けれません・・・
どうしたらいいでしょうか・・・?
Posted by 初心者 at 2010年05月26日 03:16
まりもぅさん

いつもありがとうございます。
JITもOCも適用しないで何でこんなにサクサク動くのか正直さっぱり分かりません。今までの努力はいったい何だったのでしょうか?(笑)

マーケットでの不思議な動き(インストールしようとするとマーケットアプリのトップまで戻されるんだったかな?)は私も体験しました。ただそれほど発生率は高くないので問題ないと思ってます。

CC32MBで13時間超動かして今のところ再起動には出会っていません。このまま50時間くらい動かせれば改善されてると考えていいのかなと思っているのですが、あと二日も再起動を伴うカスタマイズが我慢できるかどうか。(笑) そしてJITもOCも未適用なので単純な比較も出来ないんですけどね。いずれにせよ3日連続で稼働できる安定度があれば十分でしょう。

NexusOneやGalaxy Sはやっぱり魅力的です。(笑) でも新しい機種を買ったとしても、ちゃんと居場所を作ってあげられるような魅力的な存在になってくれればなと思ってます。


初心者さん

マーケットが出ないのであれば「Google Addon: ERE36B」の適用に失敗していると思われます。一度電源落としてRAを起動し、Flash zip from sdcardからcm507-gapps.zipを選択してみて下さい。これでも出ないようであればzipの再ダウンロードをして、1から再構築する事をお勧めします。

3Gに関してはlibhtc_ril.soの置き換えが必要なのですが、実施されましたか?
Posted by tomo at 2010年05月26日 12:26
さすが素早い対応ですね。情報ありがたいです。早速試してみます!
Posted by wv-net at 2010年05月26日 16:21
こんにちわ
いつもこちらの手順を参考させていただいています。ありがとうございます。
さっそく正式版を入れてみたのですが、「cp /sdcard/…」と入力してフォントを変更する際に、「No space left on device」と出て変更できなくなってしまいました。前バージョンまでは問題なかったのですが…。
Wipeした後なので、アプリで容量が圧迫されていることもなく、フォントをもっと少ない容量のものに変えてみても同じようです。
他に原因があるのでしょうか?もしよければお教えください。
Posted by smilingpet at 2010年05月26日 17:41
smilingpetさん

リリース版の/systemは空きがほとんどないらしい(実際どんなもんか確認してないのですが…)ので、フォントを直接/system/fontsにコピーしようとすると容量不足で失敗すると思います。

今回書いた手順のように、フォント自体はSDカード上に置き、/system/fontsからシンボリックリンクを張るようにすれば大丈夫だと思いますので、試してみて下さい。
(シェルを書かなくても、直接最後の2行を実行していただければ大丈夫です)
Posted by tomo at 2010年05月26日 18:04
お回答ありがとうございます。
コメントいただいようにwipeして
ZIPやり直しして何度か挑戦ののち
無事、できました・・・・
CM導入をやり始めてはじめてで
あきらめかけてました。
Google Addonがうまくいかなかったんでしょう・・・
助言ありがとうございました!
また、返事が遅くなりすいません・・・
これからも記事を読ませていただきます!!
Posted by 初心者 at 2010年05月26日 21:17
初心者さん

CM導入成功おめでとうございます。
煉瓦にならず無事成功して何よりです。

また遊びに来て下さい。
Posted by tomo at 2010年05月26日 22:51
お世話になってます!
教えて君で大変すいません。
今、Compcach設定に挑戦してます。
以前スペアパーツで簡単に設定できるとのことでしたが、32MB設定をしたくいろいろ記事を読みかえしていました^^;
で、userinit.shをsd-extに入れたのですが
userinit.shに記述する内容は

modprobe ramzswap
rzscontrol /dev/block/ramzswap0 --disksize_kb=32768 --init
swapon /dev/block/ramzswap0

でよいのでしょうか?
無知ですいません・・・
Posted by 初心者 at 2010年05月26日 23:07
初心者さん

多分それで大丈夫です。
あとは1行目に #!/system/bin/sh を書くのと、実行権限付けるのをお忘れなく。
Posted by tomo at 2010年05月26日 23:58
上記の記述
#!/system/bin/sh

# max frequency setting ( by default )
echo 576000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq

# compcache without backing swap (32MB)
modprobe ramzswap
rzscontrol /dev/block/ramzswap0 --disksize_kb=32768 --init
swapon /dev/block/ramzswap0

をuserinit.shに記述したのに
freeでみても 0 
適用されてないみたいです。
スペアパーツは無効なのになぜ・・?
Posted by 初心者 at 2010年05月27日 00:10
実行権限の付け方おしえてください・・・
まことに申し訳ないです・・!
Posted by 初心者 at 2010年05月27日 00:19
初心者さん

chown root:root /sd-ext/userinit.sh
chmod 6755 /sd-ext/userinit.sh

とやってみてくださーい。
Posted by tomo at 2010年05月27日 00:24
userinit.shに記述して
adb shellで
chown root:root /sd-ext/userinit.sh
chmod 6755 /sd-ext/userinit.sh
ですよね・・?
うまくいかないです・・・
Posted by 初心者 at 2010年05月27日 00:46
私の環境ではこれでOKなのですが…。

ちなみにuserinit.shはどうやって記述しましたか?
あと ls -l /sd-ext/userinit.sh の結果を教えてくださーい。
Posted by tomo at 2010年05月27日 01:07
お訪ねします。userinit.shをHT-03A単体でsd-extに入れることは可能でしょうか?
当方、パソコンが使えない環境なので、アプリのターミナルからできないものかと。できるとしたらどのようにタイプしたらよろしいでしょうか?分かりにくい質問ですみません。
Posted by kaede at 2010年05月27日 03:12
userinit.shへはファイルtxtであけコピペしました。そこが違うんでしょうか?
記述方法調べてみます…
ls .....は帰宅後報告します…
名前の通り初心者ですいません…
Posted by 初心者 at 2010年05月27日 11:09
>初心者さん

たぶんですが、スクリプトファイルをWindows上で作成してコピーしていらっしゃるのであれば、それが原因で実行出来ないのではないかと思います。

私も最初Windows上でファイルを作成してコピーしていたのですが、実行出来ませんでした。
Ubuntu上でスクリプトファイルを作成してコピーしたら実行出来たので、もしかしたら文字エンコードと改行コードが絡んでるのではないかと思われます。

ちなみに私の環境では、文字エンコードはUTF-8で、改行コードはUnix/Linux改行コード(LF)です。
Posted by YJW at 2010年05月27日 11:24
>初心者さん
私はWindow上から作成→コピーで動かしているのですが、
以下のように、各行の最後に;をつければ動くと思います。

modprobe ramzswap;
rzscontrol /dev/block/ramzswap0 --disksize_kb=32768 --init;
swapon /dev/block/ramzswap0;
Posted by amrt at 2010年05月27日 11:32
YJWさん、amrtさん そして初心者さん

すいません…代理返答ありがとうございます。

YJWさんご指摘のとおり、Windowsで作ってしまうと改行コードが違うのでダメですね。WindowsがCR+LF(0x0d+0x0a)に対してLinuxではLFのみなので。文字コード的には大丈夫(ASCII文字しか使ってないので)だと思うのですが。

amrtさんの方法だと改行コードを読み込む前にコマンドの区切り文字";"が来ているので回避できているんだと思いますが、出来ればLFのみのテキストとして作成した方がいいと思います。(でもCyanogenmodのwiki見ると行末の;書いてありますね)

WindowsでもLFのみで保存できるテキストエディタはいくつかありますので、それを使ってみるのもいいかもしれません。(私はoeditを使っています)


kaedeさん

viが使えれば実機のみでも全然問題ないのですが…ここで質問されてるという事はviを使う方法はダメですよね?
ちょっと面倒ですがechoを使って書いてしまう方法もあります。

cd /sd-ext
echo "#!/system/bin/sh" > userinit.sh
echo "modprobe ramzswap" >> userinit.sh
echo "rzscontrol /dev/block/ramzswap0 --disksize_kb=32768 --init" >> userinit.sh
echo "swapon /dev/block/ramzswap0" >> userinit.sh

bashからだと最初の1行がうまく書けないので、普通のshを使って下さい。(terminalから接続すれば普通shが使われています)
Posted by tomo at 2010年05月27日 13:16
ご助言して頂いた方々、ほんとうにありがとうございます!仕事中にてPCが触れないため携帯より「;」を入力。見事に動作を始めてくれました!
YJWさん amrtさん tomoさん
感謝です…!
Posted by 初心者 at 2010年05月27日 13:30
いつも参考にさせていただいております。
Cyanogenmod 5.0.7のページがエラーになってしまうのですが、ぼくだけでしょうか?
Posted by にしやん at 2010年05月27日 15:04
にしやんさん

昼くらいからフォーラムだけ落ちちゃっているようです。
XDAにもホストされてたんでこちらからどうぞ。

http://forum.xda-developers.com/showthread.php?t=688262
Posted by tomo at 2010年05月27日 15:14
こんな質問にまで答えて頂いて有り難うございました。家に帰ったらさっそくチャレンジしてみます!
Posted by kaede at 2010年05月27日 15:40
ありがとうございます。助かりました!
取り急ぎ、お礼まで。
Posted by にしやん at 2010年05月27日 16:54
とりあたまさんいつもありがとうございます。
とりあたまさんと同じセッティングでCM507順調に動いてます^^
↓これも焼いてみました。
http://forum.xda-developers.com/showthread.php?t=681304
Posted by UCHY at 2010年05月28日 00:12
ご返答ありがとうございます
自分が行なった手順をよくよく思い出してみたら、元々RA-sapphireの導入がどうしても出来ずFlashRecoveryのみで運用していた為、SDカードのパーティションを切るのができていませんでした
フォント以外は完璧に動いているので、これでもいいかとも思うのですが、やはり中華フォントには馴染めません…
もう一度OSのダウングレードからやり直して、ご指摘頂いたようにリンクを張ってみます
ありがとうございました
Posted by smilingpet at 2010年05月28日 10:25
お世話になっております。
上記とりあたまさんの書き込みで、
『・・・使いたい日本語フォントが/sd-ext/fonts/DroidSansJapanese.ttfとして保存されている事です』とありますが、これの手法をお教えください。
andexp.等でやってみるのですが、出来ないのです。よろしくお願いします。
Posted by UCHY at 2010年05月28日 15:30
UCHYさん

自分はESファイルエクスプローラーというアプリでいれました。
設定にsystemに書き込みができるようになってます。
でも、本当はコードから入れた方がいいとおもいますよ。
Posted by 初心者 at 2010年05月28日 18:49
初心者さんありがとうございます。
Font入りました。^^
が、しか〜し・・・font変わらないです(泣)
Posted by UCHY at 2010年05月29日 00:18
smilingpetさん

SDカードのパーティションを切るだけであればRecoveryからでなくterminalから出来ますよ。fdiskでGoogle先生に聞いてみると多分解決できます。うまく行かなかったらまた聞いて下さい。


UCHYさん、初心者さん

フォントの書き込みは母艦側からやってますよ。
こんな感じでいかがでしょうか。

./adb push hogehoge.ttf /sd-ext/fonts/DroidSansJapanese.ttf
Posted by tomo at 2010年05月29日 17:54
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。