Date: Mon, 26 Sep 2005 22:38:22 +0900 From: Daigo Moriwaki techml at gtpepper.net Subject: [ruby-dev:27321] RubyGemsと OS platform との関係 To: ruby-dev@ruby-lang.org (ruby developers list) こんにちは、森脇です。 RubyコードのpackagingシステムであるRubyGemsが、Ruby HEADに入るようです。 既存のpackagingシステム(DEBやRPM)をもつ*NIXや*BSDなどにgemをインストー ルする際、Rubyユーザ/デベロッパと Platform ユーザ/デベロッパとの双方に都 合の良いやり方をめぐって、ruby-core [1]の方で議論が続いています(そろそ ろ収束しそうですが)。議論というよりはフレームとなっている面も多々ありま す。一部、debian-ruby MLでも議論が飛び火しています。 日本のRuby開発者が特に議論に参加していないため、日本人はどう思っているの か、向こうは知りたがっています。 なにか意見のある方は、ここやruby-coreでぜひアイデアを出してください。 RubyGemsがRuby標準となれば、RubyGemsに従ってライブラリやアプリケーション が(Perl界のCPANのように)管理されていくことになるでしょう。RubyGemsの利 便性が、今後のRuby/Platform lifeに大きく影響すると思われます。 まとめサイトとしては、Debian側からのまとめになるのですが、Debian内でのML [2]があります。 # Debianは非常に矢面に立たされているのですが、Debianデベロッパは冷静に対 処しようとしています。 議論を起こすつもりであえて私がまとめると、 DEB(やRPM)には、Rubyのライブラリが(RubyGemsより)少なく、とても不便。 かといって、自分でRubyGemsを入れて、自分で gemを管理するのも、apt-getな どの支援を得られず不便。ぜひ統合して欲しい。 RubyGems原理派は、DEBやRPMがgemをラップ(DEB内にgemを入れて、DEBのインス トール時にrubygemでgemをインストール)すればそれで事足りて、それがRuby ユーザにとって最良だから、そうすべきで、それ以外のやり方はすべきでないと 言っている。 しかし、Platform派は、既存の管理システムとの整合性を考えなければならない ので、事はそう単純ではないと言っている。しかも、RubyにはC拡張があるの で、さまざまなplatformに対応するディストリビューションには、単純ではない。 ただし、Platform派は、RubyGemsを否定しているわけではない。DEBとRubyGems は対立する概念ではなく、補間しあうものであろう。DEBなりにRubyGemsと整合 性をとっていくし、RubyGemsに機能が足りないようなら提案するまでなのだが、 この点について、 RubyGems原理派(というか、一番声のでかい人)は、ことさ らにDebianを非難し、RubyGemsを否定していると受け取っているようで、議論が かみ合わない。 Debian Developerである私には、事はそう単純ではないように見える。gem -> debに変換する方法は技術的にさまざまな可能性があり、完全な自動化かどうか はともかく、ある程度の自動化は技術的に可能であろうし、何らかの変換ツール はあるべきだ。しかし、技術面だけでなく、ライセンスやFHSなどPolicyに関わ る問題があるため、Debian officialのnative packageとして、単純なラップの み認めるのは難しい(単純なラップはそれらの問題を解決しないので、デベロッ パがいろいろ調整しなければならず、現状と変わらない)。 [1] http://ruby-talk.org/ruby/ruby-core/threads.html [2] http://lists.alioth.debian.org/pipermail/pkg-ruby-extras-maintainers/2005-September/000018.html では。 -- Daigo Moriwaki beatles_at_sgtpepper_dot_net