Subversionの設定 †
インストール †
# apt-get install subversion libapache2-svn
ユーザを作成 †
ユーザを作成
# useradd -d /home/svn -s /bin/bash svn
ホームディレクトリを作成
# mkdir /home/svn # chown -R svn:svn /home/svn
レポジトリを作成 †
svnユーザに変更
# su - svn
レポジトリを作成
$ svnadmin create /home/svn/repos
オーナとパーミッションを変更
$ chown -R svn: www-data repos $ chown -R g+w repos
svnユーザをwww-dataグループに追加(スーパーユーザーに戻る)
# vigr 以下の行にsvnを追加 www-data:x:48:www-data,svn
httpアクセス設定 †
パスワードファイルを作成
# htpasswd -c /usr/local/share/svn/.htpasswd username
/etc/apache2/mods-enabled/dav_svn.conf を編集
<Location /svn_xxx> DAV svn SVNPath /home/svn/repos AuthzSVNAccessFile /usr/local/share/svn/dav_svn.authz AuthUserFile /usr/local/share/svn/.htpasswd AuthGroupFile /dev/null AuthName "Subversion Repository" AuthType Basic Require valid-user Satisfy All allow from 192.168.1.0/24 deny from all </Location>
dav_svn.authzの作成
[groups] group1 = user1,user2 [/] * = @group1 = rw
Apacheを再起動して,http://127.0.0.1/svn_xxx にアクセスをしてみる.
認証が求められて,正しいユーザ名/パスワードを入力するとディレクトリが表示される.
tracの設定 †
インストール †
apt-get install trac trac-ja-resource libapache2-mod-python
設定 †
保存先ディレクトリの作成
$ mkdir /home/svn/trac
初期設定
$ trac-admin /home/svn/trac/projname initenv 途中でtemplateの質問には"/usr/share/trac-ja-resource/templates"を指定
日本語のwikiをロードする
$ trac-admin /home/svn/trac/projname wiki load /usr/share/trac-ja-resource/wiki-default
オーナとパーミッションを変更
$ chown -R svn: www-data trac $ chown -R g+w trac
Apacheの設定変更(/etc/apache2/conf.d/tracを作成)
<Location /trac> SetHandler mod_python PythonHandler trac.web.modpython_frontend PythonOption TracEnvParentDir /var/trac PythonOption TracUriRoot /trac SetEnv PYTHON_EGG_CACHE /usr/local/share/svn/ </Location> <LocationMatch "/trac/[^/]+/login"> AuthType Basic AuthName "trac" AuthUserFile /usr/local/share/svn/.htpasswd Require valid-user Satisfy All allow from 192.168.1.0/24 deny from all </LocationMatch>
AuthUserFile?をSVNで使ったものと同じにする.
Apacheを再起動してhttp://127.0.0.1/trac にアクセスしてみる.
amd64の環境なのでApache起動時にエラーがでる.
- /var/log/apache2/error.logの該当箇所
TracError: ClearSilver not installed (/usr/lib/python2.5/site-packages/neo_cgi.so: undefined symbol: Py_InitModule4)
clearsilverをインストールする
# apt-get build-dep python-clearsilver # apt-get install python-dev # 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 --with-python=/usr/bin/python2.5 # make # make install
ソースブラウザの文字コードを自動判定にする †
- 参考
- chardetモジュールのインストール
# apt-get install python-chardet
- パッチファイルの編集
ヤマロぶろぐにあるパッチファイルの行数をmiau's blog?を参考に編集する. - patchを当てる
api.pyが複数あったので全てにpatchを当てていく.# cd /var/lib/python-support/python2.4/ # patch -p1 < /tmp/trac_charset.patch # cd /var/lib/python-support/python2.5/ # patch -p1 < /tmp/trac_charset.patch # cd /usr/share/python-support/trac/ # patch -p1 < /tmp/trac_charset.patch # cd /usr/share/trac-ja-resource/python/ # patch -p1 < /tmp/trac_charset.patch
プラグインのインストール †
webadminプラグインのインストール †
- EasyInstall?をインストール
setuptoolsからez_setup.pyをダウンロード# python ez_setup.py
- webadminをインストール
チェックアウト# svn co http://svn.edgewall.com/repos/trac/sandbox/webadmin/
ビルド&インストール
# cd webadmin # python setup.py install
trac.iniの編集(/home/svn/trac/projname/conf/trac.ini).以下を最終行に追加
[components] webadmin.* = enabled
利用するユーザにTRAC_ADMIN権限を付与
# trac-admin /path/to/trac/ permission add username TRAC_ADMIN
Apacheを再起動してログインをすると"admin"タグが増えている.
AuthzWebadminPlugin?のインストール †
- インストール
# svn co http://trac-hacks.org/svn/authzwebadminplugin # cd authzwebadminplugin/0.9/ # python setup.py install
- 設定
trac.iniに以下を追加[trac] authz_file = /usr/local/share/svn/subversion.authz
TracのWebにアクセスして,adminのpluginからenableに設定する.
Account Manager Pluginのインストール †
- インストール
Trac HacksのFor Trac 0.10:に従う.# easy_install http://trac-hacks.org/svn/accountmanagerplugin/0.10
Tracのadminタブのplug-inにAccountManager? 0.1.3dev-r3515が追加されている.必要なモジュールのenableにチェックをいれる.