Trac0.11b1をUbuntuに入れてShibuya.tracに臨んでみた

今日はShibuya.trac meeting 1.0が豊洲で行われることをすっかり忘れてて、慌ててTrac 0.11bを試してみた。

Ubuntuへのインストール

やってみた感想はPYTHONPATH激しく便利だー。JavaでもJRE/ext以下にjarを配置すればおんなじ様なことを実現できるんだろうけど、あんまりやられないように思う。Javaの場合仮想マシンの上で動かすアプリケーションみたいな考えがあるからかですかね。

今回のインストールに対する基本的な考え

Tracと言えどもベータ版のパッケージなので、基本的に自分のホームディレクトリにソースを配置して、そこを環境変数PYTHONPATHで設定する。と言う方針なので、基本はUbuntuのパッケージを使わずに手でパッケージをインストールしてみた。

Ubuntuなパッケージ(ubuntu上でのパッケージ名)

  • python2.5-setuptools
    • たぶんeasy_installがないとTracのPluginがインストールできないだろうから、Python2.5のシステム上{{/usr/lib/python2.5/site-packages}}に入れてみた。
  • python-pysqlite2
    • Ubuntuなパッケージですが、Unstableなバージョンらしい。まぁ、site-packagesから消してしまえばいいのではないだろうかと言うことで導入してみました。
  • Genshi-0.4.0
    • 間違えてUbuntuなパッケージを指定してしまった。orz

ソースで用意したもの

  • Trac-0.11b1
    • まぁ、とりあえずソースで用意

Trac-0.11b1をダウンロード後、解凍し、解凍したディレクトリパス($TRAC_HOME)とでもしましょうか。)をPYTHONPATHに含めまして

$TRAC_HOME/trac/admin/console.py Tracのプロジェクトパス

とかやると

trac-admin Tracのプロジェクトパス

と同じようにtrac-adminが起動し、

$TRAC_HOME/trac/web/standalone.py --port 8000 TRACのプロジェクトパス

とやると

tracd --port 8000 TRACのプロジェクトパス

と同じようにtracdが起動されます。まぁ僕は知らなかったんですが、easy_installは設定ファイルで書かれたpythonのクラスをコマンドとしてPATHの通ったところに配置してくれるみたいですね。要するに、上記のtrac-adminやtracdはpythonスクリプトを呼び出しているだけだったんですよ。えぇ。tracdを使っているときは認証とかどうするのか、わかんなかったんで、anonymousにTRAC_ADMIN権限与えていじってみました。

使用感

  • 注目のワークフロー周りは全く触ってません。
  • wikiの入力フォームで前回との差分を確認するRecent Changesボタンが追加されてた
  • 個人設定のページが充実してます。アクセスキーを有効にするかどうかの設定とかできるようでございます。
  • XML-RPCプラグインは0.11に入んないのかな。0.11b1にはなかったよ。
  • Genshiのおかげでhtdocsとかtemplates辺りの知識に関しては再学習必要

一応インストールしてないものについて触れてみる

Tracを試すためだけに上二つのパッケージを入れるのはイケテないと判断。0.9時代には考えられないほど、インストールが簡単になっている気がするのはおいらの気のせいか。

まとめると0.11b1を動作させる上で必須のものは

こんな感じで、SQLiteブリッジやsetuptoolsに関してはPythonを使っていると普通に入れてるんじゃないの?的なものなので、特筆すべき事項ではないし、ClearSilverがなくてもよくなったから、Cで書かれた環境依存なパッケージもない。もちろんneonとか、subversionとの連携に起因するパッケージも要らない。ってすごい時代になったもんだよ。最近話題のMercurialPythonで書かれたSCMなので、Pythonだけ入っていればTracのシステムが一応作れちゃったりするんではなかろうか。