2012 mikutterアドベントカレンダー 16日め「Androidでもておくれたい!」

この記事はmikutterアドベントカレンダー( http://atnd.org/events/33911 )の16日目の記事として書かれました。

前の日はkudzu_naokiさん( http://d.hatena.ne.jp/kudzu_naoki/20121215/1355501867 )
次の日は@iorivur (http://twitter.com/iorivur) さんです。


ナイスておくれ!(挨拶)。ということでmikutter アドベントカレンダー16日目。表題のとおり「Androidでもておくれたい!」

  • そもそものきっかけ

としぁさんのこんなついーとが元々のきっかけでした。

"スマートフォンでmikutter使いたいとか言ってるやつは大丈夫。一般人だ。スマートフォンでmikutterを使ってるやつは万が一見つけたらすぐに逃げろ。"
https://twitter.com/toshi_a/status/207478242230276099


ということで、スマートフォンでmikutterを使ってとしぁさんをビビらせたい!それには何が必要か?と言う事で、一番楽そうな方法を検討した結果、「Android上でUbuntuを動かしてその上でmikutterを走らせ、そこにVNC接続する」という方法に落ち着きました。

  • 必要なものと操作
  1. root権限を自由に行使できるAndroid端末
  2. 壊れてもいい気分で使えるSDカード
  3. 無線LANでのローカルIPアドレス
    • イメージのダウンロード

Linux on Androidのサイト( http://sourceforge.net/projects/linuxonandroid/files/Ubuntu/12.04/full/ ) からダウンロードして展開し、(後の手間を省くために)SDカードの直下に展開したフォルダをコピーする。

    • 起動用アプリのインストール

Complete Linux installer ( https://play.google.com/store/apps/details?id=com.zpwebsites.linuxonandroid&hl=ja ) をインストールし、Install GuideでUbuntu 12 Install Guideを進める。イメージは上でコピーしているので、VNC ViewerとTerminal Appを導入するのみで終了する。

    • 起動用設定を追加&起動

上のComplete Linux Installerの右下「Launch」メニューを選び、Androidの設定ボタンからAddを選び、設定のラベルとコピーしたAndroidのファイルパスを入力する。この際、SDカードのパスはAndroidの端末ごとにバラバラで非常にわかりづらいので、ファイルマネージャ等で確認して入力する事をお勧めする。

追加が終了したら、上から設定したラベルを選択して「Start Linux」を選択する。

    • 起動時の確認と設定。

起動すると、パスワードとSSH/VNCの起動確認、VNCの画面解像度を問われるので入力していく。SSH/VNCともに友好にする。それが終わったら、Ubuntuのrootプロンプトに落ちる。

ここで、起動時にパスワードを聞かれて設定するのだが、そのパスワードを利用してSSH接続しようとしても失敗する異があるので、一度プロンプトからrootパスワードを変更する。そして、SSH接続のためにifconfigでIPアドレスを確認する。

    • mikutterの起動

ここからの作業は、別端末からSSH越しに実行する事を推奨する。基本的に一般のUbuntu 12.04と等しいので、

apt-get install subversion
svn co svn://mikutter.hachune.net/mikutter/trunk

で最新版を取得し、READMEにしたがって

apt-get install ruby1.9.1 ruby-gnome2 libnotify-bin

で環境を作る。後はAndroid端末からローカルにVNC接続をし、(実は設定諸々の作業より一番頑張る必要がある作業であるが)頑張ってターミナルを開き、mikutterを起動する。PCからVNCでmikutterを起動しておいて、Android端末でもその画面に接続すると楽である。

ruby1.9.1 mikutter.rb


以下がHTC Desire HD上で実際に動作している画像。
http://twitter.yfrog.com/odlmyeij

  • 終わりに

実はGentooを同じようにchrootした環境にセットアップするという方法もある( http://www.tabletroms.com/forums/adam-rom-development/2282-gentoo-chroot-step-step-instructions.html )様なので、ておくれな諸兄は試してみてはいかがだろうか。れっつておくれ!