Plagger と PlaggerLDR をインストールした際のメモ。
Plagger かわいいよ Plagger。便利につかっています。主にインストールまわりのメモ(for とある誰か)。
僕は FreeBSD ユーザでして,otsune さんの記事 を参考に,なるべく ports ベースでインストールしました(開発用のクライアントではそんな面倒くさいことしてられないけど)。ただ,いくつか差分があって:
WITH_PERL=yes
つきで devel/subversion を作り直しcpan -i JSON::Syck
cpan -i
で作れなかったので tarball を手で落として make
くらいでしょうか(昔にやったのであまり覚えてない)。
追記。いまや上記のインストールは portinstall textproc/p5-Plagger のみでよいはずです。便利な世の中になったものです。
次。エントリは Livedoor Reader で読みたかったので PlaggerLDR をいれます。これは feature-server ブランチ にあります。あとで混乱しそうなので,trunk とは混ぜないことにしました。
cd ~plagger
svn co http://svn.bulknews.net/repos/plagger/trunk/plagger trunk
svn co http://svn.bulknews.net/repos/plagger/branches/feature-server/plagger feature-server
config.yaml に適当に追加。
- module: Store::DBIC
config:
schema_class: Plagger::Schema::SQLite
connect_info: [ 'dbi:SQLite:/home/plagger/plagger.db' ]
- module: Filter::HTMLScrubber
config:
default:
- 1
-
'*': 1
deny: [ 'script', 'iframe' ]
LDR 上で突然真っ白な画面にぶっ飛ぶのを避けるために
混入した script 等が実行されるのを避けるために
Filter::HTMLScrubber をかませます。ただ,default: 1
だけだと a/@href なども削られてしまったので,手抜きで属性全許可(よろしくない)。
データベース作成。
sqlite3 plagger.db < feature-server/assets/plugins/Store-DBIC/plagger.sqlite.sql
関連モジュールのインストール。
portinstall www/p5-Catalyst
cpan -i Catalyst::View::JSON
cpan -i HTML::Scrubber
多分ただの p5-Catalyst だけでいいはず。僕は p5-Task-Catalyst を(前もって)いれてました。
Catalyst のルートディレクトリをつくって設定ファイルへのリンクをはります。
mkdir feature-server/root
ln -s ../../config.yaml feature-server/root/
メインでぶん回すのは trunk のほうなので,いくつかのプラグインが見えるように。
ln -s ../feature-server/lib/Plagger/Plugin/Filter/HTMLScrubber.pm plugins/
ln -s ../feature-server/lib/Plagger/Plugin/Store/DBIC.pm plugins/
ln -s ../../../feature-server/lib/Plagger/Schema trunk/lib/Plagger/
あとは普通に動くんじゃないかな。
feature-server/bin/plaggerldr_server.pl --port=37564 > /dev/null 2>&1 &
新しく port を開けたくなかったので,Apache:80 の適当なひみつ URL で読めるようにして:
ProxyRequests off
ProxyPass /path/to/ldr/ http://127.0.0.1:37564/
Firefox に hackldrapi.user.js GM スクリプトをインストールし LDR を開きます。謎の vi コマンド :plagger add pldr http://example.jp/path/to/ldr/
を発行して API サーバを登録したあと,:use pldr
で切り替え。
いやあ快適快適。もろもろの内輪ページのフィードとか認証付きフィードとか突っ込みまくりです。