CPAN::PackagerでのRPM作成とインストール
HTTP::Engine, HTTP::Router, Mouseなど、angelosで必要となるモジュールが自動でrpm化できるようになったので、0.01をリリースしました。まだ、依存関係を修正するconfigの設定をほとんどしていないので、色々とインストールできないモジュールなどもあるかもしれませんが、そこらは少しずつ追加していこうかなと思ってます。
CPAN::Packagerのsetup
事前の処理
rpmbuild で Requires の処理してる部分はコメントアウト。use, requireしているファイルを自動でrpmbuildがrequiresに加えてしまうため。
以下のファイルの224, 225行目をコメントアウト
/usr/lib/rpm/perl.req
#$require{$module}=$version; #$line{$module}=$_;
See also:
http://trac.mizzy.org/public/wiki/HowToRpmizeCpanModules
CPAN::Packagerのインストール
cpan CPAN::Packager
RPMの作成
sudo bin/cpan-packager --module Mouse --builder RPM --conf conf/config.yaml
configはhttp://github.com/dann/cpan-packager/tree/master からとってください。割と頻繁にupdateかけることになると思います。
yumレポジトリ構築
local repoの作成
sudo mkdir -p /share/CentOS/5/local/i386/RPMS
cp /tmp/cpanpackager/rpm/*.rpm /share/CentOS/5/local/i386/RPMS
sudo createrepo -v /share/CentOS/5/local/i386/RPMS
local repoの設定
sudo vim /etc/yum.repos.d/centos-local.repo
以下の内容を。
[local] name=CentOS local $releasever - $basearch baseurl=file:///share/CentOS/5/local/i386/RPMS/ enabled=1 gpgcheck=0
yumレポジトリからのインストール
sudo yum -y install perl-Mouse
Advanced
今後のTODO
- configの更新
- ここが今後の課題ですね。自動でビルドするには、configを地道にupdateしていくしかないかなと。
- Debパッケージの作成方法のまとめ