[[PageOutline]]
= Trac =
== links ==
* [http://d.hatena.ne.jp/kanu-orz/20100921/1285038921 チケットとカスタムクエリの日付表示フォーマットを変える - almost nearly dead]
* [http://d.hatena.ne.jp/ohgui/20090528/1243528476 TracLightningでプロジェクト毎に違うCSS - 大食雑記]
* [http://d.hatena.ne.jp/ohgui/20100811/1281533285 TracBrowserがSVNの巨大なChangesetを処理しきれない場合へのフェイルセーフ - 大食雑記]
== install Trac 0.12 ==
* 0.12からデフォルトでローカライズされているが、[http://www.i-act.co.jp/project/products/products.html インタアクト株式会社]のtrac-jaでは更にデフォルトのWikiページ等が日本語化されている。
* 方針として、aptitudeで十分なパッケージはaptitudeから導入する
* [http://blog.ciklone.com/2010/05/14/%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%97%E3%81%9Ftrac%E3%82%92%E6%97%A5%E6%9C%AC%E8%AA%9E%E5%8C%96%E3%81%99%E3%82%8B/ インストールしたTracを日本語化する - ciklone blog | Webベースバグ管理・バージョン管理システム]
=== Dependencies ===
* sudo aptitude install -R -y python-setuptools
* sudo aptitude install -R -y python-subversion
* sudo aptitude install -R -y python-pygments
* sudo easy_install pytz
* sudo easy_install Genshi
* Trac 0.12はGenshi 0.6以上を必要とするが、aptitudeから導入出来るのはpython-genshi => 0.5.1-2ubuntu1なため
* sudo easy_install Babel
* aptitude install python-pybabelで導入できる0.9.4でも動作するが、[http://trac.edgewall.org/wiki/TracInstall#OtherPythonPackages 公式]ではBabel 0.9.5以上と書かれているため。
=== clean install with original Trac-0.12.tar.gz ===
* wget http://ftp.edgewall.com/pub/trac/Trac-0.12.tar.gz
* ~/Trac-0.12$ python setup.py compile_catalog -f
* ~/Trac-0.12$ sudo python setup.py install
=== clean install with Trac-0.12.ja1.zip ===
* sudo aptitude install -R -y unzip
* wget http://www.i-act.co.jp/project/products/downloads/Trac-0.12.ja1.zip
* ~/Trac-0.12$ sudo python setup.py install
* trac-jaではcomlie_catalogは指定しなくよい(暗黙的にcompileされる)
=== upgrade from 0.11 to 0.12 ===
* インストールまでは上記と同様
* /static/trac/へのリンクを切り替える
* ex) sudo rm /var/www/trac; sudo ln -s /usr/local/lib/python2.6/dist-packages/Trac-0.12.ja1-py2.6.egg/trac/htdocs /var/www/trac
* sudo trac-admin /path/to/var/trac/test/ upgrade
* sudo trac-admin /path/to/var/trac/test/ wiki upgrade
== Access control with Apache ==
* see also #11
* 閲覧するだけであればGETメソッドを使うため、trac-adminで権限制御を行うほかにApache側でLimitを用いて編集を拒否することが出来る。
{{{
Options FollowSymLinks
AllowOverride None
Order Deny,Allow
Deny from all
ScriptAlias /trac /usr/share/trac/cgi-bin/trac.fcgi
Order Allow,Deny
Allow from all
Order Allow,Deny
Deny from all
}}}
* Orderディレクティブは省略時(デフォルト)では「Order Deny,Allow」と解釈されるので、以下のように略記できる。 => wiki:TipAndDoc/network/httpd#Accesscontrol
{{{
ScriptAlias /trac /usr/share/trac/cgi-bin/trac.fcgi
Deny from all
}}}