必要なものはすべて aptパッケージで存在した。
もしかしたら不要なパッケージもあるかもしれないが、以下のように作業すると、簡単に Vine Linux4.2 で subversion + trac によるプロジェクト管理が行えるようになる。
個人的には git派だったりしますが、subversion は全然別目的で利用したかったのでいれた。
というわけで、作業ログ。
まず、apt の /etc/apt/sources.list で参照先を main plus updates nonfree extras にする。
rpm [vine] http://updates.vinelinux.org/apt 4.2/$(ARCH) main plus updates nonfree extras
rpm-src [vine] http://updates.vinelinux.org/apt 4.2/$(ARCH) main plus updates nonfree extras
そして、以下のように、apt でパッケージをひたすら入れる。
# apt-get update # apt-get install subversion # apt-get install subversion-devel # apt-get install subversion-perl # apt-get install subversion-python # apt-get install subversion-mod_dav_svn # apt-get install subversiom-tools # apt-get install neon # apt-get install neon-devel # apt-get install python # apt-get install python-devel # apt-get install python-egenix-mx-base # apt-get install python-tools # apt-get install python-setuptools # apt-get install python-babel # apt-get install python-genshi # apt-get install mod_python # apt-get install sqlite3 # apt-get install sqlite3-devel # apt-get install pysqlite # apt-get install enscript # apt-get install clearsilver # apt-get install silvercity # apt-get install trac
-y オプションをつけてパッケージ名を並べて入れてもOK。
見やすいので1行1パッケージで並べただけ。
そして、subversion リポジトリの作成(リポジトリは適当な場所に作成するといいお)。
# cd /home # mkdir svn # svnadmin create /home/svn/ReposName # chown -R apache:apache /home/svn
最後の chown は、web経由でリポジトリを参照するために、リポジトリのディレクトリに apache ユーザが権限をもてるようにするため。
一応、チェックアウトできるか確認。
# svn co file:///home/svn/ReposName cotest
「リビジョン 0 をチェックアウトしました。」とメッセージが出て、カレントディレクトリに cotest が作成されていればOK。
Subversion は無事動いている。
つづいて、trac の設定。
# cd /home # mkdir trac # trac-admin /home/trac/ProjectName initenv
対話形式による入力になるので、適切に答える。
SVN のパスは先ほど作成した リポジトリのパスを答える。
ちなみに、なにか入力をミスっても /home/trac/ProjectName ディレクトリを消してやり直すか、/home/trac/ProjectName/conf/trac.ini を書き換えれば済むので何もおそれることはない。
設定が済むと、tracがスタンドアローンで起動できる。
しかし、実用的には mod_python で動かした方が良いと思われる。
以下のように conf ファイルを2つ作成する。
[ /etc/apache2/conf.d/subversion.conf ]
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location "/svn">
DAV svn
SVNParentPath "/home/svn"
SVNListParentPath on
AuthType Basic
AuthName Subversion
AuthUserFile /etc/httpd/conf/.htpasswd
Require valid-user
</Location>
[ /etc/apache2/conf.d/trac.conf ]
LoadModule python_module modules/mod_python.so
<Location "/trac">
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir /home/trac
SetEnv PYTHON_EGG_CACHE /tmp/trac
AuthType Basic
AuthName trac
AuthUserFile /etc/httpd/conf/.htpasswd
Require valid-user
</Location>
Basic 認証用にユーザとパスワードを設定する。
# htpasswd -cm /etc/httpd/conf/.htpasswd username
まあ、ちなみに /etc/httpd/conf/.htpasswd は変なとこ過ぎると思うので、各自、好きな場所に変更してくださいです(うちは apache1.3.Xもうごいとるのです)。
そして、最後に、apache再起動。
# service apache2 restart
http://localhost/svn や http://localhost/trac にアクセスしてみます。
無事うごきましたか?
基本設定はこれで終了。
あとは好みに合わせてカスタマイズするべし。
id:myfinder ++
