netfrag.org . TWiki . TWikiImplementationNotes

TWiki Implementation Notes

Platforms and System Requirements

TWiki is written in Perl 5 and also uses some shell commands. The current implementation runs best on a Unix machine, but it is also possible on Microsoft Windows. RCS (for revision control) must be installed on the system. [ MM: Locate elsewhere and/or include one-liner and link for RCS... ]

Required Environment by Platform
Packages: Linux/Unix: Windows:
Perl 5.x 5.x
Non-standard Perl modules ??? MIME::Base64, Digest::SHA1 (for password generation)
Optional Perl modules Net::SMTP (or sendmail) Net::SMTP
RCS 5.7 5.7 (including diff
Other external programs ls, fgrep, egrep ls, fgrep, egrep
Web server Apache Apache, IIS
OS versions Linux, Unix... every last Win?!

Directory Structure

You can easily rename the root TWiki directory - twiki - to whatever you like by changing it in the twiki.cfg configuration file. However, to keep the current installation and future upgrades simple, you should leave the subdirectory structure - the folder names and locations - exactly as is:

Directory: Files: Used for:
twiki list Start-up info
twiki/bin list Perl scripts
twiki/lib list Configuration file & main library
twiki/lib/TWiki list Perl modules
twiki/lib/TWiki/Plugins list TWikiPlugins Perl modules
twiki/pub list Public support files (ex: FileAttachments, images) and RCS histories)
twiki/data list Topic text (page content) and RCS histories;
twiki/templates list HTML templates, used by TWiki scripts

Note: about the additional directories in data, elsewhere

Files in twiki

File: Used for:
index.html A page with a link to first launch TWiki after install.
license.txt Gnu General Public License and TWiki-specific info.
readme.txt General TWiki start-up info with relevant URLs.
TWikiDocumentation.html All documentation packaged as a single page.
TWikiHistory.html TWiki development timeline.

Files in twiki/bin

File: Used for:
.htaccess.txt Authentication. Rename to .htaccess and customize if used
attach Script that shows the attach file page (FileAttachment)
delete (not used yet)
edit Script to edit a topic
geturl Script to fetch URL data
mailnotify Script called by cron job to notify users of changes
oops Script that shows an OK or oops dialog
preview Script to preview topic after edit
rdiff Script to see differences of topics
rename Script to rename/move topics and move attachments
register Script to register new users
save Script that saves a topic, called by preview
search Script that displays search results
statistics Script to create statistics topic
testenv Script to test CGI environment variables
upload Script that does file upload (FileAttachment)
view Script to view a topic ( the script )
viewfile Script to view an file attachment

Files in twiki/lib

File: Used for:
TWiki.pm Main TWiki library
TWiki.cfg For configuration, used by TWiki.pm

Files in twiki/lib/TWiki

File: Used for:
Access.pm Access control
Attach.pm Attachment handling
Meta.pm Meta data in topics
Net.pm SMTP mail handling
Plugins.pm Plugin handling
Prefs.pm Preferences handling
Search.pm Search engine, used by wiki.pm
Store.pm Back-end storage, *.txt text file and *.txt,v RCS repository file handling

Files in twiki/lib/TWiki/Plugins

File: Used for:
DefaultPlugin.pm Default plugin
EmptyPlugin.pm Empty plugin, use to create your own
InterwikiPlugin.pm Refer to external Wikis and other Web sites

Files in twiki/pub

File: Used for:

favicon.ico xxxx
twikilogo.gif xxxx
twikilogo1.gif xxxx
twikilogo2.gif xxxx
twikilogo3.gif xxxx
twikilogo4.gif xxxx
wikiHome.gif xxxx
icn/_filetypes.txt xxxx
icn/bat.gif xxxx
icn/bmp.gif xxxx
icn/c.gif xxxx
icn/dll.gif xxxx
icn/doc.gif xxxx
icn/else.gif xxxx
icn/exe.gif xxxx
icn/fon.gif xxxx
icn/h.gif xxxx
icn/hlp.gif xxxx
icn/html.gif xxxx
icn/java.gif xxxx
icn/mov.gif xxxx
icn/pdf.gif xxxx
icn/pl.gif xxxx
icn/ppt.gif xxxx
icn/ps.gif xxxx
icn/py.gif xxxx
icn/ram.gif xxxx
icn/reg.gif xxxx
icn/sh.gif xxxx
icn/sniff.gif xxxx
icn/ttf.gif xxxx
icn/txt.gif xxxx
icn/wav.gif xxxx
icn/wri.gif xxxx
icn/xls.gif xxxx
icn/zip.gif xxxx
Know/IncorrectDllVersionW32PTH10DLL/W32PTH10.DLL xxxx
TWiki/FileAttachment/Sample.txt xxxx
TWiki/FileAttachment/Smile.gif xxxx
TWiki/PreviewBackground/blankltgraybg.gif xxxx
TWiki/PreviewBackground/blankwhitebg.gif xxxx
TWiki/PreviewBackground/previewbg.gif xxxx
TWiki/WabiSabi/wabisabi.gif xxxx

Files in twiki/data

File: Used for:
.htpasswd xxxx
debug.txt xxxx
mime.types xxxx
warning.txt xxxx
_default/.changes xxxx
_default/WebChanges.txt xxxx
_default/WebChanges.txt,v xxxx
_default/WebHome.txt xxxx
_default/WebHome.txt,v xxxx
_default/WebIndex.txt xxxx
_default/WebIndex.txt,v xxxx
_default/WebNotify.txt xxxx
_default/WebNotify.txt,v xxxx
_default/WebPreferences.txt xxxx
_default/WebPreferences.txt,v xxxx
_default/WebSearch.txt xxxx
_default/WebSearch.txt,v xxxx
_default/WebStatistics.txt xxxx
_default/WebStatistics.txt,v xxxx
Know/.changes xxxx
Know/.mailnotify xxxx
Know/IncorrectDllVersionW32PTH10DLL.txt xxxx
Know/IncorrectDllVersionW32PTH10DLL.txt,v xxxx
Know/NoDisclosure.txt xxxx
Know/NoDisclosure.txt,v xxxx
Know/OperatingSystem.txt xxxx
Know/OperatingSystem.txt,v xxxx
Know/OsHPUX.txt xxxx
Know/OsHPUX.txt,v xxxx
Know/OsLinux.txt xxxx
Know/OsLinux.txt,v xxxx
Know/OsMacOS.txt xxxx
Know/OsMacOS.txt,v xxxx
Know/OsSolaris.txt xxxx
Know/OsSolaris.txt,v xxxx
Know/OsSunOS.txt xxxx
Know/OsSunOS.txt,v xxxx
Know/OsVersion.txt xxxx
Know/OsVersion.txt,v xxxx
Know/OsWin.txt xxxx
Know/OsWin.txt,v xxxx
Know/PublicFAQ.txt xxxx
Know/PublicFAQ.txt,v xxxx
Know/PublicSupported.txt xxxx
Know/PublicSupported.txt,v xxxx
Know/ReadmeFirst.txt xxxx
Know/ReadmeFirst.txt,v xxxx
Know/SunOS.txt xxxx
Know/SunOS.txt,v xxxx
Know/TopicClassification.txt xxxx
Know/TopicClassification.txt,v xxxx
Know/TWikiCategory.txt xxxx
Know/TWikiCategory.txt,v xxxx
Know/UseCategory.txt xxxx
Know/UseCategory.txt,v xxxx
Know/WebChanges.txt xxxx
Know/WebChanges.txt,v xxxx
Know/WebForm.txt xxxx
Know/WebForm.txt,v xxxx
Know/WebHome.txt xxxx
Know/WebHome.txt,v xxxx
Know/WebIndex.txt xxxx
Know/WebIndex.txt,v xxxx
Know/WebNotify.txt xxxx
Know/WebNotify.txt,v xxxx
Know/WebPreferences.txt xxxx
Know/WebPreferences.txt,v xxxx
Know/WebSearch.txt xxxx
Know/WebSearch.txt,v xxxx
Know/WebStatistics.txt xxxx
Know/WebStatistics.txt,v xxxx
Know/WebTopicEditTemplate.txt xxxx
Know/WebTopicEditTemplate.txt,v xxxx
Know/WinDoze95Crash.txt xxxx
Know/WinDoze95Crash.txt,v xxxx
Main/TWikiAdminGroup.txt,v xxxx
Main/.mailnotify xxxx
Main/FileAttachment.txt xxxx
Main/FileAttachment.txt,v xxxx
Main/JohnTalintyre.txt xxxx
Main/JohnTalintyre.txt,v xxxx
Main/KevinKinnell.txt xxxx
Main/KevinKinnell.txt,v xxxx
Main/LondonOffice.txt xxxx
Main/LondonOffice.txt,v xxxx
Main/NicholasLee.txt xxxx
Main/NicholasLee.txt,v xxxx
Main/NobodyGroup.txt xxxx
Main/NobodyGroup.txt,v xxxx
Main/OfficeLocations.txt xxxx
Main/OfficeLocations.txt,v xxxx
Main/PeterThoeny.txt xxxx
Main/PeterThoeny.txt,v xxxx
Main/SanJoseOffice.txt xxxx
Main/SanJoseOffice.txt,v xxxx
Main/TokyoOffice.txt xxxx
Main/TokyoOffice.txt,v xxxx
Main/TWikiAdminGroup.txt xxxx
Main/.changes xxxx
Main/TWikiGroups.txt xxxx
Main/TWikiGroups.txt,v xxxx
Main/TWikiGuest.txt xxxx
Main/TWikiGuest.txt,v xxxx
Main/TWikiUsers.txt xxxx
Main/TWikiUsers.txt,v xxxx
Main/TWikiVariables.txt xxxx
Main/TWikiVariables.txt,v xxxx
Main/WebChanges.txt xxxx
Main/WebChanges.txt,v xxxx
Main/WebHome.txt xxxx
Main/WebHome.txt,v xxxx
Main/WebIndex.txt xxxx
Main/WebIndex.txt,v xxxx
Main/WebNotify.txt xxxx
Main/WebNotify.txt,v xxxx
Main/WebPreferences.txt xxxx
Main/WebPreferences.txt,v xxxx
Main/WebSearch.txt xxxx
Main/WebSearch.txt,v xxxx
Main/WebStatistics.txt xxxx
Main/WebStatistics.txt,v xxxx
Test/.changes xxxx
Test/.mailnotify xxxx
Test/TestTopic1.txt xxxx
Test/TestTopic1.txt,v xxxx
Test/WebChanges.txt xxxx
Test/WebChanges.txt,v xxxx
Test/WebHome.txt xxxx
Test/WebHome.txt,v xxxx
Test/WebIndex.txt xxxx
Test/WebIndex.txt,v xxxx
Test/WebNotify.txt xxxx
Test/WebNotify.txt,v xxxx
Test/WebPreferences.txt xxxx
Test/WebPreferences.txt,v xxxx
Test/WebSearch.txt xxxx
Test/WebSearch.txt,v xxxx
Test/WebStatistics.txt xxxx
Test/WebStatistics.txt,v xxxx
Trash/.changes xxxx
Trash/WebChanges.txt xxxx
Trash/WebChanges.txt,v xxxx
Trash/WebHome.txt xxxx
Trash/WebHome.txt,v xxxx
Trash/WebIndex.txt xxxx
Trash/WebIndex.txt,v xxxx
Trash/WebNotify.txt xxxx
Trash/WebNotify.txt,v xxxx
Trash/WebPreferences.txt xxxx
Trash/WebPreferences.txt,v xxxx
Trash/WebSearch.txt xxxx
Trash/WebSearch.txt,v xxxx
Trash/WebStatistics.txt xxxx
Trash/WebStatistics.txt,v xxxx
TWiki/.changes xxxx
TWiki/.mailnotify xxxx
TWiki/AlWilliams.txt xxxx
TWiki/AlWilliams.txt,v xxxx
TWiki/AndreaSterbini.txt xxxx
TWiki/AndreaSterbini.txt,v xxxx
TWiki/BillClinton.txt xxxx
TWiki/BillClinton.txt,v xxxx
TWiki/BookView.txt xxxx
TWiki/BookView.txt,v xxxx
TWiki/BumpyWord.txt xxxx
TWiki/BumpyWord.txt,v xxxx
TWiki/ChristopheVermeulen.txt xxxx
TWiki/ChristopheVermeulen.txt,v xxxx
TWiki/CrisBailiff.txt xxxx
TWiki/CrisBailiff.txt,v xxxx
TWiki/DavidWarman.txt xxxx
TWiki/DavidWarman.txt,v xxxx
TWiki/DefaultPlugin.txt xxxx
TWiki/DefaultPlugin.txt,v xxxx
TWiki/DeleteOrRenameATopic.txt xxxx
TWiki/DeleteOrRenameATopic.txt,v xxxx
TWiki/DeleteTopic.txt xxxx
TWiki/DeleteTopic.txt,v xxxx
TWiki/DontNotify.txt xxxx
TWiki/DontNotify.txt,v xxxx
TWiki/EditDoesNotIncreaseTheRevision.txt xxxx
TWiki/EditDoesNotIncreaseTheRevision.txt,v xxxx
TWiki/EmptyPlugin.txt xxxx
TWiki/EmptyPlugin.txt,v xxxx
TWiki/ExampleTopicTemplate.txt xxxx
TWiki/ExampleTopicTemplate.txt,v xxxx
TWiki/FileAttachment.txt xxxx
TWiki/FileAttachment.txt,v xxxx
TWiki/GnuGeneralPublicLicense.txt xxxx
TWiki/GnuGeneralPublicLicense.txt,v xxxx
TWiki/GoodStyle.txt xxxx
TWiki/GoodStyle.txt,v xxxx
TWiki/HaroldGottschalk.txt xxxx
TWiki/HaroldGottschalk.txt,v xxxx
TWiki/Hey.txt xxxx
TWiki/Hey.txt,v xxxx
TWiki/IncludeTopicsAndWebPages.txt xxxx
TWiki/IncludeTopicsAndWebPages.txt,v xxxx
TWiki/InterwikiPlugin.txt xxxx
TWiki/InterwikiPlugin.txt,v xxxx
TWiki/InterWikis.txt xxxx
TWiki/InterWikis.txt,v xxxx
TWiki/JaneDoeTestCreateForm.txt xxxx
TWiki/JaneDoeTestCreateForm.txt,v xxxx
TWiki/JaneDoeTestEditForm.txt xxxx
TWiki/JaneDoeTestEditForm.txt,v xxxx
TWiki/JohnAltstadt.txt xxxx
TWiki/JohnAltstadt.txt,v xxxx
TWiki/JohnTalintyre.txt xxxx
TWiki/JohnTalintyre.txt,v xxxx
TWiki/KevinKinnell.txt xxxx
TWiki/KevinKinnell.txt,v xxxx
TWiki/ManpreetSingh.txt xxxx
TWiki/ManpreetSingh.txt,v xxxx
TWiki/MetaDataDefinition.txt xxxx
TWiki/MetaDataDefinition.txt,v xxxx
TWiki/MoveTopic.txt xxxx
TWiki/MoveTopic.txt,v xxxx
TWiki/MoveWeb.txt xxxx
TWiki/MoveWeb.txt,v xxxx
TWiki/NicholasLee.txt xxxx
TWiki/NicholasLee.txt,v xxxx
TWiki/PeterFokkinga.txt xxxx
TWiki/PeterFokkinga.txt,v xxxx
TWiki/PeterThoeny.txt xxxx
TWiki/PeterThoeny.txt,v xxxx
TWiki/PreviewBackground.txt xxxx
TWiki/PreviewBackground.txt,v xxxx
TWiki/RandyKramer.txt xxxx
TWiki/RandyKramer.txt,v xxxx
TWiki/RegularExpression.txt xxxx
TWiki/RegularExpression.txt,v xxxx
TWiki/RenameTopic.txt xxxx
TWiki/RenameTopic.txt,v xxxx
TWiki/SearchDoesNotWork.txt xxxx
TWiki/SearchDoesNotWork.txt,v xxxx
TWiki/SimultaneousEdits.txt xxxx
TWiki/SimultaneousEdits.txt,v xxxx
TWiki/StandardColors.txt xxxx
TWiki/StandardColors.txt,v xxxx
TWiki/StanleyKnutson.txt xxxx
TWiki/StanleyKnutson.txt,v xxxx
TWiki/SvenDowideit.txt xxxx
TWiki/SvenDowideit.txt,v xxxx
TWiki/TextFormattingFAQ.txt xxxx
TWiki/TextFormattingFAQ.txt,v xxxx
TWiki/TextFormattingRules.txt xxxx
TWiki/TextFormattingRules.txt,v xxxx
TWiki/TWikiAccessControl.txt xxxx
TWiki/TWikiAccessControl.txt,v xxxx
TWiki/TWikiAdministration.txt xxxx
TWiki/TWikiAdministration.txt,v xxxx
TWiki/TWikiAuthentication.txt xxxx
TWiki/TWikiAuthentication.txt,v xxxx
TWiki/TWikiCategoryTable.txt xxxx
TWiki/TWikiCategoryTable.txt,v xxxx
TWiki/TWikiContributor.txt xxxx
TWiki/TWikiContributor.txt,v xxxx
TWiki/TWikiDocumentation.txt xxxx
TWiki/TWikiDocumentation.txt,v xxxx
TWiki/TWikiDownload.txt xxxx
TWiki/TWikiDownload.txt,v xxxx
TWiki/TWikiEnhancementRequests.txt xxxx
TWiki/TWikiEnhancementRequests.txt,v xxxx
TWiki/TWikiFAQ.txt xxxx
TWiki/TWikiFAQ.txt,v xxxx
TWiki/TWikiFormTemplate.txt xxxx
TWiki/TWikiFormTemplate.txt,v xxxx
TWiki/TWikiHistory.txt xxxx
TWiki/TWikiHistory.txt,v xxxx
TWiki/TWikiImplementationNotes.txt xxxx
TWiki/TWikiImplementationNotes.txt,v xxxx
TWiki/TWikiInstallationNotes.txt xxxx
TWiki/TWikiInstallationNotes.txt,v xxxx
TWiki/TWikiNotificationOfChanges.txt xxxx
TWiki/TWikiNotificationOfChanges.txt,v xxxx
TWiki/TWikiPlannedFeatures.txt xxxx
TWiki/TWikiPlannedFeatures.txt,v xxxx
TWiki/TWikiPlugins.txt xxxx
TWiki/TWikiPlugins.txt,v xxxx
TWiki/TWikiPreferences.txt xxxx
TWiki/TWikiPreferences.txt,v xxxx
TWiki/TWikiRegistration.txt xxxx
TWiki/TWikiRegistration.txt,v xxxx
TWiki/TWikiRegistrationPub.txt xxxx
TWiki/TWikiRegistrationPub.txt,v xxxx
TWiki/TWikiSkins.txt xxxx
TWiki/TWikiSkins.txt,v xxxx
TWiki/TWikiTemplates.txt xxxx
TWiki/TWikiTemplates.txt,v xxxx
TWiki/TWikiTutorial.txt xxxx
TWiki/TWikiTutorial.txt,v xxxx
TWiki/TWikiTutorialKK.txt xxxx
TWiki/TWikiUpgradeNotes.txt xxxx
TWiki/TWikiUpgradeNotes.txt,v xxxx
TWiki/TWikiUpgradeTo01May2000.txt xxxx
TWiki/TWikiUpgradeTo01May2000.txt,v xxxx
TWiki/TWikiUsernameVsLoginUsername.txt xxxx
TWiki/TWikiUsernameVsLoginUsername.txt,v xxxx
TWiki/TWikiVariables.txt xxxx
TWiki/TWikiVariables.txt,v xxxx
TWiki/TWikiWeb.txt xxxx
TWiki/TWikiWeb.txt,v xxxx
TWiki/TWikiWebsTable.txt xxxx
TWiki/TWikiWebsTable.txt,v xxxx
TWiki/UnlockTopic.txt xxxx
TWiki/UnlockTopic.txt,v xxxx
TWiki/WabiSabi.txt xxxx
TWiki/WabiSabi.txt,v xxxx
TWiki/WebChanges.txt xxxx
TWiki/WebChanges.txt,v xxxx
TWiki/WebHome.txt xxxx
TWiki/WebHome.txt,v xxxx
TWiki/WebIndex.txt xxxx
TWiki/WebIndex.txt,v xxxx
TWiki/WebNotify.txt xxxx
TWiki/WebNotify.txt,v xxxx
TWiki/WebPreferences.txt xxxx
TWiki/WebPreferences.txt,v xxxx
TWiki/WebSearch.txt xxxx
TWiki/WebSearch.txt,v xxxx
TWiki/WebStatistics.txt xxxx
TWiki/WebStatistics.txt,v xxxx
TWiki/WebTopicEditTemplate.txt xxxx
TWiki/WebTopicEditTemplate.txt,v xxxx
TWiki/WebTopicNonWikiTemplate.txt xxxx
TWiki/WebTopicNonWikiTemplate.txt,v xxxx
TWiki/WebTopicViewTemplate.txt xxxx
TWiki/WebTopicViewTemplate.txt,v xxxx
TWiki/WelcomeGuest.txt xxxx
TWiki/WelcomeGuest.txt,v xxxx
TWiki/WhatIsWikiWiki.txt xxxx
TWiki/WhatIsWikiWiki.txt,v xxxx
TWiki/WikiCulture.txt xxxx
TWiki/WikiCulture.txt,v xxxx
TWiki/WikiName.txt xxxx
TWiki/WikiName.txt,v xxxx
TWiki/WikiNotation.txt xxxx
TWiki/WikiNotation.txt,v xxxx
TWiki/WikiReferences.txt xxxx
TWiki/WikiReferences.txt,v xxxx
TWiki/WikiSyntax.txt xxxx
TWiki/WikiSyntax.txt,v xxxx
TWiki/WikiTopic.txt xxxx
TWiki/WikiTopic.txt,v xxxx
TWiki/WikiWikiClones.txt xxxx
TWiki/WikiWikiClones.txt,v xxxx
TWiki/WikiWord.txt xxxx
TWiki/WikiWord.txt,v xxxx

Files in twiki/templates

File: Used for:
oopsbadpwformat.tmpl xxxx
attachagain.tmpl xxxx
attachnew.tmpl xxxx
changeform.tmpl xxxx
changes.tmpl xxxx
edit.iejs.tmpl xxxx
edit.tmpl xxxx
mailnotify.tmpl xxxx
moveattachment.tmpl xxxx
oopsaccesschange.tmpl xxxx
oopsaccessgroup.tmpl xxxx
oopsaccessrename.tmpl xxxx
oopsaccessview.tmpl xxxx
oopsauth.tmpl xxxx
attach.tmpl xxxx
oopschangepasswd.tmpl xxxx
oopsempty.tmpl xxxx
oopslocked.tmpl xxxx
oopslockedrename.tmpl xxxx
oopsmissing.tmpl xxxx
oopsmoveerr.tmpl xxxx
oopsnoformdef.tmpl xxxx
oopsnotwikiuser.tmpl xxxx
oopsnoweb.tmpl xxxx
oopspreview.tmpl xxxx
oopsregexist.tmpl xxxx
oopsregpasswd.tmpl xxxx
oopsregrequ.tmpl xxxx
oopsregthanks.tmpl xxxx
oopsregwiki.tmpl xxxx
oopsrenameerr.tmpl xxxx
oopsresetpasswd.tmpl xxxx
oopsrev.tmpl xxxx
oopssave.tmpl xxxx
oopssaveerr.tmpl xxxx
oopssendmailerr.tmpl xxxx
oopstopicexists.tmpl xxxx
oopsupload.tmpl xxxx
oopswrongpassword.tmpl xxxx
preview.tmpl xxxx
rdiff.tmpl xxxx
register.tmpl xxxx
registernotify.tmpl xxxx
rename.tmpl xxxx
renamebase.tmpl xxxx
renameconfirm.tmpl xxxx
renamerefs.tmpl xxxx
search.tmpl xxxx
searchbookview.tmpl xxxx
searchmeta.tmpl xxxx
searchrenameview.tmpl xxxx
twiki.tmpl xxxx
view.plain.tmpl xxxx
view.print.tmpl xxxx
view.tmpl xxxx

-- MikeMannix - 29 Aug 2001

----- Revision r1.9 - 30 Aug 2001 - 00:04 - MikeMannix?