Tracをさくらインターネットのレンタルサーバーにインストールしてみる

さくらのレンタルサーバーにログイン。

~/local/src
~/local/lib/python2.6/site-packages
~/local/lib/python2.6を~/local/lib/pythonシンボリックリンクをはる。

PYTHONPATH $HOME/local/lib/python: $HOME/local/lib/python/site-packages
PATH ~/local/bin/:$PATH
LD_LIBRARY_PATH ~/local/lib

  • SWIGのインストール
$cd ~/local/src
$wget http://jaist.dl.sourceforge.net/sourceforge/swig/swig-1.3.40.tar.gz
$tar -zxvf swig-1.3.40.tar.gz
$cd swig-1.3.40
$./configure --prefix=$HOME/local
$make;make install
$make clean
  • ARP ARP-utilのダウンロード
$cd ~/local/src
$wget http://ftp.kddilabs.jp/infosystems/apache/apr/apr-0.9.18.tar.gz
$wget http://ftp.kddilabs.jp/infosystems/apache/apr/apr-util-0.9.17.tar.gz
$tar -zxvf apr-0.9.18.tar.gz
$tar -zxvf apr-util-0.9.17.tar.gz
  • neonのインストール
$cd ~/local/src
$wget http://www.webdav.org/neon/neon-0.28.6.tar.gz
$tar -zxvf neon-0.28.6.tar.gz
$./configure --prefix=$HOME/local
$ make
$make install
$cd ~/local/src
$wget wget http://subversion.tigris.org/downloads/subversion-1.6.5.tar.gz
$tar -zxvf subversion-1.6.5.tar.gz
$cd subversion-1.6.5
$mv ../apr-0.9.18 ./apr
$mv ../apr-util-0.9.17 ./apr-util
$./configure --prefix=$HOME/local --without-berkekey-db -with-python=$HOME/local/lib/python --enable-swig-binding=python --with-libs=$HOME/local --disable-static --with-neon=$HOME/local/ --with-ssl
$make
$make install
$make swig-py
$make install-swig-py
$ln -s ~/local/lib/svn-python ~/local/lib/python/site-packages/svn-python
$ln -s ~/local/lib/svn-python/svn ~/local/lib/python/site-packages/svn
$ln -s ~/local/lib/svn-python/libsvn/ ~/local/lib/python/site-packages/libsvn
$cd ~/local/src
<del>$wget http://www.sqlite.org/sqlite-3.6.17.tar.gz</del>
$wget http://oss.itsystementwicklung.de/download/pysqlite/1.1/1.1.8/pysqlite-1.1.8.tar.gz
$./configure --prefix=$HOME/local --disable-dynamic
$make && make install
  • PySQliteのインストール 2.5.5ではうまくいかなかった。
$wget http://initd.org/pub/software/pysqlite/releases/1.1/1.1.7/pysqlite-1.1.7.tar.gz
$gunzip pysqlite-1.1.7.tar.gz
$tar -xvf pysqlite-1.1.7.tar
$cd pysqlite
$setenv LOCALBASE="$HOME/local"
$python setup.py build
$python setup.py install --prefix=$HOME/local
$cd ~/local/src
$wget wget http://www.clearsilver.net/downloads/clearsilver-0.9.14.tar.gz
$tar -zxvf clearsilver-0.9.14.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
$gmake
$gmake install
$cd python
$python setup.py build
$python setup.py install --prefix=$HOME/local
  • docutil
$wget http://jaist.dl.sourceforge.net/sourceforge/docutils/docutils-0.4.tar.gz
$tar -zxvf docutils-0.4.tar.gz
$cd docutils-0.4
$python setup.py install --home=$HOME/local
  • setuptool
$ cd ~/local/src
$ cat > ~/.pydistutils.cfg 
[install]
install_lib = ~/local/lib/python$py_version_short/site-packages
install_scripts = ~/bin
^D
$wget http://peak.telecommunity.com/dist/ez_setup.py
$python ez_setup.py
$wget http://www.i-act.co.jp/project/products/downloads/Trac-0.11.5.ja1.zip
$unzip Trac-0.11.5.ja1.zip
$cd Trac-0.11.5.ja1
$python ./setup.py install --prefix=$HOME/local
$cp $HOME/local/share/trac/cgi-bin/trac.cgi $HOME/www
$sudo chmod 777 /var
$mkdir /var/svn
$mkdir -p $HOME/var/svn
$svnadmin create --fs-type=fsfs $HOME/var/svn/repo
$mkdir $HOME/tmp
$cd $HOME/tmp
$mkdir proj
$cd proj
$mkdir trunk branches tags
$cd ..
$svn import proj file:///$HOME/var/svn/repo -m "Import First"
$rm -r proj
    • tracの設定 XXXは適当に。
$mkdir -p $HOME/var/trac
$trac-admin $HOME/var/trac/repo initenv

$trac-admin $HOME/var/trac/repo initenv
Project Name [My Project]>
Database connection string [sqlite:db/trac.db]>
Path to repository [/var/svn/test]> /home/XXX/var/svn/repo

$mv $HOME/www/trac.cgi $HOME/www/trac_.cgi

#!/bin/sh
LD_LIBRARY_PATH=/home/XXX/local/lib;export LD_LIBRARY_PATH
TRAC_ENV=/home/XXX/var/trac/repo;export TRAC_ENV
PYTHONPATH=/home/XXX/local/lib/python:/home/XXX/local/lib/python/site-packages;export PYTHONPATH
/usr/local/bin/python /home/XXX/www/trac_.cgi

trac.cgiに書く。

$cd ~/local/src
$wget "http://trac-hacks.org/changeset/latest/accountmanagerplugin/0.11?old_path=/&filename=accountmanagerplugin/0.11&format=zip"
$unzip accountmanagerplugin_0.11.zip
$cd accountmanagerplugin/0.11
$python setup.py build
$python setup.py install --home=$HOME/local
$ python setup.py egg_info
$ python setup.py bdist_egg
$ cp dist/TracAccountManager-0.2.1dev-py2.6.egg ~/var/trac/repo/plugins

~/var/trac/repo/conf/trac.iniの先頭部分を、
[account-manager]
password_file = /home/XXX/var/trac/repo/conf/trac.pass
password_format = htpasswd
password_store = HtPasswdStore

[components]
# wenadmin
webadmin.* = enable
# account manager
acct_mgr.admin.accountmanageradminpage = enabled
acct_mgr.api.accountmanager = enabled
acct_mgr.web_ui.loginmodule = enabled
trac.web.auth.loginmodule = disabled
acct_mgr.htfile.HtPasswdStore = enabled

に、変更。

$htpasswd -c /home/XXXX/var/trac/repo/conf/trac.pass XXX
$trac-admin /home/XXX/var/trac/repo/conf/trac.ini permission add HOGE TRAC_ADMIN