trac-install # Trac and clearsilver deb http://ftp.edgewall.com/pub/debian/ sarge trac apt-get install trac apache2 libapache2-svn subversion-tools libapache2-mod-python python-egenix-mxdatetime a2enmod dav a2enmod dav_fs a2enmod mod_python a2dissite default #apt-get install subversion #libapache2-mod-python python-docutils enscript prjpath="/home/svn/projects" tracpath="/home/trac/projects" #prjgrp="xyzdev" prjname="prj000" prjdir="$prjpath/$prjname" mkdir -p $prjdir svnadmin create --fs-type fsfs $prjdir mkdir -p /tmp/project/tags mkdir -p /tmp/project/trunk mkdir -p /tmp/project/branches chown www-data $prjdir chown -R www-data $prjdir/* chgrp www-data $prjdir chgrp -R www-data $prjdir/* svn import /tmp/project file://$prjdir -m "Initial empty project" rm -rf /tmp/project #SVN dir cat > /etc/apache2/sites-available/$prjname-projects << EOF ServerName projects.$prjname.usyd.edu.au ServerAdmin webmaster@localhost DocumentRoot /var/www/$prjname-projects Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all # This directive allows us to have apache2's default start page # in /apache2-default/, but still have / go to the right place ErrorLog /var/log/apache2/$prjname-projects-error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/$prjname-projects-access.log combined ServerSignature On Alias /icons/ "/usr/share/apache2/icons/" Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all # Removed (Using mod_python) # # # SetEnv TRAC_ENV "/var/www/$prjname-projects" # Alias /trac "/usr/share/trac/htdocs" SetHandler mod_python PythonHandler trac.ModPythonHandler PythonOption TracUriRoot "/" PythonOption TracEnv $tracpath/$prjname/ # You need something like this to authenticate users AuthType Basic AuthName "$prjname projects" AuthUserFile $tracpath/$prjname/$prjname.htpasswd Require valid-user SetHandler None Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all EOF #a2ensite trac mkdir -p $tracpath/$prjname trac-admin $tracpath/$prjname initenv a2ensite $prjname-projects mkdir -p /var/www/$prjname-projects htpasswd -c $tracpath/$prjname/$prjname.htpasswd admin /etc/init.d/apache2 force-reload