10/03/2011追記 WebDoctorのURLとファイル名がPrePlus用になってたのを修正しました。とも様感謝m(_ _)m

WebOSデバイスのアクティベーションはちと面倒です。Pixi Plusを普通に起動して進めていくといきなりVerizonに電話かけます。まぁ当たり前ですが...日本ではかけてもつながりませんので、アクティベーションを回避する必要があります。

ということで、Pixi Plus(Verizon)のアクティベーション回避をやってみました。ただし環境はGentoo 64bit(笑) まぁほとんど他のLinuxと変わりませんので。

大まかな手順としては

  1. novacomのインストール
  2. MetaDoctorのビルド
  3. ROM焼き実行
  4. Palm Profileの登録

こんな感じでしょうか。ではやってみます。

[免責事項]

ここに示す手順は最悪の場合お手元の端末を(軽すぎて)文鎮にもならないただの精巧なモックアップにしてしまう可能性があります。これを読んで何をやってるかよく分からない場合は実行するのは止めておきましょう。この手順を実行して発生するいかなる損害も当方は責任を取りません。あしからず。

用意するもの。たぶんこんくらい。

  • Gentoo Linuxの入ったPC(推奨はたぶんUbuntu)
  • 普通の開発環境(makeとか、patchとかね)が入っていること(Gentooなら何も考えなくてよい。わーい)
  • 64bit環境の場合は32bitライブラリも入れておくこと(たぶん)
  • gitが使えるようにしておくこと
  • javaが使えるようにしておくこと
  • laymanでoverlayを使えるようにしておくこと
  • WiFi環境があること

1. novacomのインストール

Gentooではlaymanのsunriseというオーバーレイでnovacomをインストールできます。ちょっと古くてWebOS SDK1.4.1(2?)ものみたいです。手元の端末は1.4.0で、1.4.5にあげてからも一度使いましたが普通に使えていたのでたぶん大丈夫かと。

laymanに登録してインストール。簡単。

#layman -a sunrise
#emerge --regen
#eix-update (eix使っていれば)
#emerge -av palm-novacom

インストールが終わったら、novacomを起動します。

#/etc/init.d/novacom start

(おまけ)最新のnovacomは以下からゲットできるようです。ていうかぶっちゃけUbuntuでやればいいと思うんだ。

the HP webOS SDK on Ubuntu

https://developer.palm.com/index.php?option=com_content&view=article&id=1585

こいつを入れてもいいと思います。最新版のebuildは更新してくれないなら自分で書いてもいいかな...novacomはこの作業以外にも使うので。

ちなみに上のリンクでvirtualboxを入れさせるのはたぶんWebOS Emulatorのためなんじゃないかと思います。今回の作業では不要です。ちなみにMeeGo SDKはではqemuですね。あ、聞いてない?

忘れないようにファイル直リンクメモ。

palm-novacom 1.0.56 for Ubuntu (32bit)

https://cdn.downloads.palm.com/sdkdownloads/1.4.5.465/sdkBinaries/palm-novacom_1.0.56_i386.deb

palm-novacom 1.0.56 for Ubuntu(64bit)

https://cdn.downloads.palm.com/sdkdownloads/1.4.5.465/sdkBinaries/palm-novacom_1.0.56_amd64.deb

WebOS SDK 1.4.5

https://cdn.downloads.palm.com/sdkdownloads/1.4.5.465/sdkBinaries/palm-sdk_1.4.5-svn307799-sdk1457-pho465_i386.deb

2. MetaDoctorのビルド

MetaDoctorってのはWebOSデバイスのメンテナンスツール?WebOS Doctorにパッチを当ててごにょごにょしてくれるものみたいです。

基本的にここの手順を追っています。

webos-internal.org - Application:MetaDoctor

https://www.webos-internals.org/wiki/Application:MetaDoctor

まずはMetaDoctorのソースをgitで取ってきます。

#git clone git://git.webos-internals.org/tools/meta-doctor.git

meta-doctorディレクトリに移動して、downloadsディレクトリを作成します。

#cd meta-doctor
#mkdir downloads

次にWebOS Doctorをダウンロードします。キャリアおよびバージョンによってURLが違いますが、以下のページにまとめられています。

webos-internal.org - WebOS Doctor Versions

https://www.webos-internals.org/wiki/Webos_Doctor_Versions

今回はPixi Plus/Verizon/WebOS 1.4.5なので、以下のようにダウンロードします。

#cd downloads
#wget https://palm.cdnetworks.net/rom/pixiplus/px145r0d08302010/ver1z0np145rod/webosdoctorp121ewwverizonwireless.jar

さてこれで"webosdoctorp121ewwverizonwireless.jar"というファイルがダウンロードできました。MetaDoctorはビルド時にWebOSのバージョンを判別する必要があるらしい?ので、このファイルをリネームします。バージョン番号をつけるだけですね。

#mv webosdoctorp121ewwverizonwireless.jar webosdoctorp121ewwverizonwireless-1.4.5.jar

ここまで準備ができたら、meta-doctorディレクトリにあるMakefileをちょっといじります。この情報はこちらのサイトで教えていただきました。

forzando on the net - Palm Pre のアクティベーション

https://f.orzando.net/pukiwiki-plus/index.php?PalmPre%2FActivation

150行めくらいから何やらパラメータを指定する場所があります。

# Uncomment the features that you wish to enable below:
#BYPASS_ACTIVATION     = 1
#BYPASS_FIRST_USE_APP  = 1
#ENABLE_DEVELOPER_MODE = 1
#AUTO_INSTALL_PREWARE  = 1
#ENABLE_TESTING_FEEDS  = 1
#INSTALL_SSH_AUTH_KEYS = 1
#INSTALL_WIFI_PROFILES = 1
#DISABLE_UPLOAD_DAEMON = 1
#DISABLE_UPDATE_DAEMON = 1
#DISABLE_MODEM_UPDATE  = 1
#ENABLE_USB_NETWORKING = 1
#REMOVE_MODEL_CHECK    = 1
#REMOVE_CARRIER_CHECK  = 1
#CHANGE_KEYBOARD_TYPE  = z
#ADD_EXTRA_CARRIERS    = 1
#INCREASE_VAR_SPACE    = 1
#ADD_EXT3FS_PARTITION  = 2GB

少なくとも以下の3つのパラメータのコメントを外す必要があるようです。もしかしたらこの後実行するmake時に直接指定してもいいのかもしれませんが未確認です。

BYPASS_ACTIVATION     = 1
BYPASS_FIRST_USE_APP  = 1
ENABLE_DEVELOPER_MODE = 1

ついでに、デバイスとキャリアを指定する場所がすぐ下にあったので変更しておきました。たぶんいらないんじゃないかなぁと思いますが。

DEVICE = pixiplus
CARRIER = verizonwireless

ここまでできたら、makeします。DEVICEはここでも指定してるから大丈夫ですねきっと。

#make DEVICE=pixiplus all-verizonwireless

ちょっと10分弱時間かかると思いますが、終わるまでお茶でも飲んでてください。

ビルドが終わると、build/pixiplus-p121eww-verizonwireless-1.4.5の下に色々あって、"webosdoctorp121ewwverizonwireless-1.4.5.jar"が存在していると思います。

ちょっと長くなって来たのでROM焼き以降は次回のエントリで。