DarwinPortsを使うようにした

なんだかみんなmongrelって言ってるようなので早速マネしてみる事に。

gem install mongrel --include-dependencies

で、バージョンは最新で0.3.13をインストール!って、あれ?mongrelrubyのバージョンが1.8.2じゃだめなのか。
そういえば自分のMacrubyの環境セットアップした記憶が全然ない。ついでにアップデートした記憶も。ruby本体は元から入ってたのを使ってたとして、gemsとかも元々入ってたんだっけ?こりゃいかんですな。ちゃんとそこらへんコントロールできるようにしておかなきゃ。

DarwinPortsを使ってみよー

ということで、なんかrubyとかgemとか/usr/binに入ってるけど、UNIX系の文化で育ってないせいかさっとアップデートする方法がわかんない。前から話では聞いてたDarwinPortsを使えばいい具合に管理出来る気がしてDarwinPortsをインストールしてみることにしました。公式ページのhttp://darwinports.opendarwin.org/docs/ch01s03.htmlが結構分かりやすくてその通りにインストールして、PATHも通したらすぐportコマンドを使えるようになりました。

rubyをインストール(アップデート)してみよー

んで、

port install ruby 

これで1.8.4が入ってめでたしめでたし。と、思ったら/usr/binのrubyが邪魔して

ruby -v
ruby 1.8.2 (2004-12-25) [universal-darwin8.0]

って1.8.2になってしまう!くぅ。でも、よく参考にさせて頂いてるnaoya_tさんの記事のマネをして

sudo rm /usr/bin/ruby

で解決。DarwinPortsインストールしたときにPATH通ってる方をみてくれて

ruby -v
ruby 1.8.4 (2005-12-24) [i686-darwin8.6.1]

となってめでたしめでたし。

gemsをインストールしてみよー

gemsも同じようにインストール。

port install rb-rubygems

で、デフォルト(?)で入ってたgemsを削除。

sudo rm /usr/bin/gem

ちゃんと動くかな?

これでrubyとgemsはDarwinPortsを使って管理することになりました。マニュアルっぽくしたようなオートマっぽくなったような感じの管理ですが、自分の中で分かりやすくなって安心感出てきました。これでmongrelはインストール出来るようになったかな?

gem install mongrel --include-dependencies

お、意外な事に普通にインストールできた。
railsアプリのホームに移動して

mongrel_rails start -d development -p 3000 -B

・・・。railsがちゃんと動いてない。

./script/server

ってやってもちゃんと動かない。。そうかrailsもコマンドが/usr/binに入ってるからか。えーい、全部入れ替えてやる!

sudo rm /usr/bin/rails
gem install rails --include-dependencies

さぁ、どうだ!?

which rails
/opt/local/bin/rails

ふぅ。なんとかなった気がする。再び

mongrel_rails start -d development -p 3000 -B

おー、動いた動いた。WEBRickとの違いが全然感じられませんがね。一歩進展はあったと考えていいでしょう。

というわけで、「mongrel動かしてみよう」から。DarwinPortsのインストール→rubyのアップデート→gemsのアップデート→railsの再インストール、とだいぶ遠回りしてしまいました。なんかもっと楽な方法があるような・・・。ランナーズハイならぬインストールハイみたいになっちゃいましたよ。
でも、DarwinPortsでの管理に全体的に移行出来てなんか満足です。今後はこまめにアップデートするようにします。