いまさらだけれど Remedie を使ってみよう
Shibuya.pm で id:miyagawa さんが発表された、Remedie を今更ながらにインストールしてみることにしました。
本体を入手しよう。
Google Code にて開発が進められているようなので、そっからチェックアウトしてきました。
$ svn co http://remedie.googlecode.com/svn/trunk ./remedie
おわり。
ちなみに、チェックアウトされたのは以下のリビジョン。
$ svn info パス: . URL: http://remedie.googlecode.com/svn/trunk リポジトリのルート: http://remedie.googlecode.com/svn リポジトリ UUID: 820bdc58-a644-11dd-81d7-27b247425303 リビジョン: 471 ノード種別: ディレクトリ 準備中の処理: 特になし 最終変更者: hanekomu 最終変更リビジョン: 471 最終変更日時: 2008-12-11 10:42:33 +0900 (木, 11 12月 2008)
make の準備をしよう
Shibuy.pm で「Makefile とか全部嘘なんで」って言っていたきもするけど。。。
$ cd ./remedie $ perl Makefile.PL
この Makefile.PL を実行すると、最後に必要だけれども見つからなかったモジュールが Warning として出力されるので、そのモジュールを cpan からインストール。
ただし、注意点(?)が2点。
- Makefile.PL 11行目
requires 'DateTIme::Format::Strptime';
これは "TIme" と "I" が大文字になっているため、どー頑張ってもインストールできません。
なので、Makefile.PL を修正しました。
- make install しちゃだめ
Makefile.PL を実行すると、最後にこんなメッセージが
WARNING WARNING WARNING WARNING WARNING WARNING You seem to have Plagger 0.7.17 in your system. Running 'make install' will overwrite forked Plagger modules and that will break your existent Plagger installation. I recommend you not doing that. DO NOT RUN 'make install' You have been warned. WARNING WARNING WARNING WARNING WARNING WARNING
というわけで、make install しないようにしましょう。
あ、ついでに Plagger とか Moxy も make install は想定してないそうですよ!
make するよ
Makefile が生成されたら、make しちゃいます。
$ make $ make test
make test まで無事終了すれば(ってゆーか test いらなそうだよね) 実行可能な状態に!
以降は チェックアウトされた中に含まれる HACKING を読めば、だいたいわかります。
DB の初期化
Remedie は SQLite を利用しているため、DB を初期化します。
$ rm -r ~/.remedie # 初めて実行する場合は不要。以降 DB を初期化したいときなどに利用 $ perl -Ilib -MRemedie::DB::Schema -e 'Remedie::DB::Schema->install' # DB 初期化
さてさて、あとは実行するだけだね!
じっこう!してみたけれど?
$ perl -Ilib ./bin/remedie-server.pl HTTP::Server::Simple: You can connect to your server at http://localhost:10010/
起動したら、ブラウザで表示すると Remedie の画面が表示されました。わーい。
では、さっそくチャンネルを add するぞー。
と、ためしに YouTube の RSS なんかを引っ張ってきたんだけれど。。。
closing dbh with active statement handles at /usr/local/share/perl/5.10.0/Rose/DB.pm line 842.
とか表示されて、チャンネルが追加できない!!!
こまった。。。
解決法
調べてみると、id:tokuhirom さんのところで
DBD::SQLite で closing dbh with active statement handles になる件のまとめとその解決方法について
という記事を発見。
早速やってみることに。
DBD::SQLite::Amalgamation をいれる
どうやら、DBD::SQLite の既知の不具合で、そこから fork させたものがCodeRepos にアップロードされていたので、これを利用させていただくことに。
$ svn co http://svn.coderepos.org/share/lang/perl/DBD-YASQLite/trunk/ ./DBD-YASQLite $ perl Makefile.PL $ make $ make test
make install していいか悩んだけれど、普通に DBD::SQLite を使っていても、結構起こりうる事象っぽいので迷わずにインストールすることにしました。
$ make install
とりあえず、もっかい DB 再構成しとく
必要か分からないけれど、ちょっと気持ち悪かったので。
$ rm -r ~/.remedie $ perl -Ilib -MRemedie::DB::Schema -e 'Remedie::DB::Schema->install' $ perl -Ilib ./bin/remedie-server.pl
こんどこそ
というわけで、もう一度 Remedie を起動して、ブラウザで表示してみると
見事にチャンネルも追加できるようになり、無事に Remedie ライフが始まりました。
miyagawa++、tokuhirom++ ですね。