トップ «前の日記(2004-08-12) 最新 次の日記(2004-08-14)» 編集

\ay日記

やまだあきら(iddy)の日記、記録、覚え書きまたはメモ。


2004-08-13

_ rubygems調査 del.icio.usに追加 はてなブックマークに追加 livedoor クリップに追加 Buzzurl に追加

dh-make-perlに似たdh-make-rubyが欲しい気分なのでrubygemsとrpa-baseをぼちぼち調査してみようかと思い立つ。LL weekendで名前が出てきたrubygemsから。

rubygemsでライブラリやコマンドをインストールすると、それぞれの本体のファイルを/usr/lib/ruby/gems以下にバージョンごとに配置するようだ。その上でたとえば/usr/binとか/usr/local/lib/site_ruby以下には、配置されたファイルを読み込むようなラッパーをインストールする。アンインストールも可能*1。きもはラッパーでも使われているrequire_gemというメソッドで、これは要するに実体のライブラリをrequireするものなわけだけど、加えてライブラリのバージョン指定をできるようになっているようだ。このあたりの仕組みはstowにちょっと似ている。

インストールディレクトリは指定できないみたい。というか、インストール時にインストール先を指定できるのだけど、実際に指定してみるとrubygems用のデータディレクトリがその場所になり、前述のラッパーはやっぱり/usr/local/lib/site_rubyにできた。そりゃそうかという気もするが、いまいちすっきりしないとも言える。また、このようにしてしまうとアンインストールする簡単な方法がなくなってしまうように見える。環境変数GEM_HOMEで指定すればなんとかなるが。

dh-make-rubyで使用するにあたっては、このGEM_HOMEを設定してうんぬんするようなラッパーを作る感じになるだろうか*2

さて、これをdebにした場合、ファイル配置はどうしたら良いだろう。/var以下に適当なディレクトリを作って、/usr/lib/ruby/gemsをとばしてしまえば十分だろうか。せいぜいそんなところかなという気もする(試しに作ったパッケージではそうした)。ruby1.6/ruby1.8/ruby1.9対応はどうしよう。それぞれにパッケージを作って、rubygems1.6/rubygems1.8/rubygems1.9/rubygemsという体制にするべきか。

*1 ちょっと試した範囲ではラッパーファイルが残ってしまうことがあるような……。

*2 一時ディレクトリを作ってrbconfig.rbをコピー、GEM_HOMEを指定してgem inst --remove gem-name。それから……みたいな感じ?

Tags: Ruby Debian

_ UNIX USER 2004/09号 del.icio.usに追加 はてなブックマークに追加 livedoor クリップに追加 Buzzurl に追加

今月の特集はファイルシステムに問題が起きたときの実践的な対処法とLVMの詳しい解説で、どちらも意外とまとまった情報がなかったりするのでわりとうれしそう(分厚い本の中にはあるだろうけど)。

それからXULでのプログラミングというネタがもう一の特集。こっちはまだ読みかけなんだけど、知っておくと便利そうだと思いつつなかなか手が出なかったところなのでとても興味深い。

来月号はVine Linux 3.0とHTTPの深い話の二本立て。豪華執筆陣と聞いているのでとても楽しみ。

Tags:

_ 今日一日 del.icio.usに追加 はてなブックマークに追加 livedoor クリップに追加 Buzzurl に追加

rpa-baseの調査も少ししたのだけど、debを作るのに思ったよりもてこずってしまい、ある程度形にしたところまでとなった。

Tags: 日記
[]

トップ «前の日記(2004-08-12) 最新 次の日記(2004-08-14)» 編集