view · edit · print · history

Instruction (can it be any simpler?)

install optware packages

 # ipkg update
 # ipkg install svn svn-py py25-trac sqlite py25-setuptools

create local svn repos (example with two repos, one called mars, another venus)

 $ mkdir -p ~/tmp/{mars,venus}/{branches,tags,trunk}
 $ mkdir -p ~/svn-repo/{mars,venus}
 $ svnadmin create ~/svn-repo/mars
 $ svnadmin create ~/svn-repo/venus
 $ svn import ~/tmp/mars file://$HOME/svn-repo/mars -m "initial import of mars"
 $ svn import ~/tmp/venus file://$HOME/svn-repo/venus -m "initial import of venus"
 $ rm -rf ~/tmp/{mars,venus}

initialize trac environment (example with two projects, one mars, another venus)

 $ mkdir -p ~/trac-env/{mars,venus}
 $ trac-admin ~/trac-env/mars initenv
 ... answer the questions
 $ trac-admin ~/trac-env/venus initenv
 ... answer the questions

Run tracd

 $ tracd --port 8000 $HOME/trac-env/{mars,venus}

An alternative way to serve multiple projects is to specify a parent directory in which each subdirectory is a Trac project, using the -e option. The example above could be rewritten:

 $ tracd --port 8000 -e $HOME/trac-env

browse to



  • fastcgi setup with other web server, such as nginx, lighttpd, or cherokee
  • mod_wsgi, mod_fastcgi or mod_python setup with apache
  • tighten security
  • SSL should be handled by the front web server
  • Other SCM backend, e.g. mercurial, or git


view · edit · print · history · Last edited by Schmollmolch.
Based on work by BrianZhou, Geoff, and Sebastien.
Originally by BrianZhou.
Page last modified on June 28, 2008, at 11:31 AM