trac
subversion を入れたのでせっかくだから trac も入れてみる
一人で使うかどうかわからないけど、会社でも使ってみようかと思っていたのでtrac をインストールしてみます。
目次
- 必要なもの[packages]
- インストール[install]
- プロジェクト環境の作成[create]
- 起動[start]
- apache 2 と連携[apache]
- 参考[reference]
必要なもの[packages]
必須
- trac
- python 2.3 以上
- ClearSilver 0.9.3 以上
- データベースとその python ドライバ。 対応データベースは SQLite か PostgreSQL か MySQL(実験中)
SQLite
PostgreSQL
オプション
- Subversion 1.0 以上
- SWIG Subversion と python をつなぐのに必要
- Apache
- mod_python 3.1.3 以上 Apache と trac の連動に使用する
- setuptools 0.6以上 プラグインのインストールに使用する
- docutils Wiki の変わりに reStructuredText を使う
- SilverCity 0.9.7 ソースコードのハイライト
インストール[install]
Vine Linux 3.2 でパッケージが標準で用意されているものは、それを使います。
python, apache 2, subversion, swig はすでに入っているので、 ClearSilver, SQLite, pysqlite, mod_python, setuptools, docutils, SilverCity をインストールします。
% sudo apt-get install sqlite3 sqlite3-devel gcc-c++ % tar xfz clearsilver-0.10.4.tar.gz % cd clearsilver-0.10.4 % ./configure --with-python=/usr/bin/python --disable-ruby % make % sudo make install % cd .. % tar xfz pysqlite-2.3.3.tar.gz % cd pysqlite-2.3.3 % python setup.py build % sudo python setup.py install % cd .. % tar xfz mod_python-3.3.1.tgz % cd mod_python-3.3.1 % ./configure % make % sudo make install % cd .. % tar xfz docutils-0.4.tar.gz % cd docutils-0.4 % python setup.py build % sudo python setup.py install % cd .. % tar xfz SilverCity-0.9.7.tar.gz % cd SilverCity-0.9.7 % python setup.py build % sudo python setup.py install
ひととおりはいったので、最後に trac をインストールします。 ここでは インタアクト株式会社 の Trac 日本語化作業グループさんが作成されている trac-ja をインストールします。
% unzip -x trac-0.10.3-ja-1.zip % cd trac-0.10.3-ja-1 % python setup.py build % sudo python setup.py install
プロジェクト環境の作成[create]
trac がインストールされたので環境を構築します。
が、その前に構築時に ImportError: No module named svn とかっていわれちゃうので、それを回避します。
原因は python が /usr/lib/svn-python に入っているモジュールを見つけられないためのようです。
それを回避するために
/usr/lib/python2.3/site-packages/subversion.pth
というファイルを作成して、以下の内容を記述します。
/usr/lib/svn-python
いよいよ構築します。
trac-admin コマンドを実行します。Project Name はなにかプロジェクトの適当な名前を、repository にはここでは
subversion
で作成したものを指定しています。
:
# mkdir /var/trac
# trac-admin /var/trac/takanory initenv
Project Name [My Project]> takanory.net
Database connection string [sqlite:db/trac.db]>
Repository type [svn]>
Path to repository [/path/to/repos]> /var/svn/repos
Templates directory [/usr/share/trac/templates]>
:
Congratulations!
起動[start]
とりあえず起動してアクセスしてみます。
最終的には mod_python 経由で立ち上げたいのですが、とりあえず簡単そうな tracd を使って起動します。
# tracd --port 8000 /var/trac/takanory/
すると http://takanory.net:8000/ でアクセスできるようになりました。
apache 2 と連携[apache]
まず、apache 2 から読み書きができるようにファイルの所有者を変更します。
# chown -R apache:apache /var/trac/takanory
次に apache 2 の設定ファイルに trac を mod_python 経由で起動するための記述を追加します。:
<VirtualHost *>
ServerName trac.takanory.net
<Location />
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracUriRoot "/"
PythonOption TracEnvParentDir /var/trac
</Location>
</VirtualHost>
設定後に apache 2 に設定ファイルを再読み込みさせます。
# /etc/init.d/apache2 reload
その後、 http://trac.takanory.net/ にアクセスすると、きちんと参照できるようになりました。
あとは認証の部分をやりたいんだけど、どうも 仮想ホストの設定 に書いてある設定ではだめっぽい気がする。 (ログインしようとするとなぜかトップの画面に遷移してしまう)
参考[reference]
この文書を書くのに参考にしたページです。