2008/12/31

大晦日

とうとう大晦日です。

今年も無事に過ごすことが出来ました。皆様に感謝です。
同時になんだかんだと、良く飲んだ1年間でもありました (^^;

我が家の年越しそばは、ここ数年、常に瓦そばです。


これを食べると、1年の終わりを感じます。

2009年が皆様にとってよい年でありますように。
来年も宜しくお願いいたします。

VMWare FusionでAndroidを起動

「Foolishな日々」さんや、「Android Zaurusはてな館」さん、また、Howto build Android full source for X86 Architecture like EeePC(ASUS)を参考に MacOS X 上の VMWare Fusion2.0.1 で Andorid を稼動させてみました。皆さん、情報どうもありがとうございます。


MacOS X上のToolChainではBuild出来ないので、Ubuntu 8.10環境を作り、その上で作業を行いました。

build終了後は、
  1. VMwareの仮想ディスクを作成し
  2. ext3でmkfs
  3. その上に「Foolishな日々」さんの「USBイメージの作成」手順に従ってツリーを構築
  4. このディスクイメージを使って適当な仮想マシンから起動
で起動可能に。

「Foolishな日々」さんの手順は、実際に何が行われているのかを把握できるので、大変分かりやすいです。buildしたinstaller.imgを使いたい場合には、この投稿が参考になるかも知れません(試していません)。

やはり最大の問題が、キー入力を適切に受け付けない点。

AT_Translated_Set_2_keyboard.klをいじってみた感じでは、入力としては受け付けているものの、BACKとENTERイベント程度しか上手く処理されていないように思えました。結果、ESCとEnterキーしか実質的に機能しません。SoftKeyboard が上手く動作しない点と関係するのかもしれませんね。

ネットワークに関しては、GRUB の menu.lst で androidboot.hardware=eee_701 を指定すれば、eth0 が up する旨のメッセージは確認できますが、dhcpパケットは確認できませんでした。何れにしても、ブラウザ起動までは辿り着けていません。

年始は時間の確保が難しそうな点が残念ですが、これは楽しそうですね。

2008/12/30

今日のお酒: CORTE VIOLA BRUT

CORTE VIOLA BRUT。


近くのお店で。泡立ちは弱く、後味の苦みも弱く、お手頃価格。食事時に気軽に飲める美味しさでした。

ADP1 で cupcake の merge された master のコードを使う

ADP1で最新の master コードを使う方法です。

"cupcake" development branchに書いてあるように、既にcupcakeの変更点はmasterへマージされていますので、buildするだけで簡単にcupcakeの機能で遊べます。

ちなみに、cupcake にしても、あんまり良いことはないというレポートがでていますので、良く良く考えてから始めましょう (^^;

なお、以下は MacOS X 上で行いました。
  • Get sourceに従い基本のソースを持ってきます。
  • Building For Dreamに従い、local_manifest.xml を書いて、ADP1用の追加コードを持ってきます。
  • 後は make するだけ。暫くするとout/target/product/dreamにイメージが出来ています。
うーん、簡単ですね。果たしてcupcake branch上でのbuildとの格闘は何だったんだ (^^;

出来たコードを書き込んできましょう。

ADP1をfastbootモードで起動します。横のカメラボタンを押しながら電源投入です。詳しくはADP1のRecoverモードとFastbootモードを参照のこと。

ホスト上で fastbootコマンドを起動して書き込みます。
% cd out/host/darwin-x86/bin
% ./fastboot flash system system.img
% ./fastboot flash boot boot.img
% ./fastboot flash userdata userdata.img
% ./fastboot reboot
上手く行かない場合には serial0 と fastboot を言ったり来たりするか、ケーブルを抜き差ししてみましょう。

または、ADP1をrebootしてみるのも手です。ホストからADP1が見えているならば以下のコマンドが使えます。
% ./fastboot reboot-bootloader
ちなみに私の環境では、ホストが過負荷状態の時には上手く書き込みできませんでした。また、付属品でない適当なUSBケーブルを使ったら、そもそも認識すらせずに、非常にはまりました。

さて起動すると「再び SIM がないよ」で、起動できない状態になってしまいます。

ここでもdevice_provisionedを設定すれば良いのですが、cupcakeマージ後は、書き込み先table名が、「system」から「secure」へ変更されていますので、その点に注意が必要です。adb shell で次の通り書き込みましょう。今度はsuが必要ないはず。
% adb shell
# sqlite3 /data/data/com.android.providers.settings/databases/settings.db "INSERT INTO secure (name, value) VALUES ('device_provisioned', 1);"
# sync
# sync
# reboot
彼らの変更の苦闘は、Frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.javaで参照できます。過去コンパチの維持は大変だなぁ (^^;

この状態で ADP1 を試すと、以下の事が分かります。
  1. cupcake branch から進化していて libaudio が動作する。
  2. ソフトウェアキーボードが動く。
  3. カメラを起動すると画面がモノクロになる
  4. Wi-Fi/bluetoothが動かない。
一番目の項目以外は、先のレポート通りです。

さて、ここからがお楽しみですね :-)

ADP1のRecoverモードとFastbootモード

自分でいじったコードを焼く前に知っておくべきことを。

上手く起動しなくなった時に(多分)頼れるのがRecoveryモードです。ホームボタンを押しながら電源を投入することでこのモードに入れます。
出来ることは以下の通りです。
  • ALT+L:トグルでログが表示されます(toggle log text display)

  • ALT+S:sdcardのupdate.zipを使ってアップデート開始です(apply sdcard:update.zip)

  • Alt+W:データを削除して、工場出荷状態へ戻します(wipe data/factory reset)

  • HOME+BACK:リブートします(reboot system now)

恐らく recovery.img が生きていれば、これで復活できる筈...?。

自分で作成したイメージを焼くためにはFastbootモードが便利です。
  • カメラボタンを押しながら、電源を押す。

  • スケートボードに乗った Android の絵が表示される。黄色いフォーカスのあたった行には「Serial0」と書かれている。

  • Backボタンを押すと、フォーカス行がFASTBOOTへ変化する。これでホスト側から制御可能に。カメラボタンでSerial0へ戻る。

  • Fastbootモードから抜けるには、OnHook(左の緑ボタン)、OffHook(右の赤ボタン)、MENUボタンを同時に押す。

フォーカス行がFASTBOOTになっている状態では、ホスト側から fastboot コマンドによる制御が可能です。fastbootコマンドは、Android の src コードをbuildすることで、「out/host/darwin-x86/bin」へ出来上がっているはずです。

ホストの fastboot コマンドが使える時には、
% fastboot reboot
でFastbootモードから抜けることも可能です。

これで、万が一Recoveryモードが動作しなくなっても、recovery.imgを焼き込むことで復活できる(筈)です。また、GotOnTheInter.Netさんでは、ADP1のイメージファイルも配布しているようです(試していませんので、自己責任で)。

SIM無しで Android Dev Phone 1 を設定する

既に色々なサイトで情報をまとめてくださっているので、大変助かりました。特に今回は、splhackさんの記述を参考にさせて頂きました。感謝します。

まずは、Androdi SDKをインストールします。私はMac版の1.0r2を使いました。

この中の adb コマンドを使うので、zipを開きtoolsへPATHを通します(または、フルパス指定しても構わない)。

さてSIMなしでも起動できるように設定情報を書き込みましょう。
% adb kill-server
% adb start-server
% adb shell
$ su
# sqlite3 /data/data/com.android.providers.settings/databases/settings.db "INSERT INTO system (name, value) VALUES ('device_provisioned', 1);"
# sync
# sync
# reboot
これでSIMなしでも起動できるようになりました。

この状態で起動するとGoogleアカウントの設定画面になります。また外部との接続方法がありませんので、Wi-Fiを有効にします。

次の手順でGoogleアカウントの設定画面を回避して、Wi-Fiなどの設定画面が呼び出せます。
% adb shell
$ am start -a android.intent.action.MAIN -n com.android.settings/.Settings
後は、画面に表示されたとおりにWirelessの設定などを行えばOK。

軽く使った感じでは、iPhoneよりもWindows Mobileに近く、日本のケータイにも近い感じがします。

日本語は入力できませんが、日本語表示は問題ありません。重量がやや重く、ソフトウェアキーボードが実装されていないため、片手で手軽に使う、というには、ちょっとキツイかも知れません。

Ubuntu 8.10 Desktopで固定IPアドレスを使う方法

Linuxのbuild環境が必要になりました。今まで、LinuxはRedHat系のディストリビューションしか使っていなかったので、今流行り(?)のUbuntuを入れてみることに。

大変簡単にインストールでき、しかも、起動後の見た目もなかなか分かりやすい。確かにこれならば、Desktopとして使おう、といった類の書籍が多数出版されるのも納得です。

さて、sshd を上げるために固定IPアドレスを設定します。折角なので、GUIを使って設定したのですが、なんどやっても、Rebootすると、元のDHCPに戻ってしまいます。面倒なので手動で設定をしようとしましたが、当然RedHat系とは勝手が違うので、/etc 下の構成が上手く把握できません。

これは困った、と探していたら「Ubuntu日本語フォーラム」でGUIを使って固定IPアドレスを設定する方法を見つけました。

曰く、
ポイントはネットワーク接続の切断時のその瞬間にしか「システム設定」が有効にならないという問題点の克服方法になります。
であり、
5、「自動的に接続する」のチェックをはずす←とても重要!
6、「システム設定」のチェックを入れる←とても重要!
とのこと。なるほど、ネットワークに繋がっている状態ではシステム設定を変更できないという点に気がつくかどうかがポイントのようです。

うーん、こ、これは、気がつかなかったなぁ... (^^;

プチ管理者的な視点で言えば、GUIが普及するのは全く構わないのですが、一方で、緊急時用に、手でいじれる設定ファイル群も、もう少し目に付きやすい場所にまとまっていてくれると、嬉しいなぁ、と思います。Ubuntu Serverを入れれば、この点はケアされているのかも知れませんね。

2008/12/29

Android Dev Phone 1 購入

わーい、Andorid Dev Phone1、到着。

結局物欲に勝てませんでした。いや、ほら、今、円高だし、cupcake branchも公開されたし...。はい、勿論ただの言い訳です。12/22にWebで申し込んで、12/29受け取りでしたので1週間での到着です。早いですね。

配送業者はUPSでした。


外箱は真っ白です。

横に Android Dev Phone 1 のラベルがあるだけ。

中もシンプル。

付属品はこんな感じ。microSDカードが予め本体に組み込まれています。中身は空でした。

キーボードを開いたところ。所謂 SmartPhone のイメージで、ケータイというよりもPDAですね。

背面。デコボコ模様がかかれていますが、HTC Touch Diamondのように、本当にデコボコしているわけではありません。

裏ぶた開けた所。左が裏ぶた。結構、作りがオモチャっぽい印象。

SIMを差さずに電源入れると、こうなります。

下の開いているところがUSBコネクタです。もともとSIMを差して使う気はありませんでしたので、ここまででまずは一段落という感じです。

2008/12/27

卑怯戦隊うろたんだー & SuperCell

卑怯戦隊うろたんだー。元もとは、ネタ歌だった筈なのに、CDまで発売されるとは素晴らしい!

ナレーションやら、戦隊モノの雰囲気が上手く表現されたインストやら、ついついニヤニヤしてしまいます。歌声はKAITO本人よりも、爽やかな感じで、より一層、歌のお兄さんっぽいです。あらゆる点で、卑怯さ満載でした (^^;。

また、現在の大御所SuperCellの1stアルバム「SuperCell」も、来年春にSonyMusicから発売とのこと。これは、結構注目を集めそうですね。

こういった良い流れが、(一時のブームや食い物にされるのではなく)長くゆっくりと、良い方向へ続くとよいなぁ。



広告
卑怯戦隊うろたんだー
卑怯戦隊うろたんだー...
風雅なおと, シンP...
Supercell<初回生産限定盤>

OS再インストール時の TimeMachine バックアップ

MacOS X上では、大文字、小文字を区別しない設定でHFS+ファイルシステムを使っていましたが、事情により、大文字小文字を区別する必要が出てきました。Bootファイルシステムは、その場で変換できないようで、OSの再インストールが必要みたいです。

こんな時に便利なのが、TimeMachine。MacOS X のインストーラでは、OSのインストールが終わった後、設定移行 Wizardが立ち上がり、既存の環境を引き継ぐことが可能です。そこでは TimeMachine データも指定することができ、これにより、ほぼ完全な姿で元の環境を復活させることができます。

私は、ReadyNAS NV+を使ってTimeMachineバックアップを行っていますから、簡単に以前の状況へ戻すことが可能です。便利。

と言いたいところなのですが、実はインストーラで指定可能なTimeMachineイメージは、USBなどで直接Macへ接続されているボリュームか、AirMacネットワーク上にあるイメージだけなのです。私は転送速度を確保するためにReadyNAS+ NVを有線ネットワークで接続しており、その為インストーラからはこのイメージを指定出来ませんでした。

幸い今回は、念のため、ということで、再インストール前に余っていた外部ディスクをUSBで接続し、TimeMachineフルバックアップを行っていたため、こちらから復元することが出来ましたが、もしこの準備を怠っていた場合には、ワイヤレスネットワークコンバータ(というかブリッジ)などをReadyNAS NV+へ接続し、インストーラから認識させる、などの手順が必要になったのかも知れません(それで認識するかどうかは分かりませんが)。GbE有線ネットワーク接続でも遅いTimeMachineへのアクセスを無線LAN経由で行うとなると、相当な待ち時間が必要になりそうですね...。

肝心の復元自体は、全く問題なく行われました。ただ「残り後1分以下」みたいな表示が出てから、相当時間待たされたのは何だったんでしょう (^^;。また、iTunesStore で買ったDRM付き楽曲を再生するには、再度コンピュータのアクティベーションが必要でした。

なお、TimeMachineのバックアップイメージ格納領域も、大文字小文字を意識しないように format してあったため、case-sensitive ディスクのバックアップ領域には使えませんでした。結局、過去のバックアップデータを全部破棄して、フルバックアップを行うはめに...。

しかし、今回のような経験をしてしまうと、TimeMachine用に安いUSBディスクを一台用意しておいた方が安全で便利なのだろうか、などと考えてしまいます。でも、そのバックアップディスク自体が冗長化されていないと、結局危険には変わりないし、悩ましいなぁ。

2008/12/24

今日のお酒: Delamotte Brut Blanc de Blancs Millésimé 1999 & Dashe Late Harvest Zinfandel 2006

Delamotte Brut Blanc de Blancs Millésimé 1999


というわけで、今日は、以前感動した Delamotteです。

やっぱり美味しい。昨日のドンペリに比べると、味に良い意味でのパンチがある気がする。一方で、自己主張が激しいとも言える。そういう点では、料理とか選ぶかなぁ。でも、どちらかと言えば、私にはは、ドンペリよりDelamotteの方が相性がよい感じです。

Dashe Late Harvest Zinfandel 2006。


ラベルが可愛い赤のデザートワイン。店のポップに「Sweet/Heavy」と書いてありましたが、まさにその通り。ポートワインなどに近い感じでした。ゆっくりと楽しむのによい感じです。

2008/12/23

今日のお酒: Dom Pérignon 1999 & Alzeyer Sybillenstein kabinett 2007

Dom Pérignon 1999。


クリスマスパーティということで。所謂ドンペリは、むかーし、スパークリングワインを今ほど飲んでいなかった頃、お祝いとして飲んだだけで、味なんかちっとも覚えていないので、非常に興味津々。

感想としては、大変飲みやすいなぁ、という印象。口当たりも後味もスッキリ爽やかで、食事を邪魔しません。なるほど、こうした点でウケが良く、人気が高いのかも。美味しかったです。

もう一本。

Alzeyer Sybillenstein kabinett 2007。


まさにドイツワイン、という感じ。日本では、相変わらずドイツワインの受けは悪いままですが、それでも、ぼちぼち取り扱い銘柄が増えてきた感じもあり、嬉しいです。

2008/12/21

Shure Music Phone Adapter + MDR-EX500SL

愛用していたSennheiser の MM50が壊れました。正確に言うと、無理矢理ポケットへ入れていたら、コネクタ部のケーブルが断線してしまいました...。雑に扱いすぎだー。

マイク/リモコンボタンが小さく、ケーブルも首かけタイプ、しかも密閉度も高いと、大変気に入っていただけに、少しショック。

幾つか大体となる候補を探してみたのですが、リモコン付きでカナル型、首かけタイプで値段が手ごろ、というのがなかなかありません。

とは言え、同じモノを買うのもなんなので、SHUREのMusic Phone Adapater(MPA-3C)を購入。適当なヘッドフォンを差して使うことにしました。

パッケージはこんな感じ。


完全密閉ブリスターパックで、非常に開けにくい (^^;

MM50と並べるとこんな感じ。


マイクのデカさとケーブルの太さが目立ちます。MPA-3C自体のケーブル長は、MM50と全く同じです。

適当なヘッドフォンを差してみました。


コネクタの大きさが分かります。

結局、ソニーのMDR-EX500SLと一緒に使うことにしました。


使った感想ですが、やはりMPA-3Cのマイク/リモコン部の大きさが気になります。一方で、胸元の操作はやりやすく、クリップが付いているため、ブラブラしないという利点はあります。

MDR-EX500SLは、MM50よりも密閉感が低い感じです。但し、ボーカルなどは聞きやすい感覚があります。まぁ、慣れの問題かも知れません。

今度は壊さないよう、大事に使おう...。

広告
SHURE iPhoneでの高品位なハンズフリー通話を可能にするマイク付き接続コード MPA-3C
SONY 密閉型インナーヘッドフォン EX500SL ブラック MDR-EX500SL/B

2008/12/10

今日のお酒: KRACHER CUVÉE AUSLESE 2005

KRACHER CUVÉE AUSLESE 2005。


Auslese ですが、甘さが想像よりも濃かったです。でも、この濃さが美味しい。ドイツ系ワインの好きな方に。

Android Dev Phone 1

SIMロックフリー Android 端末登場。ひぇー、ほ、欲しい!

$399は、はっきり言って格安だと思う。一方NetPCとかも買えちゃうよね、とかも思う。

例えば docomo のSIM差して、パケホでネットワーク接続実験できるのかなぁ。外に持ち出して使えないと、Simulatorで遊んでいるのと同じだしなぁ。うーん、悩ましい。

Google Japan、2009/1/1付けで社長交代

辻野執行役員製品企画本部長が来年から新社長に。おめでとう御座います。

Googleの日本向けサービスの展開へ尽力されてこられた辻野さんだけに、今後もより一層頑張って頂きたいと思います。

しかし、村上社長が体調を崩していたとは知らなかった...。

2008/12/09

トロサンタ


可愛いので、思わず激写 (^^;

2008/12/07

今日のお酒: PIAT D'OR VIN MOUSSEUX ROSÉ

PIAT D'OR VIN MOUSSEUX ROSÉ



ロゼのヴァンムスー。僅かな甘みとスッキリ感はいいけれど、飲んだ直後の苦みの強さが、少し気になるなぁ。

Googleは企業文化をどのように変化してゆくのか

WSJから「Googleも不況には勝てぬ -- 福利厚生削減、実験的プロジェクト縮小」という記事が出ています。

この景気状況の中、別段、人員削減それ自体は、特に驚くことではありません。興味を覚えたのは、営利企業として、業務内容の絞り込みへ舵を切ったことを認めていることです。例えばエリックシュミットCEOの言葉である、
「同社は「ダークマター」--「うまくいっていない、面白くない」プロジェクト--を減らすだろうと同氏は言う。
というのは大変興味深いです。

Google求人広告の歴史を見ていると、当初は所謂「エリート研究者」を求めていたものが、業務規模の拡大に応じて、徐々に「優秀なエンジニア」を求めるようになっています。今でもこの流れは変化していないようです。当然 Google は、それによってもたらされる利点/欠点を十分に考慮した上で、自社を支える企業文化を維持しながら、必要とされている規模拡大を実現できると判断し、この路線を選択したのだと思います。

恐らく今回の路線変更も、結果的には、この流れの延長線上にあるものではあるのですが、功罪はあるとは思うもののGoogleの企業文化を支えてきた一翼である「20%ルール」の根底に関わる点への言及と見直しは、より踏み込んだ施策だと言えるでしょう。

Googleの企業規模の拡大、新規フィールドでの競合他社との戦い、金融危機の大きさなど、様々な不確定要因がひしめく中、果たしてGoogleの企業文化がどの様に変化して行くのか、今まで以上に興味を覚えます。

2008/12/06

今日のお酒: DOURTHE SAUTERNES 2005

DOURTHE SAUTERNES 2005。


久々のソーテルヌ。ロックフォールと共に。この組み合わせは、やっぱりウマウマ。