Trac

From ArchWiki
Jump to: navigation, search

From the project web page:

Trac is an enhanced wiki and issue tracking system for software development projects. Trac uses a minimalistic approach to web-based software project management. Our mission is to help developers write great software while staying out of the way. Trac should impose as little as possible on a team's established development process and policies.

Installation

Install the trac package. Configuration is done on a per-environment basis. See below on how to create an environment. Detailed instructions can be found at http://trac.edgewall.org/wiki/TracGuide.

Getting Started Quickly

Create and Initialize an Environment

Initialize an environment

# cd /srv/;
# mkdir tracenv;
# trac-admin /srv/tracenv initenv;

The environment configuration can be found at /srv/tracenv/conf/trac.ini.

Configure the systemd Service File

A default service file is located at /usr/lib/systemd/system/tracd.service. Copy this file to /etc/systemd/system/tracd.service, and edit it to point to your new environment. The ExecStart entry should look something like this:

ExecStart=/usr/bin/tracd -b localhost -p 8080 /srv/tracenv

Viewing Webserver

After Starting (and optionally enabling) the service (or running /usr/bin/tracd directly), you can view the web interface at http://localhost:8080 using a web browser.

Next Steps

Trac User

It is a good idea to create a user specially for the trac service. Once that user is created, you can create the environment using that user:

# cd /srv/;
# mkdir tracenv;
# chown trac:trac tracenv;
# sudo -u trac trac-admin /srv/tracenv initenv;

Add the following to the systemd unit file to make sure it is started as the trac user:

[Service]
User=trac
Group=trac

Users and Permissions within Trac

(This section refers to creating users within the trac environment rather than GNU/Linux users.)

Next, you'll want to add users and give permissions to those users. To add users, see http://trac.edgewall.org/wiki/TracStandalone#UsingAuthentication (you will have to change your .service file to refer to the authentication mechanism you choose). To grant permissions to users, run the following on the trac server:

# trac-admin /srv/tracenv permission add <username> TRAC_ADMIN

Further Examples

For a specific use case, see SCM Example Trac.