MacPorts から homebrew に移行
僕は実は Mac OS X も使っている。U の仕事用の Mac の管理のため、ということなのだけど、いくら Mac OS X が UNIX だといっても、そのままではちょっと CUI で管理を行う上で不便なことも多いので、いわゆるデベロッパーズキットみたいなものを入れているわけだ。
Mac OS X を UNIX として使用する場合は、まず Xcode と XQuartz を入れることになる。これまでは、これに加えて MacPorts でいくつかのパッケージを入れて使用していたわけだが、MacPorts の場合は、基本的に Mac OS X 付属のユーティリティとは独立に各ユーティリティを入れるので、たとえば Perl や Ruby は2重化されることになる。これはこれでまあ怪しげなところがなくっていいのだけど、丁度 Windows における Cygwin のような感じで、母体になる OS の上で浮いた存在になっているとも言える。Cygwin の場合はまあそれでいいのだろうけれど、UNIX のユーティリティの中に更に UNIX のユーティリティが浮いている、というのは、どうも落ち着きがよろしくない。
そんなことを感じつつも MacPorts を使っていたのだが、最近になってhomebrewなる存在を知った。これは先に書いた大物ユーティリティの重複が生じないような構成になっているらしい。まあ、U の Mac はディスクが巨大なので、ちょっとやそっとの重複などヘでもないのだが、折角なので、この機会に homebrew に移行しておくことにする。
まずは、MacPorts の解説 "2.5. Uninstall (Chapter 2. Installing MacPorts)"を見ながら MacPorts を削除する。この際に特に注意しなければならないのは、MacPorts で導入した shell を login shell にしていた場合は、事前に /bin/bash などに chsh しておかないとエラいことになる、ということ(具体的には login できなくなる……まあ当然だけど)。Mac OS X が Ubuntu などと同様に su できない仕様になっているとはいえ、こういう事態を招いたときのために、コンサバティブな管理方針の管理用アカウントをひとつ用意しておくと安全なのだろう。
削除が終わったら、homebrew のインストールガイドに従って:
ruby -e "$(curl -fsSLk https://gist.github.com/raw/323731/install_homebrew.rb)"と入力し、brew と周辺キットのインストールを行う。このように、homebrew では Ruby を用いたキットで管理が行われているらしい。あとは、
brew install packageで package の導入が行われる。詳細は man brew を参照されたい。ちなみに、
brew updateでアップデートをかけられるけれど、これには git が必要なので、予め導入しておく必要がある。