Installeren van Trac, voor geweldige justitie nl

Door YopY op dinsdag 11 mei 2010 13:37 - Reacties (7)
Categorie: -, Views: 6.097

Hé hé, tweakblogs menu weer gevonden.

Deze post zal in het Nederlands zijn, aangezien er al een redelijk leesbare handleiding voor het onderwerp van deze post beschikbaar is op het internet. De post is een beetje uit volgorde - in mijn vorige post beloofde ik dat ik het min of meer op volgorde ga doen, maar dat is heel moeilijk (ook aangezien ik nog niet aan het officiële plan begonnen ben).

Het onderwerp van deze post is onderdeel van een halfbakken serie over het opzetten van een ontwikkelomgeving. Om dit alvast uit te doeken te doen, mijn definitie van een ontwikkelomgeving betreft:
  • Een development server (aangezien het een webapp betreft
  • Een IDE (want een editor is gewoon niet pr0 genoeg
  • Een issue management systeem
  • De Rest
Het derde punt zal de gemiddelde hobbyist misschien een beetje vreemd overkomen, maar het is, denk ik, wel iets dat kan helpen met het op een georganiseerde manier werken. Je kunt het ook zien als een soort van 'to do list', zoals ik het in de eerste fase van het project ga gebruiken, waarbij je je features (en subfeatures) één voor één kunt afvinken. Als je het systeem goed bijhoudt, kun je zeggen dat je bij de eerste release versie bent zodra je alle issues die daarbij horen af hebt.

Maar dit is allemaal natuurlijker uit te leggen als het systeem er eenmaal staat. Nog een beetje achtergrond, en dan begin ik met de echte post.

Voor m'n werk (webdeveloper voor tot noch toe een dozijn-en-nogwat websites, samen met sinds een paar maand twee andere developers, sinds vorige week een projectmanager, en hopelijk binnenkort nog een frontend developer) gebruikten we de afgelopen twee jaar (nog van voor mijn tijd) nog Mantis, het systeem dat Tweakerts.net ook gebruikt.

Echter, op den duur voldeed dat niet meer. Het is op zich geen verkeerd systeem, maar het is voor een semi-leek zoals de non-developers onder ons niet makkelijk in gebruik of overzichtelijk, het voelt en lijkt zwaar uit de tijd, en zo nog een lijstje met dingen die, volgens ons, beter konden.

Het bedrijf van wie we het content management systeem in licentie hebben voor onze websites gebruiken intern Jira, een grote, bekende maar commerciële issue tracker, maar door de stevige prijsvoering niet echt een optie voor ons. Dus ik mocht op zoek gaan naar een alternatief.

Uitendelijk waren er twee kandidaten: Redmine, een issue tracker op Ruby on Rails gebouwd en Trac, nog een issue tracker op Python gebouwd. Beide systemen zijn globaal gezien vergelijkbaar qua features - issue tracker, ingebouwde wiki, integratie met Subversion, Mantis import optie, etc - en qua licentie - beide zijn het open source projecten - maar uiteindelijk is voor Trac gekozen omdat die volwassener oogt en voelt, meer gebruikers heeft en daaropvolgend ook beter support heeft, zouden er wel problemen zijn.

Dus, ik Trac installeren, met een verouderd en niet-werkend Mantis import script worstelen, en uiteindelijk is het gelukt.

Er lopen geruchten dat Trac moeilijk is om te installeren, en dit kan inderdaad waar zijn, maar als je de makkelijke weg kiest - zoals ik - valt het genoeg mee. Ik heb het in Windows geïnstalleerd (omdat we dat van de systeembeheerders kregen, :w), maar de installatie voor Linux en Mac moet vergelijkbaar zijn.

De makkelijke manier


1. Installeer Python.

Trac ondersteunt het redelijk splinternieuwe Python 3.0 nog niet - ook omdat die opzettelijk backwards compatibility de deur uitsmeet (wat ik alleen maar kan aanprijzen, overigens, mits de oude versie nog een tijd ondersteund wordt). Python >= 2.4 en < 3.0 is dus nodig. Wij hebben de meest recente stabiele 2.x versie gebruikt, [http://www.python.org/download/releases/2.6.5/]versie 2.6.5 van Python[/url]. 2.7 zit nog in béta, dus die hebben we nog niet gebruikt (wat overigens een beetje hypocriet is, aangezien we Trac 0.12 gebruiken, die ook nog maar net in de eerste beta zit).

Python 2.6.5 komt gewoon in een installer, dus kies je smaak, en gaan met die banaan. Vervolgens wil je Python ook in je systeem z'n PATH zetten. Ik weet niet of iedereen daar bekend mee is, dus:
  1. Rechtermuisklik op Deze Computer -> Eigenschappen
  2. Geavanceerde tab (XP), of linkje Geavanceerd in Windows 7, dan tab Geavanceerd.
  3. Knopje 'Omgevingsvariabelen' indrukken
  4. Pak de variabele 'PATH' (of 'Path') in het lijstje van systeemvariabelen, en vul deze aan. De bestaande informatie niet aanpassen, overigens. Scheidt het vorige pad in deze lijst met een puntkomma, en vul in:


    code:
    1
    
    c:\Python26\;c:\Python26\Scripts



    (waar c:\Python26 je installatiedirectory is). Zo kun je op de commandline Python aanroepen, en kan de andere software Python ook vinden.
De volgende stap:

2. installeer Setuptools.

Setuptools is een setje van installatietools voor Python bibliotheken, ruwweg gezegd. Dat maakt het installeren makkelijk. Ook dit komt gewoon in een installer voor Windows, dus selecteer je platform en de versie van Python die je hebt (de 2.6 versie in dit geval) en gaan met die banaan. De installer installeert een .exe in c:\Python26\Scripts, dus die werkt gelijk vanaf de commandline na installatie.

Tot zover het moeilijke gedeelte.


3. Installeer Genshi.

Genshi is een template taal voor Python, van dezelfde makers als Trac. Is nodig. Om het leven je makkelijk te maken, open een commandline (start -> uitvoeren -> cmd) en typ:


code:
1
easy_install Genshi



Even wachten, klaar.


4. Installeer Trac

Commandline, typ


code:
1
easy_install Trac



klaar.

Ja, dat is het.


5. Trac omgeving initialiseren

Vervolgens gaan we nog even "een Trac opzetten". Ga weer naar je commandline, en typ:


code:
1
trac-admin c:\trac\mijnproject initenv



Even wachten, klaar. Lijkt wel een magnetronmaaltijd. Dit commando zal je een tweetal vragen stellen - de naam van je project, en een database connectie string. Out-of-the-box komt Trac met ondersteuning voor SQLite, dus door gewoon op enter te drukken bij de databasevraag maakt Trac automagisch een SQLite databasebestand aan. Wij gebruiken het ook, en voor het meeste werk moet het gewoon voldoen.

Tenslotte starten we de webserver even op. Ja, Trac komt ook met een ingebouwde webserver.


code:
1
tracd --port 8000 c:\trac\mijnproject



Nu kun je een browser opstarten, en naar http://localhost:8000 gaan om je splinternieuwe Trac omgeving te bekijken. Of, een lijst met projecten die je lokaal hebt te draaien - je kunt per project een nieuwe Trac omgeving opzetten, wat wel zo makkelijk is als je de zaken gescheiden wilt houden.

Dat is het. Ik zal nu een eind aan deze post breien, want volgens mij ben ik al driemaal over de aandachtsspanne heen.

De moeilijke manier van Trac installeren behelst:
  • Het installeren en draaien onder je eigen webserver (Apache)
  • Het gebruiken van iets anders dan SQLite (mag je ook de databasebindings voor je databasesoftware gaan installeren)
  • Localisatie toevoegen (nog zwaar beta)
  • Trac (+ de rest) zelf compilen vanuit de source
Ik heb geen zin om dat allemaal uit te leggen (ook omdat ik het niet gedaan heb, :+), dus doe ik goedkoop en plaats nog een linkje naar de officiële installatiehandleiding (engels).

En met dat sluit ik af. Ik kan, indien zo gewenst, nog een post wijden aan de werkwijze die ik zal aanhouden - als daar vraag naar is natuurlijk.

Verder zou ongezouten kritiek op deze post ook welkom zijn - duidelijkheid, schrijfstijl (opzettelijk informeel), leesbaarheid, nuttigheid, etcetera. Maar ik verwacht niks minder, :w.

Volgende: [FGJ] Organizing your ideas 05-'10 [FGJ] Organizing your ideas
Volgende: FGJ: A development project blog 05-'10 FGJ: A development project blog

Reacties


Door Tweakers user CodeCaster, dinsdag 11 mei 2010 13:53

Ik heb het met mod_proxy onder Apache draaiend gehad, dan wordt achter de schermen gewoon pyhton gebruikt zonder dat je daar aan hoeft te komen, en kun je wel makkelijk url's rewriten en dergelijke :)

Door Tweakers user afraca, dinsdag 11 mei 2010 14:10

Tja, wat valt er over te zeggen. Enige is inderdaad dat je wel de TRAC beta pakt maar niet de python beta, maar ach, dat zal niks uitmaken. Ik vind een dergelijk ontwikkelingstraject bijzonder leuk te volgen via zo'n blog, en de keuze om bijvoorbeeld deze post in het nederlands te doen, en andere in het engels is uitstekend onderbouwd en sta ik 100% achter :) Het is niet ondenkbaar dat deze blogpost me wat motivatie geeft om voor een hobbyprojectje ook Trac te gebruiken. Tja, wellicht wat overkill, maar het is leuk om er kennis mee te maken en makkelijk voor jezelf om zo soort van to-do list te creeëren.

[Reactie gewijzigd op dinsdag 11 mei 2010 14:11]


Door Tweakers user Nick_S, dinsdag 11 mei 2010 14:57

Ik zie dat Trac 0.11.7 ook in de Ubuntu repositories zit. Deze is dus gewoon te installeren via aptitude install trac. (Dit niet om je post onderuit te halen, maar puur als extra info)

Door Tweakers user YopY, dinsdag 11 mei 2010 18:42

Nick_S schreef op dinsdag 11 mei 2010 @ 14:57:
Ik zie dat Trac 0.11.7 ook in de Ubuntu repositories zit. Deze is dus gewoon te installeren via aptitude install trac. (Dit niet om je post onderuit te halen, maar puur als extra info)
:) ik was bijna geneigd om mijn hele post weg te gooien en te vervangen met apt-get install trac. Bijna. Maar toch een goeie tip voor de Linux gebruikers onder ons.

Waarschijnlijk is het ook redelijk eenvoudig om een volledige Trac installatie in een Windows installer te bakken.

Door Tweakers user afraca, dinsdag 11 mei 2010 21:12

YopY schreef op dinsdag 11 mei 2010 @ 18:42:
[...]


:) ik was bijna geneigd om mijn hele post weg te gooien en te vervangen met apt-get aptitude install trac. Bijna. Maar toch een goeie tip voor de Linux ubuntu/mintgebruikers onder ons.
There, I fixed it :Y)

Door Tweakers user YopY, woensdag 12 mei 2010 09:13

Aptitude is niet Ubuntu / Mint-specifiek, voor zover ik weet :+. Iets met Linux en open source enzo. Oké, andere distros (non-Debian) gebruiken misschien een ander systeem, maar dat is maar een detail.

Door Tweakers user drwho81, woensdag 12 mei 2010 10:27

En nog een aantal voorstellen (software die ik zelf getest heb):

http://www.osticket.com/ (osticket)
http://collabtive.o-dyn.de/ (collabtive)

Reageren is niet meer mogelijk