インストール

Subversion に引き続き、Trac を Turbo Linux 10 Server に入れてみた。
私的ハマりポイントだけ記載。
(FreeBSD + ports の場合のインストール方法は、一番下に追記した)

zlib インストール

Turbo Linux 10 Server に標準で入っている Python を使う場合は不要。
PySQLite をインストールする際に必要。(Python の Make 時にリンクされる)
http://www.zlib.net/
ここから最新版をインストール

Python インストール

turbopkg でインストールしたものが信用できなかったので、一応、新規インストール。
http://www.python.jp/Zope/download/pythoncore
ここから最新版をダウンロードしてインストール

SWIG bindings

d:id:cooldaemon:20060315 でインストールした Subversion のデリレクトリで下記を実行。

./configure --with-apxs=/usr/local/apache2/bin/apxs ?
    --with-apr=/usr/local/src/httpd-2.2.0/srclib/apr ?
    --with-apr-util=/usr/local/src/httpd-2.2.0/srclib/apr-util ?
    --with-berkeley-db=/usr/local/BerkeleyDB.4.4
make swig-py
make install-swig-py

trac-admin 実行時に、svn モジュールが存在しない旨のエラーメッセージが表示されたので・・・

ln -s /usr/local/lib/svn-python/svn /usr/local/lib/python2.4/site-packages/svn
ln -s /usr/local/lib/svn-python/libsvn /usr/local/lib/python2.4/site-packages/libsvn

応急処置で上記を実行。他に良い回避方法募集中・・・orz

ClearSilver インストール

http://www.clearsilver.net/downloads/ から最新版をダウンロードしてインストール。

./configure --disable-perl --with-python=/usr/local/bin/python

perl モジュールでエラーとなったが、不要なので disable に。

SQLite インストール

http://www.sqlite.org/download.html から最新版をダウンロードしてインストール。
動作確認は、sqlite3 コマンドで行う。
sqlite3 コマンド実行時に、ライブラリ関連のエラーが表示されるようであれば /sbin/ldconfig を実行する。

PySQLite インストール

http://initd.org/tracker/pysqlite から最新版をダウンロードしてインストール。

python setup.py build
python setup.py install

build 時に zlib を入れた状態でコンパイルした python を使わないとエラーとなる。

trac-ja インストール

http://www.i-act.co.jp/project/products/products.html から最新版をダウンロードしてインストール。

python ./setup.py install

環境作成

mkdir /path/to/trac
trac-admin /path/to/trac/project initenv
chown -R apache:apache /path/to/trac

chown apache の箇所は、apache のユーザを指定。FreeBSD + ports で入れた場合は www:www

httpd.conf 設定(cgi)

下記の例では、SubversionTrac の htpasswd ファイルを同一にしてある。
httpd.conf に下記を追加

<Directory "/usr/local/share/trac/cgi-bin/">
  AddHandler cgi-script .cgi
  DirectoryIndex trac.cgi
  Options ExecCGI
</Directory>

Alias /project/ "/usr/local/share/trac/cgi-bin/"
<Location "/project/">
  SetEnv TRAC_ENV "/path/to/trac/project"
  SetEnv PYTHON_EGG_CACHE "/var/.python-eggs"
</Location>

<Location "/project/trac.cgi/login">
  Require valid-user
  AuthType Basic
  AuthName "xxxxx"
  AuthUserFile /etc/svn-auth-file
</Location>

httpd.conf 設定(mod_python)

httpd.conf に下記を追加

LoadModule python_module modules/mod_python.so

<Location /project>
   SetHandler mod_python
   PythonHandler trac.web.modpython_frontend
   PythonOption TracEnv /path/to/trac/project
</Location>

<Location "/project/login">
  Require valid-user
  AuthType Basic
  AuthName "xxxxx"
  AuthUserFile /etc/svn-auth-file
</Location>

追記(2007.04.14)

FreeBSD + ports の場合、下記の通り。

cd /usr/ports/www/trac
make && make install && make clean

Subversion のインストール時に WITHOUT_BDB=yes を指定すると make install 時に下記のようなエラーが発生する場合がある。

You should build `devel/apr-svn' with db4 support to use subversion with it.
Please rebuild `devel/apr-svn' with option `APR_UTIL_WITH_BERKELEY_DB=yes' and try again.

Or you can disable db4 support. Only 'fs' repository backend will be available.
To disable db4 support, define WITHOUT_BDB.

その場合は、メッセージに従って、下記を行う。

cd /usr/ports/devel/subversion-python
make WITHOUT_BDB=yes && make install && make clean

cd /usr/ports/www/trac
make install && make clean

mod_python を使うのであれば、下記も行う。(オススメ!)

cd /usr/ports/www/mod_python3
make install && make clean