高見知英のかいはつにっし(β)

高見知英のアプリケーション開発日誌 のほか、地域活動などの活動報告ブログ。

Trac-0.11にアップグレード

Trac0.11って、正式版がすでに出ていたのですね、と言うことで、アップグレード作業を行いました。なんだかいろいろこんがらがっててとても苦労しました・・・。とりあえず表示まではできたものの、まだSubversionリポジトリが表示されないので、後日何とかしないと。

やったことは取り合えず下記。ログとってないので、忘れたものもあるかも

  1. いままでの環境をアンインストールする
  2. Pythonを2.5にする(今まで2.4だった)
  3. setuptoolsをインストールする
  4. mod_pythonを再構築する
  5. easy_installでTrac-0.11をインストールする
  6. 既存のENVをアップグレードする
  7. PYTHON_EGG_CACHEを書く場所を変える
  8. Trac日本語版をインストールする

とにかく、どれもこれもVine Linuxのapt-getでは手に入らないので困りました。仕方なく全部ソースコードからインストール。これだと更新マネージャの恩恵にあずかれないのでやっかいですが、仕方がない。そのうち何とかなるでしょう。

  1. ひとまず、VNCServerを起動して、GUIの更新マネージャからPythonを削除。関連するアプリが全部アンインストールされます。
  2. Pythonのサイトから最新版を入手しインストール。
  3. 今までインストールしていたsetuptoolsは使えなくなっている可能性があるので(ちゃんとパスが通っていれば、多分ないとは思いますが)、setuptoolsは、[http://peak.telecommunity.com/DevCenter/setuptools:title=setuptoolsの配布サイトからez_setup.pyを入手し、実行でインストールできます。
  4. mod_pythonをPython2.5用に再構築。今のpythonにちゃんとパスが通っていれば、「./configure && make && make install」でも良いみたい。
  5. Trac0.11のインストールは、Trac0.11安定版をSVNから直接取得し、インストール*1。setuptoolsとはこういうこともできるんですね、便利だなぁ。
  6. 既存のENVを、trac-adminのupgradeオプションで更新します。復元できなくなるのでバックアップはとっておいてくださいとのこと

とりあえず、これで動くのに最低限必要な準備は整ったはず。
でも、なぜか動かない。ログを見るとeggのキャッシュを/root/.python-eggsに作ろうとしている。それを回避するために指定した「SetEnv PYTHON_EGG_CACHE」は残っているのに。
あれこれ試してみると、どうももっと前に環境変数を定義してやらないと動いていないみたい。
これもまた仕方がないので、/etc/rc.d/rc.sysinit内でexportするようにしました。こんなので良いかどうかはわかりませんが・・・。
とりあえずここまででWikiが表示できるところまで行きました。あとはこの間のコメントにて教わった、Trac0.11用の日本語パックをインストールしておしまいです。

でもまだ「Unsupported version control system "svn". Check that the Python support libraries for "svn" are correctly installed.」が出ます。ssubversion-pythonバインディングを入れてないせいなのはわかりますが、apt-getを使うと過去のPythonが入ってしまうので使えないし。
それから、見てみたらSubversionのバージョンもかなり古いことが発覚(それでも、Vineの更新マネージャ上は最新)。なんだかこんなのばっかりだなぁ、apt-getに頼るのやめておこうかな・・・。
まあ、ここまででタイムラインとリポジトリビューア以外は見られるので、続きは追々やっていきます。まずはSubversion-Pythonバインディングの一次配布元を見つけないとなあ。

*1:「easy_install http://svn.edgewall.org/repos/trac/branches/0.11-stable」。trunkはもうすでに0.12になっているみたいです