Plaggerインストールまつり (前半戦)
最近この界隈で「それPla」という言葉が流行っていたりして個人的に気になっていたPlaggerだが、こことかこことかこことかを見て面白そうだと思ったので、インストールに挑戦してみた。
Plaggerについては、その依存モジュールの多さからインストールが大変だという噂は以前から聞いていて、最近は割と簡単にインストールできるようになったらしいけど、これだとRPMのパッケージ管理からは外れてしまうので、無謀にも一個一個RPMパッケージを作ってインストールする事にした。
まず、前準備としてこれも最近知ったCPAN::Miniで全モジュールをダウンロードしておく。こうしておくと、後でモジュールの圧縮ファイルを一々ダウンロードしなくて済むのでとても便利。
CPANで配布されている圧縮ファイルは、cpanfluteというコマンドで機械的にソースRPMパッケージに変換する事ができる(この時点ではあくまで仮のもの)。このソースRPMを展開してspecファイルを修正して再コンパイルすればRPMパッケージのできあがり。なお、CPANモジュールをインストールすると、m コマンドでダウンロードしたファイルのパスが分かる。
ここまでは何も問題が起きなかったケースで、大抵さらに別のモジュールに依存していたりするので、その場合はそっちを先に作ってインストールする。あとはこの繰り返し。
今回インストールしたモジュールは以下の通り(45個)。
- Spiffy
- YAML::Syck
- Module::ScanDeps
- version
- Module::CoreList
- ExtUtils::ParseXS
- Module::Install
- Test::Base
- YAML
- Class::Accessor
- Number::Compare
- Text::Glob
- File::Find::Rule
- Text::Tags
- DateTime::Format::Mail
- DateTime::Format::Strptime
- UNIVERSAL::require
- Module::Pluggable::Fast
- HTML::ResolveLink
- Digest::HMAC
- Net::IP
- Net::DNS
- Term::Encoding
- Class::ErrorHandler
- MIME::Types
- XML::LibXML::XPathContext
- XML::RSS::LibXML
- IPC::ShareLite
- Cache::Cache
- File::NFSLock
- Heap
- Cache
- URI::Fetch
- Feed::Find
- Class::Data::Inheritable
- LWP::Authen::Wsse
- XML::Atom
- XML::Feed
- Pod::POM
- Text::Reform
- Text::Autoformat
- Template::Toolkit
- Template::Provider::Encoding
- HTML::Parser
- DateTime
以下はPlaggerとは直接関係ないけど関連してインストールしたモジュール(Bundle::CPAN関係とか):
ちなみにこれからインストールする必要のあるモジュール:
- Audio::Beep
- Cache::FastMmap
- Config::INI::Simple
- DBIx::Class::Schema
- Data::Serializer
- DateTime::Format::Epoch
- Email::Address
- Encode
- Encode::Detect
- File::Copy::Recursive
- Flickr::API
- HTML::RSSAutodiscovery
- HTML::Scrubber
- HTML::TreeBuilder::XPath
- HTTP::Cookies::Mozilla
- Hatena::Keyword
- IPC::Run
- Image::Info
- KinoSearch
- Lingua::ZH::HanDetect
- Mail::IMAPClient
- Mail::SpamAssassin
- Net::Delicious
- Net::MovableType
- Net::NetSend
- PDF::FromHTML
- POE
- POE::Component::Client::DNS
- POE::Component::Client::HTTP
- POE::Component::IKC::Client
- POE::Component::IRC
- Palm::PalmDoc
- Regexp::Common::profanity_us
- SWF::Builder
- Search::Estraier
- Spreadsheet::WriteExcel
- Template::Plugin::JavaScript
- Test::Pod
- Test::Pod::Coverage
- Text::CSV_PP
- Text::Emoticon
- Text::Hatena
- Text::Language::Guess
- Text::Markdown
- Text::WrapI18N
- Time::Duration::Parse
- URI::Find
- WWW::Babelfish
- WWW::Mechanize
- WWW::Mixi
- WebService::Bloglines
- XML::Liberal
- XML::RSS::Liberal
- Xango
うは、まだ54個も残ってるよ。この先さらに依存関係が増えることを考えると、半分どころかまだ全然終わってないじゃん。
参考リンク
- Elementary, ... Googleで「はらへった」と検索するとピザが届くようにするまで
- import otsune from Hatena - はてなブックマークの「お気に入り」から重複を取り除いて、RSSフィードにする方法
- plagger - otsune FreeStyleWiki
- しげふみメモ:Windowsで簡単にPlaggerをインストールする方法
- CPAN::Mini で CPAN のミラーをローカルに: blog.bulknews.net
- CPAN - CPANサイトからのperlモジュールの問い合わせ、ダウンロード、構築を行う
- Perl モジュールからの RPM 作成方法