Macのパッケージ管理ツールhomebrewを試してみた

homebrewとは?

パッケージ管理ツールです.主にUnix向けのアプリケーションのインストール・依存関係の解決などを行ってくれます.
http://mxcl.github.com/homebrew/

似たようなツールとしてMacportsfinkがあります.僕はMacportsを使っていましたが,ports installにかかる長さに辟易していました.なにげにパッケージも古かったりするし.(ocaml+omakeのインストールでハマった記事が前回のエントリーですね)
軽い気持ちでgnucashのインストールを試みたら,数時間かかっても終わらず結局諦めた,なんてことも.

Macportsは,依存関係があるアプリケーションのソースコードをすべてダウンロード&再コンパイルしてくれるので,非常に重かったんですね.homebrewはインストール済みのプログラムはそのままにするので,手早くインストールされます.とても嬉しい.

一通り使ってみる

インストールは
https://github.com/mxcl/homebrew/wiki/installation
にあるとおり,

ruby -e "$(curl -fsSL https://gist.github.com/raw/323731/install_homebrew.rb)"

でインストール完了.
ついでにocamlをインストールしてみます.

brew install ocaml

でインストール完了.
入ったocamlはこんな感じ.

% ocaml -version
The Objective Caml toplevel, version 3.12.0
% which ocaml
/usr/local/bin/ocaml
% ls -la /usr/local/bin/ocaml
lrwxr-xr-x 1 hoge staff 41 11 6 23:15 /usr/local/bin/ocaml -> ../Cellar/objective-caml/3.12.0/bin/ocaml
%

実際は/usr/local/Cellarに格納して,シンボリックリンクを張ってくれるんですね.なるなる.

応用編

このhomebrew,ほかにもかゆいところに手が届く,よい機能があります.
パッケージのコンパイルオプションなどをカスタマイズしたいとき,ローカルのレシピをすぐに書き換えて,対応できるのです.例えばmsgpackコンパイルオプションを変えてインストールしたいとき,
>>
%brew edit msgpack