2008年2月20日水曜日

XREAにTrac環境を

/----------------------------------------
Trac-jaインストール
----------------------------------------/

※XREAの無料サーバーでは50MBの容量制限があるため、厳しいかも。
ユーザー容量制限の関係でインストールに失敗することがあるので
 quotaコマンドにて時折確認すること。

■インストールモジュール一覧
・Subversion SWIG Python bindings
・PySQLite
・Clearsilver0.9.3以上
・Subversion ← すでに入っているがpython bindingする必要があるためインストール
・ez_setup.pyインストール
・Trac-ja

■初期設定
> mkdir -p $HOME/local/src
> mkdir -p $HOME/local/lib/python2.4/site-packages
> ln -s ~/local/lib/python2.4 ~/local/lib/python
> cd ~
> vi ~/.bash_profile
※最終行に以下を追加
export PYTHONPATH=$HOME/local/lib/python:$HOME/local/lib/python/site-packages
export PATH=$HOME/local/bin:$PATH
export LD_LIBRARY_PATH=$HOME/local/lib

■Subversion SWIG Python bindingsインストール
> cd ~
> mkdir install
> wget http://nchc.dl.sourceforge.net/sourceforge/swig/swig-1.3.28.tar.gz
> tar zxvf swig-1.3.28.tar.gz
> cd swig-1.3.28
> ./configure --prefix=$HOME/local --with-python
> make
> make install

■PySQLiteインストール
> cd ~/install
> wget http://initd.org/pub/software/pysqlite/releases/2.4/2.4.1/pysqlite-2.4.1.tar.gz
> tar zxvf pysqlite-2.4.1.tar.gz
> cd pysqlite-2.4.1
> export LOCALBASE=$HOME/local
> python setup.py build
> python setup.py install --prefix=$HOME/local

■Clearsilverインストール
> cd ~/install
> wget http://www.clearsilver.net/downloads/clearsilver-0.10.5.tar.gz
> tar zxvf clearsilver-0.10.5.tar.gz
> cd clearsilver-0.10.5
> ./configure --prefix=$HOME/local --oldincludedir=$HOME/local/include --disable-ruby --disable-java --disable-perl --disable-csharp --disable-python --disable-static
> make
> make install

■Subversionインストール
> cd ~/install
> wget http://subversion.tigris.org/downloads/subversion-1.3.2.tar.gz
> tar zxvf subversion-1.3.2.tar.gz

○aprインストール
> cd subversion-1.3.2/apr
> ./configure --prefix=$HOME/local
> make
> make install

○apr-utilインストール
> cd ../apr-util
> ./configure --prefix=$HOME/local --with-apr=$HOME/local
> make
> make install

○neonインストール
> cd ../neon
> ./configure --prefix=$HOME/local
> make
> make install

○Subversionインストール
> cd ..
> ./configure --prefix=$HOME/local
--enable-swig-bindings=$HOME/local
--with-python=/usr/local/bin/python
--with-ssl
--with-swig=$HOME/local
--without-berkeley-db
--with-libs=$HOME/local
--with-apr=$HOME/local
--with-apr-util=$HOME/local
--without-apxs
--disable-static
> make
> make install
> make swig-py
> make install-swig-py
> ln -s $HOME/local/lib/svn-python $HOME/local/lib/python/site-packages/svn-python
> ln -s $HOME/local/lib/svn-python/svn $HOME/local/lib/python/site-packages/svn
> ln -s $HOME/local/lib/svn-python/libsvn $HOME/local/lib/python/site-packages/libsvn

■ez_setup.pyインストール
> cd ~/install
> wget http://peak.telecommunity.com/dist/ez_setup.py
> python ez_setup.py --prefix=$HOME/local

■Trac-jaインストール
> cd ~/install
> wget http://www.i-act.co.jp/project/products/downloads/trac-0.10.4-ja-1.zip
> unzip trac-0.10.4-ja-1.zip
> cd trac-0.10.4-ja-1
> python setup.py install --prefix=$HOME/local


/----------------------------------------
リポジトリ作成
----------------------------------------/
> cd ~/
> mkdir -p var/svn/repos
> svnadmin create var/svn/repos


/----------------------------------------
Trac環境設定
----------------------------------------/
> mkdir -p $HOME/var/trac/repo
> trac-admin $HOME/var/trac/repo initenv
Project Name [My Project]> ※プロジェクト名
Repository type [svn]> ※リポジトリ種類
Path to repository [/path/to/repos]> ※リポジトリディレクトリ
Templates directory [/virtual/pario/local/share/trac/templates]> ※テンプレートディレクトリ


/----------------------------------------
trac.cgi作成
----------------------------------------/
・公開ディレクトリに起動用trac.cgiを作成
> vi $HOME/public_html/trac.cgi
※以下を記述
----------------------------------
#!/bin/sh
export TRAC_ENV=/virtual/pario/var/trac/repo
export PYTHONPATH=/virtual/pario/local/lib/python:/virtual/pario/local/lib/python/site-packages
/usr/local/bin/python /virtual/pario/local/share/trac/cgi-bin/trac.cgi
----------------------------------

> chmod 755 $HOME/public_html/trac.cgi

・htaccess設定
> vi $HOME/public_html/.htaccess
※以下を記述
----------------------------------
RewriteRule ^trac$ trac.cgi [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule ^trac/(.*)$ /trac.cgi/$1 [L]
----------------------------------

0 件のコメント: