Install Trac on Windows 2003 server

I was searching for some task / ticket management system for my small project I’m doing with a friend. Previously we were using Nozbe but it became too small and it had its own glitches. I did some research and decided to go for Trac. It’s simple, expandable and integrates nicely with subversion.

I spent almost two days installing it on my Windows 2003 development / test server so I wrote a step-by-step manual for future reference.

It assumes you already have a Win2003 server with subversion repository. I also use SVNService to run it as a service. We’ll be using tracd web server with digest authentication for developer access.

Here we go.
Text written in constant-width font is a command you run from command prompt.
I’ll assume you’re creating a project called RuleTheWorld. Replace it with your project name.

  1. Install Python -> c:\program files\python
  2. Add “c:\program files\python” to %PATH%
  3. Install Tools -> http://peak.telecommunity.com/DevCenter/EasyInstall#installation-instructions
  4. Add “c:\program files\python\scripts” to %PATH%
  5. easy_install Genshi
  6. md c:\program files\trac, cd there
  7. svn checkout http://svn.edgewall.org/repos/trac/trunk
  8. cd trunk
  9. python setup.py install
  10. trac-admin "c:\program files\trac\RuleTheWorld" initenv
  11. http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91
  12. tracd -p 8080 "c:\program files\trac\RuleTheWorld"
  13. go to http://localhost:8080 with a browser, check if it works
  14. download Apache installation pack for windows, extract htdigest.exe from it
  15. F25539_htdigest.exe -c passwd trac username
  16. trac-admin "c:\program files\trac\RuleTheWorld" permission add username TRAC_ADMIN
  17. easy_install TracSpamFilter – if you’ll be setting up a public Trac access
  18. In trac.ini, add the following section at the end
    [components]
    tracspamfilter.* = enabled
  19. download http://trac-hacks.org/changeset/latest/tracpygmentsplugin?old_path=/&filename=tracpygmentsplugin&format=zip
  20. unzip it, cd that folder, run python setup.py install
  21. In trac.ini add this line
    [components]
    tracpygments.* = enabled
  22. In trac.ini modify this line
    [ticket]
    restrict_owner = true
  23. download http://trac-hacks.org/changeset/latest/discussionplugin?old_path=/&filename=discussionplugin&format=zip
  24. unzip it, cd that folder, run python setup.py install
  25. In trac.ini modify this section
    [header_logo]
    alt = RuleTheWorld
    height = -1
    link = /RuleTheWorld
    src = /RuleTheWorld/raw-attachment/wiki/logo/logo.png
    width = -1
  26. trac-admin "C:\Program Files\Trac\RuleTheWorld" upgrade
  27. tracd -p 8080 -a "RuleTheWorld","C:\Program Files\Trac\RuleTheWorld\passwd",trac "C:\Program Files\Trac\RuleTheWorld"
  28. Go to http://localhost:8080/RuleTheWorld, you should see main page of the project. Go to Admin / Plugins, enable discussion components
  29. trac-admin "C:\Program Files\Trac\RuleTheWorld" upgrade
  30. Go to Admin / Permissions, remove Anonymous access
  31. Add “C:\Program Files\SQLite” to %PATH%
  32. Install Trac as a service. Use SrvAny from Resource kit – follow the manual at http://support.microsoft.com/kb/137890/en-us. Put tracd -p 8080 -a "RuleTheWorld","C:\Program Files\Trac\RuleTheWorld\passwd",trac "C:\Program Files\Trac\RuleTheWorld" as “Parameters” key, the service should start fine

That’s it! In 32 simple steps ;)

Leave a Reply

Your email address will not be published. Required fields are marked *