IIIMF

gentoo-dev ML で「iiimf の ebuild 作っているよ」という中国人の人がいたのでちょっと焦って(bugs.g.o に行かないで先にあちらがコミットされたら GentooJP でみんなバグ出ししてたのも反映されないので)一応形にして送っておく。とはいえ最近は uim のファンになりつつあるので、動くのを確認したくらいだが……。

最初は GentooJP の話では im-sdk はいろんなライブラリやらなにやらが集まったものなので、CSconv (コード変換ライブラリ) と IIIMSF (サーバ) と IIIMXCF (X クライアント) に分割してはどうか、とmatsuu さんが提案したのだが、実際分けてみるとうまく分かれてくれない(たとえば IIIMSF と IIIMXCF と CSconv 以外にも EIMILというライブラリがあるし、IIIMSF と IIIMXCF の両方で使うライブラリにIIIMP というのが入っていたり(1つの ebuild の中でビルドするなら問題ないが、IIIMSF と IIIMXCF を分けるとなるとこれも分離せざるをえない)。結局 ebuild 3つで終わる予定が7個になってしまった。

とはいえ3つ目から4つ目の ebuild を書いている途中でだるくなり、こんな同じような手順しかないなら eclass 書くわ! と思って書いたらebuild がスカスカに……。コメントと空行を除くと実質4行のebuild なんかもあったりする。まあいいか。

個別の ebuild にするとテストするのは簡単になったのだが、分けたがための問題もあったりしてパッチを書き書き(7つに分けたのにパッチ6つも書くとはなにごと)。FHS に従うようにするために変更したりもする(でも Gentooebuild って FHS にしろと書いてあるわりにはmedia-fonts の一部のものなど平然と /usr/X11R6 の下にインストールするのが多い)。

実際に動かしてみると、サーバ側がデフォルトで外からのコネクションを全部切る設定になっていたので動かなかったり(動くサンプルファイルを標準でインストールするように手を入れる)、Emacs の site-start.el に入れるファイルがなかったりではまりまくる。あっさり終わると思ったのだが……。

結局ファイルに小分けにしてパッチを作って最低限動くようにして投稿。ファイルの添付に忙しくて im-sdk という meta package を作成し忘れた。まあ RDEPEND ごにょごにょ書くだけなので明日にしよう。