Trac Integrated SCM and Project Management
Edgewall Software

Trac is an Open Source Issue Tracking system that integrates into the Subversion VCS. This makes it an intriguing solution for CTSC. The current version of Trac is 0.7.1 and it is built upon several other Open Source software products.

Due in part to the number of dependencies, the installation of Trac is a little bit involved. This document will take you though the installation onto a Windows environment.

If Subversion is not already installed and running in your environment, please see the documentation for setting up Subversion prior to continuing with this installation. Make sure the release numbers are the same as those listed above.

The Subversion installation requires Apache, Python and Subversion. This leaves SQLite, PySQLite, SilverCity and Trac for this document to cover.

Subversion Python Bindings

For some reason, the Python bindings for Subversion were not installed during the Subversion installation. Evidently, Subversion does not need these bindings but Trac does. The bindings are available in the same page that the Subversion binaries were found. They include two folders; /libsvn and /svn. Copy these two folders to the \Python23\Lib folder of your Python installation.

SQLite

Install SQLite to your Program Files\SQLite folder. Ensure this directory is in your PATH environment variable.

PySQLite

Execute the PySQLite installer.

Trac

Trac requires two installations due to a problem with the current installer. First, install version 0.7 and then install version 0.7.1. The installation is a wizard and all questions are straight forward. Be sure to mark down the drive and directory into which you install Trac as you will need to do some custom configuration later armed with this info.

Post Installation Configuration
Configure the Trac DB
Other documentation exists for the Trac installation. Look at the file TracOnWindows in the \Python23\share\trac\wiki-default folder.

As you begin to work with Trac, you may wish to rename or add/delete categorization terms such as

To manage these lists, use the DOS command as before

c:\Python23\scripts> python trac-admin c:\svn\trac.db

  Trac [c:\svn\trac.db]> {component|priority|severity|version|milestone} {add|remove|list|rename} <value> <newvalue>

Or simply type Help at the Trac [c:\svn\trac.db]> prompt.

Also, a nice customization is to use the CTSC logo on the header, replacing the Trac logo. To do this, copy the ctsc.png file to the \Python23\share\trac\htdocs directory. Next, edit the trac.ini file in the c:\svn\trac.db\conf directory. Replace the [header] block with the following:

  [header_logo]
  src = ctsc.png
  alt = Chenega Technology Services Corporation
  height = 67
  link = http://ctsc.net/
  width = 246

If you would like the Trac system to send emails, edit the trac.ini file. This time, change the smtp_enabled from false to true

  [notification]
  smtp_replyto = <email of account of admin. e.g. Bill.Shary@ctsc.net>
  smtp_always_cc =
  smtp_server = <email server, e.g. smtp.gci.net>
  smtp_enabled = true
  smtp_from = Trac Issue Tracking System