Etch de trac

後述するテストのために、tracの動作環境をする。
Etchでは、日本語化キットがパッケージになっていて便利。
DBは手軽なSqliteで。
Sargeベースの時と違って、tracをインストールしても、Webサーバーは入らないみたいだ。

# apt-get install trac trac-ja-resource
Reading package lists... Done
Building dependency tree... Done
The following extra packages will be installed:
  libapr1 libaprutil1 libneon26 libpq4 libsqlite3-0 libsvn1 python-clearsilver
  python-pysqlite2 python-subversion python-support subversion
Suggested packages:
  subversion-tools db4.4-util enscript python-docutils libapache2-mod-python
Recommended packages:
  python-setuptools

入ったバージョンは、trac 0.10.3-1、subversion 1.4.2dfsg1-2。

リポジトリ名は"kinneko"で。

# mkdir /var/svn
# cd /var/svn/
# svnadmin create kinneko
# chown -R www-data.www-data ./
# find ./
./
./kinneko
./kinneko/dav
./kinneko/locks
./kinneko/locks/db.lock
./kinneko/locks/db-logs.lock
./kinneko/hooks
./kinneko/hooks/start-commit.tmpl
./kinneko/hooks/pre-commit.tmpl
./kinneko/hooks/pre-revprop-change.tmpl
./kinneko/hooks/pre-lock.tmpl
./kinneko/hooks/pre-unlock.tmpl
./kinneko/hooks/post-commit.tmpl
./kinneko/hooks/post-lock.tmpl
./kinneko/hooks/post-unlock.tmpl
./kinneko/hooks/post-revprop-change.tmpl
./kinneko/conf
./kinneko/conf/svnserve.conf
./kinneko/conf/passwd
./kinneko/conf/authz
./kinneko/README.txt
./kinneko/db
./kinneko/db/fs-type
./kinneko/db/revs
./kinneko/db/revs/0
./kinneko/db/revprops
./kinneko/db/revprops/0
./kinneko/db/transactions
./kinneko/db/current
./kinneko/db/write-lock
./kinneko/db/format
./kinneko/db/uuid
./kinneko/format
  • tracプロジェクトを作成

tracプロジェクト名もリポジトリと合わせて"kinneko"を使う。

# mkdir /var/trac
# cd /var/trac/
# trac-admin /var/trac/kinneko initenv
Project Name [My Project]> kinneko
Database connection string [sqlite:db/trac.db]>
Repository type [svn]>
Path to repository [/path/to/repos]> /var/svn/kinneko
Templates directory [/usr/share/trac/templates]> /usr/share/trac-ja-resource/templates
  • tracを単独起動して動作確認

デフォルト設定は以下のようになっている。

# cat /var/trac/kinneko/conf/trac.ini
# -*- coding: utf-8 -*-

[attachment]
max_size = 262144
render_unsafe_content = false

[browser]
downloadable_paths = /trunk, /branches/*, /tags/*
hide_properties = svk:merge

[changeset]
max_diff_bytes = 10000000
max_diff_files = 0
wiki_format_messages = true

[header_logo]
alt =
height = -1
link = http://example.org/
src = common/trac_banner.png
width = -1

[logging]
log_file = trac.log
log_level = DEBUG
log_type = none

[mimeviewer]
enscript_modes = text/x-dylan:dylan:4
enscript_path = enscript
max_preview_size = 262144
mime_map = text/x-dylan:dylan,text/x-idl:ice,text/x-ada:ads:adb
php_path = php
silvercity_modes =
tab_width = 8

[notification]
always_notify_owner = false
always_notify_reporter = false
always_notify_updater = true
mime_encoding = base64
smtp_always_bcc =
smtp_always_cc =
smtp_default_domain =
smtp_enabled = false
smtp_from = trac@localhost
smtp_password =
smtp_port = 25
smtp_replyto = trac@localhost
smtp_server = localhost
smtp_subject_prefix = __default__
smtp_user =
use_public_cc = false
use_short_addr = false
use_tls = false

[project]
descr = My example project
footer = Visit the Trac open source project at<br /><a href="http://trac.edgewall.org/">http://trac.edgewall.org/</a>
icon = common/trac.ico
name = kinneko
url = http://example.org/

[search]
min_query_length = 3

[ticket]
default_component =
default_milestone =
default_priority = major
default_type = defect
default_version =
restrict_owner = false

[timeline]
changeset_long_messages = false
changeset_show_files = 0
default_daysback = 30
ticket_show_details = false

[trac]
authz_file =
authz_module_name =
base_url =
check_auth_ip = true
database = sqlite:db/trac.db
default_charset = iso-8859-15
default_handler = WikiModule
htdocs_location =
ignore_auth_case = false
mainnav = wiki,timeline,roadmap,browser,tickets,newticket,search
metanav = login,logout,settings,help,about
permission_store = DefaultPermissionStore
repository_dir = /var/svn/kinneko
repository_type = svn
# request_filters = <set in global trac.ini>
templates_dir = /usr/share/trac-ja-resource/templates
timeout = 20

[wiki]
ignore_missing_pages = false
split_page_names = false

とりあえず内容は後で修正する。


起動して動作の確認をしてみる。

# tracd --port 8000 /var/trac/kinneko &

ブラウザでアクセスして、以下のように表示されていれば動作している。

Available Projects

* kinneko

kinnekoを選んで、tracが動作しているかチェックする。
メニューは日本語になっていて、Wikiも編集できるのを確認する。
プロセスはkillして終了。