きりかノート 3冊め

おあそびプログラミング

macportsのrubyは3つあるけどどうする?

いま自分は、MacPortsの"ruby" port(1.8系の最新、今は1.8.7)をメンテナンスしてるけど、MacPortsにはこのほかにruby186とruby19というportがある。で、rubyとruby186は共存できないし、ruby19もひとによっては`ruby'で使いたいじゃん(+nosuffixというvariantがあるけど、rubyをdeactivateしないとぶつかる)。

ということで各portのメンテナ3人で検討中(英語なので自分はやや乗り遅れ気味、てかさっき最初の返答メールだした)。課題は、

  1. ruby 1.8.7を特殊にせず、ruby18とする。rubyはperl5みたいなメタportに。
  2. rb-*の管理はじゃあどうするよ
  3. gemsはそもそもportじゃなくてgemにまかせたほうがよくね?

といったあたり。1.についてはあまり議論の余地がなくて、技術的にどう解決するかってくらい。2.と3.がなやましいよねえ。2.については1.8.6と1.8.7は原則互換と信じて同じライブラリファイルを使うって感じだろうけど、1.9はびみゃうだなあ。3.は「gemも標準とは別の配置ディレクトリ掘るのでどうだろう」という案があるのだけど、gemだと複数バージョンもてるから、検索順てばどうすればよいかねえ。