memo

2012-07-25

CentOS に gentoo-prefix と nix と pkgsrc 入れてみた

CentOS のために .spec ファイルをいちいち書いてやるのが面倒くさくなってきたので、 標題のパッケージングシステムを突っ込んでみた。感想。

gentoo-prefix

http://www.gentoo.org/proj/en/gentoo-alt/prefix/

pros.

  • ebuild の書き方知ってる

cons.

  • 環境作るのが面倒

  • gentoo と比べて package が少なかったりバージョンが古かったりする

  • 上記の問題をどうにかしようとすると、よく分からない prefix 独自コマンドが出てきたりする

  • daemon の rc script がインストールされない

    (GSoC でやるとか見たような気がする)

nix

http://nixos.org/nix/

pros.

  • binary package があったりする

  • ちゃんと設定すればユーザーごとに環境が作れて、それぞれで好きに package を入れたり出来るらしい。

  • rollback とか出来るらしい

cons.

  • daemon の rc script がインストールされない

  • daemon の 設定ファイルの nix 的に正しい編集方法がわからない

    (普通に書き換えると、アップデート時にまたデフォルトのもので上書きされるような気がしている)

  • CentOS 5 だと sqlite のバージョンが古すぎて普通にはインストールできない

    (別環境で nix の中に nix を入れたものを用意し、持ってきた)

  • package が自分の知らない独自言語で書かれてる

pkgsrc

http://www.netbsd.org/docs/software/packages.html

pros.

  • daemon の rc script がインストールされる

cons.

  • linux 上でどの程度動くのか不明

  • パッケージによっては、かなり古いバージョンのものしかなかったりする

  • Makefile の書き方知らない

まとめ

どれも自分には一長一短だけど、 daemon が欲しい時は pkgsrc, application が欲しい時は nix, package ゴリゴリ書き換えたい時は gentoo-prefix ということになるかな。

今回は daemon が欲しかったので、 pkgsrc を採用することにした。