開発やりやすくなるようお膳だて

今週は、(個人的に)Java から Ruby に乗り換えたのを機に、開発環境を一新しよう!はりきってみていました。Web+DB No.28 を参考に、ひとまず SubversionTrac をインストールしてみよう!と。
今までは、ソースコード管理が VSS で、メインの開発環境である Eclipse から VSS プラグインを使ってアクセスしてた。でも Ruby なんだったら Emacs で軽く開発したいよね〜、ってことで、Subversion を試してみたい今日この頃。(しかし、開発機は Windows だったりする (T_T) )

ターゲットのマシンは CentOS4。Web+DB 見ながらだから、簡単さ〜、ってな感じで Subversion をインストール。Windows 側は TortoiseSVN をインストール。特に問題もなくサラッと行く。TortoiseSVN は良いねぇ、完全にファイルエキスプローラと一体になってるから、違和感なくソースコード管理リポジトリを扱える。さすがにだいぶ使い込まれてきたなぁ〜、なんて思うしだい。あ、そんなこと言いながら日本語チェックするの忘れてた。
Win上の日本語ファイル名はどうなるんだろ?月曜にでもちゃらっと確かめてみよう。

さてさて、気分良く Trac のインストールに突入!どうせお試しなので、SVN と同じく yum install でぶっこむ。インストールできたらしい!ふむふむ。

trac-admin /some/path/to/trac-env initenv

なんて打つと Trac 用の環境が初期化されるらしい。細かいことは分かんないが、まぁ Trac での1つの管理単位を作成するっちゅうことなのであろう。で、で、、、、
で、ここから泥沼にハマリマシタ.・゜゜・(/。\)・゜゜・.
sqlite って定数知りません、とか、これこれの定数知りません、とか、trac が怒り続ける。う〜〜む、(この段階で知ったのだが) yum っていうのは Python さんで書かれているらしい。ふむ、TracPython さんで書かれている。ふ?? yum install trac ??ゲフ!最初から入っていったっぽい Python は 2.3 だったんだけど、 yumPython を2.4に上げてくれたみたい。で、Python さんのライブラリがぐちゃぐちゃになった??のか??う〜む、そんなパッケージ管理みたいな下の層で Python なんて・・・せめて自分用に別のとこにインストールしろよ。。。Python について細かいことわかんないんで、sqlite で 2.3 の下を find かけると site-packages というのがあるらしく、そこにいろいろ外部ライブラリが入っているようだ。そして、すべてを cp -R でうやむやに。

まぁ!動いた! Trac の画面綺麗ね〜、日本語化していただいてるし(インタアクト株式会社さんに感謝! http://www.i-act.co.jp/project/products/products.html)、使いやすそうだ。
とかなんとか、動作確認はやったものの、Web+DB No.28 の敷いたレールをそのまま走り続けるのもしゃくだ、とか思い始めてしまい(いや、記事にはとっても感謝しているのです。ただ、ちょっと天邪鬼なだけなのと、久しぶりに Linux で遊んでて楽しくなってしまって、深追いモードに入って行きつつあるだけなのです)、Trac 用の Web サーバを lighttpd にして、fastcgi で動かしたいなぁ〜、なんて。
適当にググッてみると、それなりに動いているようだし、Trac 自身のインストール/設定ページにも lighttpd が書いてある。ので、入れてみようと。インストールは yum が死亡したので、rpm でこりっと。なんか一貫性ないなぁ。で、設定して動かす!動かす?あれ?認証がうまくいかず。。。

auth.require = ("/trac/login" ...

とすると、認証がかからない。Login ボタンを押しても何も起きない。。。なぜに?

auth.require = ("/trac" ...

とすると、今度は Trac のトップにアクセスしたとたんにログインしてしまい、ログアウトが効かない(T_T) 通常は、一般ユーザーで、必要なら管理者モードでログインしなおし、なんて綺麗なことを考えていたのだが、結局、login ボタンでの認証が解決できず、いろいろ設定を変更しながら試したのだが、だめ。 /trac_login とかにして、その URL を叩くとlighttpd での認証がかかるので、/(スラッシュ) が悪いのかなぁ?とか、依存ライブラリのバージョンの問題?とか悩みつつ時間切れ。アクティブなユーザーは2人だし、そこはもう管理者モードで、見る人は5-6人なので、がんばって一般モードのユーザを digest に書き込んで終わり。

しばらく使ったら、問題も出てくるだろうし、そしたら新しい OS 上でもいっかい構築しなおそうかな。 yum さえあまり間違えなければさらっと行けそうな気もする(たいていそうなならないんだけど)。まずは、なにより yumpython のアップデートからかな。そうするときっと依存関係ではまるんだろうな〜。あ、Emacs と連携させる部分を忘れていた。Eclipse との連携は、問題ないとは思うけど、RadRails を使うであろうもう一人にお任せすることにしよう。はふ〜、面白かった!