TracOnTWikiContrib
Integrate the best of Trac into TWiki
Introduction
TWiki has been a long standing wiki champion in the industry, whilst Trac has proven to be a widely adopted software project management tool. Both has its strengths and weaknesses to which this Contrib integrates the best of both worlds!
This Contrib adds to Trac's database (and keeps up to date) the username and email address of TWiki users, and enables Trac to use the login functionality of TWiki. Thus a user that is logged into TWiki is automatically logged into Trac. TWiki users in %USERWEB%.TWikiAdminGroup will automatically have administration privileges (TRAC_ADMIN) in Trac.
TWiki:Plugins.PatternSkin
,
TWiki:Plugins.NatSkin
, and
TWiki:Plugins.MoveableTypeSkin
, are also ported to Trac for seamless UI integration.
A search feature is planned for the future to integrate both applications.
Installation Instructions
Pre-requisites
- On your TWiki, have an existing user in TWikiAdminGroup.
- A working Trac installation.
- A working installation of Web Admin UI
from SVN
- A working installation of Theme Engine Plugin
from SVN
- If you are using TWiki:Plugins.BugsContrib
, then disable Trac's wiki and ticketing system.
[components]
#disable the wiki part
trac.wiki.* = disabled
#disable the ticketing & milestones
trac.ticket.* = disabled
Installation of TracOnTWikiContrib
This Contrib requires
CPAN modules - DBI and DBD::SQLite
- Debian -
apt-get install libdbd-sqlite3-perl libdbi-perl libnet-daemon-perl libplrpc-perl
You do not need to install anything in the browser to use this extension. The following instructions are for the administrator who installs the extension on the server where TWiki is running.
Automatic installation
Like many other TWiki extensions, this module is shipped with a fully automatic installer script written using the BuildContrib.
- Automatic installation from the
configure interface (Plugins -> Find More Extensions)
- See the installation supplement
on TWiki.org for more information.
- In
configure, modify the settings accordingly,
- under User Managers,
-
{Plugins}{TracOnTWikiContrib}{Domain}
-
{Plugins}{TracOnTWikiContrib}{DBI_dsn}
-
{Plugins}{TracOnTWikiContrib}{DBI_username}
-
{Plugins}{TracOnTWikiContrib}{DBI_password}
- under Security setup -> Authentication,
- modify
{LoginManager} to TWiki::LoginManager::TracOnTWikiLogin
Manual installation
- Manual installation from the command-line:
- Download one of the
.zip or .tgz archives
- Unpack the archive in the root directory of your TWiki installation.
- Run the installer script (
perl <module>_installer )
- In
configure, modify the settings accordingly,
- under User Managers,
-
{Plugins}{TracOnTWikiContrib}{Domain}
-
{Plugins}{TracOnTWikiContrib}{DBI_dsn}
-
{Plugins}{TracOnTWikiContrib}{DBI_username}
-
{Plugins}{TracOnTWikiContrib}{DBI_password}
- under Security setup -> Authentication,
- modify
{LoginManager} to TWiki::LoginManager::TracOnTWikiLogin
Setting up TWiki skins
- To install TracOnTWikiContrib themes (MoveableTypeSkin, NatSkin, PatternSkin) into Trac,
cd /path/to/TracOnTWikiContrib/trac/MoveableTypeSkin/
EDIT moveabletypeskintheme/templates/css.cs to add your TWiki's css
EDIT moveabletypeskintheme/templates/header.cs to customise, header, body and sidebar
EDIT moveabletypeskintheme/templates/footer.cs to customise your footer
python setup.py bdist_egg
easy_install -Z dist/*.egg
- Enable the theme in Trac's Admin -> Plugins
- Select the theme in Trac's Admin -> Themes
Troubleshooting
- Reboot Apache if the plugins and themes are not visible or working in Trac.
- Make sure that the file permissions allow the webserver user (www-data or httpd) to access all files. See TWiki:TWiki.SettingFileAccessRightsLinuxUnix
- Check in any installed files for existing
,v files in your installation.
- Manually edit
LocalSite.cfg to set any configuration variables.
Additional integrations
Trac Hacks
has many plugins and customisations that can be applied to
Trac
. Some of them can be used to better integrate TWiki and Trac.
TWiki - InterwikiPlugin
Trac - DelegatedWikiPlugin
DelegatedWikiPlugin
allows you to redirect all Trac links to a specific TWiki url
Trac - AutoWikifyPlugin
AutoWikifyPlugin
allows you to link a large set of non-CamelCase words (e.g. TWiki's bug tracking system with the style of Bugs.Item1234) to TWiki. You'd need to modify
autowikify.py to remove the escaping of regex strings:
Replace
pattern = r'\b(?P' + '|'.join([re.escape(page) for page in pages]) + r')\b' with
pattern = r'\b(?P' + '|'.join([page for page in pages]) + r')\b'
Contrib Info
Many thanks to the following sponsors for supporting this work:
Related Topics: TWikiContribs,
DeveloperDocumentationCategory,
AdminDocumentationCategory,
TWikiPreferences