Tracのインストール

以前から少し時間が開いてしまったが、改めてWinXPへのTracインストールのまとめ。

ここでは日本語化されたtrac-0.9.5-ja-1.zipを使用。

まずは前提環境の構築

Python

Tracの動作プラットフォーム

Windows環境では2.4はダメらしいので、2.3.4-JPを使用。

  1. インストーラを起動するだけ

setuptools

ダウンロードしたez_setup.pyをPythonに指定する

> D:\Python23\python.exe ez_setup.py

Python 2.3 bindings for Subversion 1.3.0 on Win32

SubversionのPythonAPI

ファイルの場所がわかりにくいが、"Documents&files"からWindowsをたどっていけば見つかるはず。ここではsvn-win32-1.3.0_py.zipを使用。

  1. ダウンロードファイルの"svn-win32-1.3.0\python\"に含まれる"libsvn\"と"svn\"を、Pythonインストール先(ここではD:\Python23\)のLib\site-packages\にコピー
  2. プログラム「Python for Win32-JP」を開き、「import svn」+Enterと入力してエラーが出なければ成功(?)

pycop2

PostgreSQLのPythonAPI

Windows版バイナリの、Python2.3用psycopg2-2.0b8.win32-py2.3.exeを使用。

  1. インストーラを起動するだけ

ClearSilver

HTML出力エンジン?

バイナリ配布のclearsilver-0.9.14.win32-py2.3.exeを使用

  1. インストーラを起動するだけ

Docutils

ドキュメント生成エンジン?

docutils-0.4.tar.gzを使用。

  1. ダウンロードファイルを一時作業フォルダに展開
  2. コマンドプロンプトで、展開フォルダに移動後、以下のコマンド

> D:\Python23\python.exe setup.py install

Tracインストール

  1. ダウンロードファイルを作業フォルダに展開
  2. コマンドプロンプトで、作業フォルダに移動後、以下のコマンド

> D:\Python23\python.exe setup.py install

出力先を変更したい場合は、末尾に--prefix=でフォルダを指定する

DBインスタンスの作成

pgAdminIIIから

  1. ユーザを作成(例:trac)
  2. DBインスタンスを作成(例:trac)
SVNリポジトリを作成(例:D:\SVN\Sandbox)

TortoiseSVNなら、

  1. フォルダ作成
  2. コンテキストメニュー[TortoiseSVN]>[ここにリポジトリを作成]
Environmentの作成

> D:\Python23\python.exe D:\Python23\Scripts\trac-admin (Environment出力フォルダ:D:\WEB-Server\Trac\sandbox) initenv

いくつか質問されるのでプロジェクトに応じて。

  • Project Name:sandbox
  • Database connection string:postgres://trac:trac@localhost/trac
  • Path to repository:D:/SVN/Sandbox

インストール時に書いてたメモには「DB文字列」の覚書がある。どこで必要なんだっけ?

出力されるconf\trac.iniを編集する。どこまで編集したか明確に覚えてないが、若干で済んだような...

参考
http://projects.edgewall.com/trac/wiki/TracIni

Apacheとの連携

mod_pythonを使用。

バイナリ配布のPython2.3用モジュールを取得。mod_python-3.2.8.win32-py2.3.exe

  1. インストーラを起動
  2. [Where is Apache installed?]と聞かれたらApacheのフォルダを指定
  3. ${Apache}/conf/httpd.confに以下を追加
LoadModule python_module modules/mod_python.so
#
# Trac setting /w mod_python
#
<Location /trac>
  SetHandler mod_python
  PythonHandler trac.web.modpython_frontend 
  PythonOption TracEnvParentDir "Environmentフォルダの親フォルダ"
  PythonOption TracUriRoot /trac
</Location>
(認証を行う場合は以下も追加)
<LocationMatch "/trac/[^/]+/login">
  AuthType Basic
  AuthName "Trac"
  AuthUserFile ".htpasswdファイルへのパス"
  Require valid-user
</LocationMatch>