arch-wiki-md-repo
Version:
All arch-wiki articles in markdown format, updated every two days.
85 lines (53 loc) • 3.31 kB
Markdown
From the [project web page](http://trac.edgewall.org):
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.
## Contents
* [1 Installation](#Installation)
* [2 Getting Started Quickly](#Getting_Started_Quickly)
* [2.1 Create and Initialize an Environment](#Create_and_Initialize_an_Environment)
* [2.2 Configure the systemd Service File](#Configure_the_systemd_Service_File)
* [2.3 Viewing Webserver](#Viewing_Webserver)
* [3 Next Steps](#Next_Steps)
* [3.1 Trac User](#Trac_User)
* [3.2 Users and Permissions within Trac](#Users_and_Permissions_within_Trac)
* [3.3 Further Examples](#Further_Examples)
## Installation
[Install](/index.php/Install "Install") the [trac](https://aur.archlinux.org/packages/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](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](/index.php/Start "Start") (and optionally [enabling](/index.php/Enabling "Enabling")) the service (or running `/usr/bin/tracd` directly), you can view the web interface at `[http://localhost:8080](http://localhost:8080)` using a web browser.
## Next Steps
### Trac User
It is a good idea to create a [user](/index.php/User "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](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](/index.php/SCM_Example_Trac "SCM Example Trac").