M.C.P.C. (Mamesibori Creation Plus Communication)

印刷屋から五反田のWeb屋に転職したCLのブログです。

Raspberry Piでnode.jsをndenvでインストールする

Raspberry Pi(Raspbian wheezy)でPerl 5.20.0+AnyEventを使ってTwitterからのイベントに反応してタイムライン変更でPOP音出したりMS100A(BerryClip)のLED光らせたりICQのアッオー音だしたり誰かがツイ消ししたら汚らしい音が鳴ったりAquesTalkPiでツイート読みあげさせたりするうざいマシン(無駄にWi-Fiルータ電源供給で携帯できる)を作っていたんですがPerl 5.20.0のインストールだけで2時間はかかるので、どうしようかなーと思っていたんですけれども、Perl+AnyEventでプログラムを記述するのであれば、プログラムの形式が大体同じ形になるnode.jsでもいいんじゃないかなーと思いました。node.js本体インストールはバイナリを展開するのでものすごく速いし。

ローカルインストーラとして有名なndenvでインストールすると、アーキテクチャ名(armv6l)とパッケージ名(arm-pi)の齟齬があってインストールできなかったのですが、今日からはインストールできるはず。さっきGitHubでPull Requestをマージしていただきました。

$ git clone https://github.com/riywo/ndenv.git ~/.ndenv
$ mkdir ~/.ndenv/plugins
$ git clone https://github.com/riywo/node-build.git ~/.ndenv/plugins/node-build
$ cat << 'EOT' >> ~/.bash_profile
export PATH=$PATH:$HOME/.ndenv/bin
eval "$(ndenv init -)"
EOT
$ source ~/.bash_profile

ここまででRaspberry Piの現在ログインしているユーザでndenvが使えるようになる(いろんな兼ね合いでrootユーザで実行することになりそう)

$ ndenv install v0.10.26
$ ndenv global v0.10.26

http://nodejs.org/dist/v0.10.26/node-v0.10.26-linux-arm-pi.tar.gz をダウンロードして設置、グローバルで使えるようになります。Raspberry Pi用ファイルは現時点ではv0.10.26までにしか最新版が無いので注意

インストールはしたがまだスクリプトは書いていないので動作確認は

$ node -v
v0.10.26

で勘弁です