CentOSとcpanmでパッケージインストールを楽する話

はてなでは、サーバーがCentOSで統一されているけれど、個人の開発環境は各々に任されています。なので、新しくマシンを買ったときなどは 開発環境の構築に一日が費やされ・・・なんということはよくある話。

最近の日記にも書いていますが、Snow Leopard 移行が結構面倒で今日やっと製品のコードが手元のマシンで動くようになりました。(一応書いておくとメインの開発機ではありません)

主に cpan パッケージのインストールが面倒で、動かしてみてはrequire でコケたものをインストールするという通称CPAN祭りなる単純作業が非常に苦痛でした。

そこで、まあ簡単な話なのですが、server に入っている cpan のパッケージをリストアップして、インストールすればいいじゃんと言う事で簡単なスクリプトを書きました。

CentOS のマシンで、

rpm -qa | grep perl > packs.txt

して、出力をこんどは自分のマシンにもってきて

cpan-notinstalled.pl packs.txt > modules.txt
cat modules.txt > cpanm --skip-installed

という感じで使うと、あっという間にサーバーとほぼ同じ環境になります。
パッケージのバージョンも見てないし、パッケージ名もまちがうしかなり適当です。

というか cpan モジュールを yum で管理してるはてなぐらいにしか用のないスクリプトですね。

なにが言いたかったのかというと、cpanm最高という話でした。