Jipotter

にぽたんさんが「最近の Twitter との付き合いかた」で紹介していたTwitterクライアントに触発されてtokuhiromさんがSledgeで書いてCodeReposで公開したNipotterに触発されてJiftyベースのTwitterクライアントをでっちあげました。チェックアウトはこちらから。

svn co http://svn.coderepos.org/share/lang/perl/Jipotter/trunk
内容的にはtokuhiromさんのNipotterをほとんどそのまま移植しただけなので、いまのところまだJiftyらしいアプリにはなっていませんし、にぽたんさんのに比べると機能的にもかなり見劣りしますが、JiftyにしろJifty::DBIにしろTemplate::Declareにしろ(パッケージのテストファイル以外に)オープンになっているコード例は少ないので、その辺に興味がある人には参考になるかも。

インストールは、Nipotterよりは簡単?で、上記をチェックアウトしたら、perl Makefile.PL → (n)make で依存ファイルをインストールするだけ(こういうものは make install しないのが吉)。ppmを駆使すればWindowsでも動きます。ActivePerl 5.8.7を使っている人はautoboxの都合でNet::Wassrのテストにこけますが、TODOを使わない分には問題なし。ちなみにNipotterの方は

12:00 <Y****> 使うまでがとても大変そうだw
12:00 <t*******> そんなことないお!
12:01 <t*******> cpan Bundle::Sledge
12:01 <t*******> cvs -d:pserver:anonymous@cvs.sourceforge.jp:/cvsroot/sledge login
12:01 <t*******> cvs -z3 -d:pserver:anonymous@cvs.sourceforge.jp:/cvsroot/sledge co Sledge
12:01 <t*******> cd Sledge/
12:01 <t*******> perl Makefile.PL; make test; make install
12:01 <t*******> するだけ!
12:01 <c****> だけw
12:01 <t*******> あと、Sledge::Pages::Base にパッチあてるだけ!
12:05 <t********> http://coderepos.org/share/browser/lang/perl/misc/sledge-before_output.diff
12:05 <t********> これこれ。

で動くとの由。

スクリプトの用意ができたら、まずは該当のディレクトリの下にある etc/site-config.yml.sampleを適当に直して etc/site_config.yml にリネーム。それから、

perl bin/jipotter schema --setup
perl bin/jipotter server

これでデータベースを作成してサーバが起動します(FastCGIを使いたいという方はJifty::Script::FastCGIあたりを適当に参照)。

発言の収集もリロードも、いまのところ自動ではないので、cronなりなんなりで

perl bin/jipotter aggregate

を定期的に実行して、適宜ブラウザをリロードしてください(この辺はそのうちなんとかするかも)。


なんというかいろんな意味でJなアプリですが、パッチその他ありましたらCodeReposの方へご自由に。



ちなみに、こんなものをつくったのは

11:56 <Y****> Nipotter ktkrって思ったらSledge!
11:56 <t*******> Sledge でなにがわるい!
11:57 <Y****> Soozy 版をかぶせるか
11:57 <t*******> Sledge だけど
11:57 <n********> 時代はJifty
11:57 <t*******> Catalyst 風にアレンジしてあるから、
11:58 <t*******> Jifty はねーよww

という話があったから。YAPCでもJesseが言っていましたが、ねーよと言われたらやりたくなるのがJifty関係者というものでありましょうから。