gam_serverがつかみっぱ
デジカメを接続して写真を取り出し終えたところでumountしようとしたらdevice busyとかでumountできず。なんだろなと思ってfuserしてみるとgam_server(パッケージはgamin)がつかんでた。たしかfamみたいなやつだよなーと思いながら、でも、しょうがないのでkillしてやった。だがすぐに復活。で、kill、復活、kill、復活。みたいなことをしばし繰り返す。結局はumountできたんだけど、まいるね。
しかし、いつの間にfamが消えてgaminになったのかね、と思って調べてみると明示的にdependsを設定しているのはgnubiffだけのよう。gaminがdependsしているlibgamin0がlibfam0c102とlibfam0をprovidesしているので他のGNOME系ツールには影響を与えなかったよう。
まあ、depends関係が浸透していないのは幸いである。gnubiffは使っていないのでこのさいgaminとともに削除しようというわけでsudo aptitude install fam libfam0c102 gamin-を実行。
Rabbitのdeb
新しくパッケージをメンテナンスする余力がなさそうなので形だけなのだけどRabbitのdebを作ってみた。とりあえずこんな状態:
- dh_makeのサンプルはわざと残したまま。
- RecommendsとSuggestsの境界はあてずっぽう。
- Debian的都合に合わせてインストール先を一部いじった。
- 同じくDebian的都合で不要と思われる#!行を削った。
rabbit rabbit.rdが動いってるっぽいことは確認したが、それ以上のことは確認していない。
誰かDebianに持ってきませんかね?
で、この作業をしているときに気付いたのだけどsetup.rb(バージョン3.3.1)の1138行目のFile.basename(config('rubypath')) == 'ruby'というチェックはどうして必要なんだったかな。Debianだとconfig('rubypath')が/usr/bin/ruby1.8になるのでadjust_shebangが何もしてくれないみたい。
あと#!/usr/bin/evn rubyは--shebang=allで書き換えてくれないんだっけ。この辺の挙動はバージョンによって違うんだったかな。どうだったかな。
ruby-pkg-tools
Description: Tools for building Debian Ruby packages
This package contains some useful tools for building Debian Ruby packages
and is used by the Debian Ruby Maintainers Team. It includes:
* a CBDS class for building packages which use setup.rb as installer,
* a program to retrieve upstream sources for use in conjunction with
svn-buildpackage,
* a list of team members.
the Debian Ruby Maintainers Teamってruby-pkg-toolsのメンテナたちのことだろうか。/usr/share/ruby-pkg-tools/pkg-ruby-extras.teamにはDebian Ruby Extras Maintainersって書いてあるんだけど、そうするとExtrasが抜けてる? うーん。
svn-buildpackageうんぬんのスクリプトはいまいちよく分からない。……あー、debian/changelogを読んで、対応するupstream tarballを取ってくるのか。しかしそのために/usr/shareにファイル置くってのはどうだろう。debian/watch的なやつのほうが良いんじゃないか。
まあ、目玉はsetup.rbを使ったソフトウェアをパッケージングするのに使えるcdbsのclassファイルだろうな。でもなんでこれcdbsに入れてもらわないんだろう。
rubygems用のclassファイルがあると良いかなあ。その前にrubygems自体がそろそろ欲しいかも。
REXML::Comment#to_s
$ ruby -rrexml/document -e '
doc = REXML::Document.new("<!-- bar -->")
print "---1\n"
print doc
print "\n---2\n"
doc.children.each {|c| print c}
print "\n---3\n"
doc.children.each {|c| c.write(o = ""); print o}
print "\n---0\n"'
---1
<!-- bar -->
---2
bar
---3
<!-- bar -->
---0
REXML::Comment#to_sはコメントの中身を返すようだ。
フローマップ
diary.yuco.netの記事を読んで、フローマップに試しに参加してみた。


