etchだとtrac-gitのパッケージが無いので、virtualenv上に環境を作ってみる。
ただし、うちにはetchの環境がないのでlennyでやっています。
会社のetchでも同じ手順でできたので大丈夫なはずです。ただ、もしかしたらパッケージ名が若干違うかも。
注: 私はzsh環境なので設定ファイルは適宜読み替えてください。
まず、Pythonのインストール
システムデフォルトのPythonとtracを動かすためのPythonをインストールします。TracGitPluginをレポジトリから持ってくるためにsvnもついでにインストールします。
sudo aptitude update && sudo aptitude safe-upgrade sudo aptitude install python python-setuptools libsqlite3-dev zlib1g-dev subversion
Tracを動かすためのPythonをインストール
これに関しては特筆すべきところはありません。ソースをダウンロードしてきてコンパイル、インストールするだけです。
インストール先はホームディレクトリとなります。
version='2.6.6' tmp_dir=${HOME}/tmp if [ ! -d ${tmp_dir} ] then mkdir ${tmp_dir} fi cd ${tmp_dir} wget http://www.python.org/ftp/python/${version}/Python-${version}.tgz tar xvzf Python-${version}.tgz cd Python-${version} ./configure --prefix=${HOME}/usr/local make && make install
一応こいつと同じ
virtualenvのインストール
既存の環境を壊さないようにTracはvirtualenvで動かします。
参考:
- virtualenvを試してみる。
sudo easy_install virtualenv virtualenvwrapper echo ' # virtualenv export WORKON_HOME=${HOME}/.virtualenvs . /usr/bin/virtualenvwrapper.sh ' >> ${HOME}/.zshrc mkdir ${HOME}/.virtualenvs source ${HOME}/.zshrc
一応こいつと同じ
Trac用のvirtualenvを作成
mkvirtualenv --python=${HOME}/usr/local/bin/python2.6 trac
Tracのインストール
Pythonパッケージのインストールはpipで行います。pygmentsはTracのシンタックスハイライトを表示するために必要です。
TracGitPluginをインストールする際にwarningが出ますが、内容的に問題無さそうなので無視します。
workon trac # Trac用のPython環境に切り替え pip install trac pygments http://trac-hacks.org/svn/gitplugin/0.12
Tracプロジェクトの作成
trac_dir='${HOME}/trac' # Tracのプロジェクトを置くパス project_dir='${trac_dir}/test' # 適当なプロジェクトのパス mkdir -p ${project_dir} trac-admin ${project_dir} initenv
プロジェクト名とDBだけ聞かれるので適当に答えます。DBは空でよいです。
Project Name [My Project]> test Database connection string [sqlite:db/trac.db]>
設定ファイルの修正
TracがGitレポジトリを参照できるようにtrac.iniを変更してあげます。
vim ${project_dir}/conf/trac.ini
#変更 [trac] # ...snip repository_dir = /home/masasuzu/project/trush/.git/ # レポジトリへのパス repository_sync_per_request = repository_type = git #末尾に追加 [git] cached_repository = false persistent_cache = false shortrev_len = 6 git_bin = /usr/bin/git [components] tracext.git.* = enabled
参考:
- Git Plugin for Trac
Tracの起動
下記のコマンドでTracを起動してhttp://localhost:8888/testにアクセスしてあげるとTracにアクセスできるはずです。
tracd --port 8888 ${project_dir}