Nexus7(2012)をロリ化しようとしたら少しつまずいたお話。

FactoryImage 5.0 (LRX21P) が公開されていたので、いつも通り焼こうと思ったら以下のようなメッセージ。

C:\Users\chebeckynakasi-lrx21p-factory-93daa4d3\nakasi-lrx21p\fastboot flash bootloader bootloader-grouper-4.23.img
sending 'bootloader' (2100 KB)...
OKAY [ 0.278s]
writing 'bootloader'...
FAILED (remote: (InvalidState))
finished. total time: 0.407s

バイス上には "Signature mismatch." の文字。
ぱっと見、bootloaderが間違ってるかおかしいんだろうな。
なので以前のバージョン 4.4.4 (KTU84P) のbootloaderを使ってみるも駄目。
そこからひとつずつ遡って 4.4 (KRT16S) で無事書き込めたとさ。

C:\Users\chebeckynakasi-lrx21p-factory-93daa4d3\nakasi-lrx21p\fastboot flash bootloader bootloader-grouper-4.23.img
sending 'bootloader' (2100 KB)...
OKAY [ 0.292s]
writing 'bootloader'...
OKAY [ 1.124s]
finished. total time: 1.348s


めでたしめでたし。

IT業界Heavy Metal Advent Calendar 2012 大トリ 〜 Children Of Bodom 〜

このエントリーはIT業界Heavy Metal Advent Calendar 2012の25日目、大トリとして寄稿するです。
http://www.adventar.org/calendars/50

なんかメタル社長(metal_president)に無茶振りされた感がありますが、せっかくの機会なのでwww

で、なんにしようかなーと考えたけど最終日12/25日クリスマスというわけでChildren Of Bodomにしようかと。
なんでCODかといいますと、
 クリスマス → サンタさん → サンタクロース村 → フィンランド
という安直な発想でございますwww

フィンランドと言えばフィニッシュメタルという言葉がある程のメタル大国。
StratovariusSonata Arctica、Amorphois、Nightwishといったバンドも有名で、
全体的にメロディアスなものが多い印象かな?

今回はそんな中でも一番大好きなChildren Of Bodomを紹介致します。

紹介した通りフィンランド出身のデスメタルバンドで、現メンバーはギターボーカルのアレキシ・ライホ、ギターのローペ・ラトヴァラ、
ドラムのヤスカ・ラーチカイネン、ベースのヘンカ・ブラックスミス、キーボードのヤンネ・ウィルマンの5人。
自分としては、ライホのデスヴォイスとエッジのたったギター、ヤンネのメロディアスな早弾きキーボードが聴き所かと。

なんだか長々と書いたけどここで曲をば。

このAdvent Calendarの趣旨全体的に眠気は飛ばせそうな曲を選択してみましたwww
他にも両曲はたくさんあるので、この機会に漁ってみたはいかがでしょう?

最後にこんな新参の私にトリを用意してくださったメタル社長に感謝。
ありがとうございました!!

〜 余談 〜
ちなみに俺は普段からこんな感じのメロディアスなものを好んで聴いてます。
ジャーマン、メロスピメロデスあたりが好き。
Helloween、Blindguardian、AngraSonata ArcticaAvenged Sevenfoldあたりをよく聴いてます。

JBのソースを repo sync 出来なかった

前回の記事から一ヶ月以上経ったけど、その間にあったことをちらほら書くよ!

JBのソースコードを落とそうとしたら repo sync でエラーが出た。
最初は repo が古いからとかいうエラーの通り、新しいものに置き換えてもダメ。
どうもgitのバージョンが古いようで…。

ぐぐると皆さん以下の方法でやっていた。

 $ sudo add-apt-repository ppa:git-core/ppa
$ sudo apt-get update
$ sudo apt-get install git-core
上の手順をやっても自分の環境はうまくいかず、repositoryを色んなものに変更するもダメっ!

結局自分でソースからコンパイルしてうまくいったのでその手順を。

まずはソースコードを取得
※自分は11/25の1.8.0.1を利用
http://code.google.com/p/git-core/downloads/list

解凍してコンパイルをする

 $ tar zxvf git-1.8.0.1.tar.gz
$ cd git-1.8.0.1
$ export prefix=/usr/local
$ make all doc
$ sudo make install install-doc
終わったら確認
 $ git --version
git version 1.8.0.1
で、無事に repo sync が出来るようになったとさ!

android 4.1のマルチユーザーについて 〜その1〜

4.2で対応になるマルチユーザーについて、4.1でも仕組み自体はあるとのことなので色々試してみた。

知っている限りではadb上でのpmコマンドでしか作成は出来ない模様(要root)
※2012/11/04 20:21 追記
 [設定アプリ -> ユーザーと制限 -> ユーザーを追加] からユーザーが追加出来ました…。
 ソースは packages/apps/Settings/src/com/android/settings/user/ あたりに。

 ・ユーザー作成
  pm create-user USER_NAME

 ・ユーザー削除
  pm create-user USER_ID

 ・ユーザーリスト表示
  pm list-users

 ※こんな感じで表示される

    Users:
UserInfo{0:Primary:3}
UserInfo{1:test01:0}

コマンドはここで定義されている。

 Android/frameworks/base/cmds/pm/src/com/android/commands/pm/Pm.java

で、追加したユーザーに切り替えて設定アプリを立ち上げると、表示される項目が少ない。

なので調べてみると、以下の様に設定アプリの方でUSER_IDを見ているようで

    } else if (id == R.id.user_settings) {
if (!mEnableUserManagement
|| !UserId.MU_ENABLED || UserId.myUserId() != 0
|| !getResources().getBoolean(R.bool.enable_user_management)
|| Utils.isMonkeyRunning()) {
target.remove(header);
}
}
if (UserId.MU_ENABLED && UserId.myUserId() != 0
&& !ArrayUtils.contains(SETTINGS_FOR_RESTRICTED, id)) {
target.remove(header);
}

このmyUserId()の判別を無効にすると、Primaryユーザーと同様の項目が見えるようになった。

※2012/11/04 20:54 追記
どうやら Settings.java の SETTINGS_FOR_RESTRICTED にて見せる項目を設定している様です。

    // Show only these settings for restricted users
private int[] SETTINGS_FOR_RESTRICTED = {
R.id.wifi_settings,
R.id.bluetooth_settings,
R.id.sound_settings,
R.id.display_settings,
R.id.security_settings,
R.id.account_settings,
R.id.about_settings
};

正直試すのは4.2でいいような気がするけど、予習ということでwww