WindowsでPlaggerを使う方法 2008年2月2日版

Plaggerは使えばいろいろ便利だが、使えるようにするまでがかなり大変だ。
今から使おうと思っても、古いドキュメントを読んで、その通りやっても出来ないのが、また難しいところ。
その原因は、PlaggerはPerlで動くし、いろいろなモジュールを使うので、それぞれのバージョン毎の互換性みたいなのがきちんととれていないのが原因のようだ。
Plaggerを始めようと考えている方は、その時の最新の情報を元に、なるべく新しいドキュメントを読みながら試行錯誤しながらやるしかない。

Windowsでインストールする際の基本的な流れ

  • ActivePerlをインストール
  • Plaggerを簡単にインストールできるように設定
  • Plaggerを設定
  • 動かす

という感じだが、これが大変。

まずは、http://www.activestate.com/で最新版のActivePerlをダウンロードせずに、古い物がダウンロードできるhttp://downloads.activestate.com/ActivePerl/Windows/5.8/
から、ActivePerl-5.8.8.817-MSWin32-x86-257965.msi あたりの古い版をダウンロードしてインストール。(ppmがCUIからGUIに変わってなんか違うので)

インストールできたらコマンドプロンプトから
perl -v
とかやってちゃんとインストールできているのか確認。
出来たら
ppmのRepositoriesの設定(PPMはPerl Package Moduleの略でPerlモジュールが簡単にインストールできるような仕組み。似たようなのにCPANもある)
コマンドプロンプトで
ppm

と入力すると ppm> が表示されるので
rep add tcool http://ppm.tcool.org/server/ppmserver.cgi?urn:PPMServer
とかやってRepositoriesを設定する。(モジュールをダウンロードするサイトの登録みたいなもの)
その後、tcoolを上に持ってくるため rep up 2 とかする。
そうすると tcoolが一番上に来る。
その後
install Plagger
とかやる
30分くらいかかるが、途中で何回かどうするか聞かれるので、適当にエンターキー押しておけばよろしい。
終わる。

assetsの設定

http://search.cpan.org/~miyagawa/Plagger-0.7.17/からPlagger-0.7.17.tar.gzを展開して、中にあるassetsフォルダを
C:\Perl\site\lib\Plaggerとかにコピーする。

WebにあるサンプルはBloglinesからGmailに送るというサンプルが多いが、RSSを読んでGmailに送るの方が敷居が低いだろう。
http://kazuhiro.ty.land.to/blog/2006/11/plaggerrssgmail_1.html
http://gba.pqrs.org/~tekezo/thunderbird/doc/plagger/index.html
http://diary.wilgorithm.jp/nagashima/20070524/234720/
とかを参照。

rss2gmail.yaml参考

ここから

global:
plugin_path:
- C:\Perl\site\lib\Plagger\Plugin
assets_path: C:\Perl\site\lib\Plagger\assets
timezone: Asia/Tokyo
log:
level: info
plugins:
- module: Subscription::Config
config:
feed:
- https://blog.kamikura.com/feed
- module: Publish::Gmail
config:
mailto: ここに送り先のメールアドレスを書く
mailfrom: ここは送信元
mailroute:
via: smtp_tls
host: smtp.gmail.com:587
username: Gmailのユーザー名
password: Gmailのパスワード

ここまで

実際に実行するとGmailに送ったりするとエラーが出る
http://framedrive.net/post/10411324
http://d.hatena.ne.jp/kokotaro/20070913/1189699362
http://rack990.sakura.ne.jp/plugin/tag/plagger
http://d.hatena.ne.jp/ksef-3go/20070913/1189786736

C:\Perl\site\lib\MIME
にあるMIME::Liteのバージョンが3.01から上がったのが原因。2月2日現在3.021。

3.01に差し替えるとエラー。
http://search.cpan.org/src/YVES/MIME-Lite-3.01/lib/MIME/

C:\Perl\site\lib\Plagger\Plugin\Publish\Gmail.pmのextract_addrsをextract_full_addrsに書き替えてもエラー。

エラーの内容は
序数 2586 がダイナミック ライブラリ LIBEAY32.dllからみつかりませんでした。
http://clouder.jp/yoshiki/mt/archives/000708.html
http://d.hatena.ne.jp/ayko/20061127

解決するにはOpenSSLをインストールする
http://www.slproweb.com/products/Win32OpenSSL.html

WindowsのSystemあたりに入れるDLLをいくつか上書きする。

Gmailとかへ送信できるようになる。

http://plagger.org/trac

http://wg.at.webry.info/200604/article_4.html
http://d.hatena.ne.jp/charsbar/20061001/1159688233