Tags:
documentation1Add my vote for this tag installation1Add my vote for this tag upgrade3Remove my vote on this tag create new tag
view all tags
ALERT! NOTE: This is a DistributionDocument.
  • Please help maintain high quality documentation: This is a wiki, please fix the documentation if you find errors or incomplete content.
  • Put questions and suggestions concerning the documentation of this topic in the comments section below.
  • Use the Support web for problems you are having using TWiki.
  • Use the Sandbox web to evaluate & test TWiki.

TWiki System Requirements

Server and client requirements

Low client and server base requirements are core features that keep TWiki widely deployable, particularly across a range of browser platforms and versions. Many Plugins and contrib modules exist which enhance and expand TWiki's capabilities; they may have additional requirements.

Server Requirements

TWiki is written in Perl 5, uses a number of shell commands, and requires RCS (Revision Control System), a GNU Free Software package. TWiki is developed in a basic Linux/Apache environment. It also works with Microsoft Windows, and should have no problem on any other platform that meets the requirements.

Resource Required Server Environment *
Perl 5.10.1 or higher
RCS 5.7 or higher (including GNU diff)
Optional, TWiki includes a pure Perl implementation of RCS that can be used instead (although it's slower)
GNU diff GNU diff 2.7 or higher is required when not using the all-Perl RcsLite.
Install on PATH if not included with RCS (check version with diff -v)
Must be the version used by RCS, to avoid problems with binary attachments - RCS may have hard-coded path to diff
GNU df Used by the site statistics to record disk usage statistics, optional. The df command is pre-installed on Linux and OS-X. On Windows install the CoreUtils for Windows.
GNU patch For upgrades only: GNU patch is required when using the TWiki:Codev.UpgradeTWiki script
GNU fgrep, egrep Modify command line parameters in configure if you use non-GNU grep programs
zip Zip archive command line utility. Used by the BackupRestorePlugin to create and restore from backups.
Cron/scheduler • Unix: cron
• Windows: cron equivalents
Web server Apache is well supported; see TWiki:TWiki.InstallingTWiki#OtherWebServers for other servers

Required CPAN Modules

Most of the CPAN libraries listesd below are part of a standard Perl installation so you most likely have them all!

See TWiki:TWiki.HowToInstallCpanModules for detailed information on how to install CPAN libraries

The following Perl CPAN modules are used by TWiki:

Module Preferred version Comment
Algorithm::Diff   Included in TWiki distribution
CGI >=3.18 & <=4.03 A suitable version ships with TWiki since TWiki-6.0.2 using CgiContrib, e.g. it is no longer necessary to install or downgrade this module. Versions 2.89 and 3.37, as well as version > 4.13 must be avoided.
CGI::Carp >=1.26  
Config >=0  
Cwd >=3.05  
Data::Dumper >=2.121  
Encode >=2.1  
Error   Included in TWiki distribution
File::Copy >=2.06  
File::Find >=1.05  
File::Spec >=3.05  
File::Temp >=0.18 This version included in Perl 5.9.5. File::Temp needs to be updated on RedHat 5 and CentOS 5.
FileHandle >=2.01  
HTML::Parser >=3.28 Needed by the WysiwygPlugin for WYSIWYG editing
HTML::Entities >=1.25 Needed by the WysiwygPlugin for WYSIWYG editing; part of the HTML::Parser package.
IO::File >=1.10  
LWP   Needed to install extensions in TWiki configure
Net::SMTP >=2.29 Used for sending mail
Text::Diff   Included in TWiki distribution
Time::Local >=1.11  

Optional CPAN Modules

The following Perl modules may be used by TWiki:

See TWiki:TWiki.HowToInstallCpanModules for detailed information on how to install CPAN libraries

Module Preferred version Description
Archive::Tar   May be required by the Extensions Installer in configure if command line tar or unzip is not available
Authen::SASL   Used for SMTP Authentication
CGI::Cookie >=1.24 Used for session support
CGI::Session >=3.95 Used for session support
Crypt::SMIME >=0.09 Required if S/MIME-signed administrative e-mail is enabled.
Digest::base    
Digest::SHA1    
JSON >=2.0 Required if TWikiSheetPlugin is used, or if JSON objects are stored and retrieved in SetGetPlugin
Locale::Maketext::Lexicon >=0 Used for I18N support
Net::SMTP >=2.29 Used for sending mail
URI   Used for configure

Most of them will probably already be available in your installation. You can check version numbers with the configure script, or if you're still trying to get to that point, check from the command line like this:

perl -e 'use FileHandle; print $FileHandle::VERSION."\n"'

Hardware Requirements

TWiki has quite lean hardware requirements. Get at minimum 2 cores CPU and 4GB RAM. Since TWiki runs under CGI, burstable CPU power is beneficial. Disk space depends on the use; 120GB should be sufficient for 100 users for many years.

If you are on Amazon EC2, a t3.medium instance type is sufficient, a t3.large is good. On the Google Cloud, a n1-highcpu-4 machine type is sufficient, a n1-highcpu-8 is good.

Client Requirements

The TWiki standard installation has relatively low browser requirements:

  • HTML 3.2 compliant
  • Cookies, if persistent sessions are required

CSS and Javascript are used in most skins, although there is a low-fat skin (Classic skin) available that minimizes these requirements. Some skins will require more recent releases of browsers. The default skin (Pattern) is tested on IE 6, Safari, and Mozilla 5.0 based browsers (such as Firefox).

You can easily select a balance of browser capability versus look and feel. Try the installed skins at TWikiSkinBrowser and more at TWiki:Plugins.SkinPackage.

Important note about TWiki Plugins

  • Plugins can require just about anything - browser-specific functions, stylesheets (CSS), Java applets, cookies, specific Perl modules,... - check the individual Plugin specs.

Related Topics: AdminDocumentationCategory



Comments & Questions about this Distribution Document Topic

Would be useful to include a reference to BrowserIssues (which should really be added to the TWiki docs - let me know best way to do this). I'd also like to discuss adding WindowsInstallCookbook to the doc set.

We should also recommend Perl 5.6.1, while supporting 5.005_03.

-- RichardDonkin - 24 Mar 2002

Reference to RCS updated to reflect all Perl implementation - TWiki:Codev/RcsLite

-- JohnTalintyre - 09 Apr 2002

Added that Perl 5.6.1 is recommended, though 5.005_03 is still the target for all TWiki code (see ReadmeFirst.

-- RichardDonkin - 20 Apr 2002

Apache authentication (security) warning for clear-text "basic authentication" and SSL recommendation might be good here. Thoughts?

-- GrantBow - 05 Jan 2003

It'd be useful to have more information on using TWiki with non-Apache webservers such as Netscape Enterprise Server (although maybe that type of information should be over at TWikiOn)?

-- GarethEdwards - 09 Jan 2003

I renamed this topic from TWikiImplementationNotes to the more accurate name TWikiSystemRequirements.

-- PeterThoeny - 16 Jan 2003

Added caveats about Perl 5.8.0 and Apache 2.0, since neither of these has been very much tested with TWiki and I suspect there are problems. I know there are issues with UTF8 on Perl 5.8 and authentication on Apache 2.0 for Windows, but I would be happy to be contradicted smile

This does imply an update/bugfix release fairly soon after BeijingRelease - no new features but some fixes for things like this.

-- RichardDonkin - 16 Jan 2003

Updated the part about using RcsLite for grammar and clarity, added reference to TWikiOn. BTW, the new name for this topic is much easier to remember!

-- RichardDonkin - 22 Jan 2003

Added links to pages on perl 5.8 on Codev and the best Apache topic I could find (in Support). I didn't see any other appropriate pages when doing "perl" or "apache" topic name searches.

-- GrantBow - 23 Jan 2003

Updated the Perl 5.8 link to IssuesWithPerl5dot8, and did similar for Apache 2.0.

-- RichardDonkin - 10 May 2003

Update re UTF-8 URLs, and to soften the non-recommendation of Perl 5.8.

-- RichardDonkin - 26 Jul 2004

Updated the Perl version recommendation to be 5.6.2 or 5.8.5, since many people have been using 5.8.x for a year with no problems - as discussed on IssuesWithPerl5dot8, have also updated WindowsInstallCookbook.

-- RichardDonkin - 10 Dec 2004

Softened the Apache 2 discouragement and suggested 2.0.50 or higher, based on the hanging issue now resolved in that version. Latest possible version recommended anyway, and IssuesWithApache2dot0 is your friend... Users of Apache 2 on Windows who require I18N should check status of ApacheTwoBreaksNonUTF8EncodedURLsOnWindows - currently, Apache 2.0's implementation of Unicode on Windows is causing some problems.

-- RichardDonkin - 10 Jan 2005

See RemoveNewTopicLinkStyleFromRenderDotPm where I propose to introduce minimal CSS for classic skin to show "new topic" links. This should work ok on Netscape 4.7, according to http://www.nic.fi/~tapio1/Teaching/Netscape.php3.

-- ArthurClemens - 22 Apr 2005

Re-applied Richard's Perl 5.8 link

-- TWikiGuest - 13 Oct 2005

Added patch as a requirement due to UpgradeTwiki dependency. This should go into any 4.0.x release of this doc as it caught a few people.

-- RichardDonkin - 03 Feb 2006

This topic is out of date for TWiki 4.

-- KennethLavrsen - 09 Apr 2006

Updated now to TWikiSystemRequirements content.

-- PeterThoeny - 09 Apr 2006

At the top of the page, it suggests to put changes in the comments section. As a user, I don't like this - it means I have to read pages to random comments to try and find something very simple (what version of perl is supported). It kind of defeats the point of a wiki - you might as well have a forum! However, if 'someone' plans to convert these comments into the 'official' part of this page, thats cool, but then this should be mentioned at the top of the page so that people (like me) don't get the wrong idea.

-- EricWoods - 29 Jan 2007

Ah, good point. The idea is the fix the documentation directly. The reference to the comment section is in regards to not using the comments section for support question (which happens qute often.) I fixed the top banner a bit to be more explicit. Please help fine-tune the message at DistributionDocHeader.

-- PeterThoeny - 30 Jan 2007

I updated the Required CPAN Modules table because I just built Perl 5.10 from sources and Algorithm::Diff, Error, and Text::Diff are simply not included.

-- JefferyMartin - 05 Dec 2008

The documentation on Algorithm::Diff, Error and Text::Diff was correct. They are not included in Perl, but they are included in the TWiki distribution, see twiki/lib/CPAN/lib directory.

The Encode module however is required.

I updated the docs accordingly.

-- PeterThoeny - 09 Dec 2008

Do you include the CPAN modules that you need but that are not included in the Perl base somewhere under twiki/lib/CPAN? If that is true, and the WysiwygPlugin is now part of the standard TWiki install, then you also need to include HTML::Parser.

-- JefferyMartin - 09 Dec 2008

Setup did not catch any missing modules, but I needed Unicode::String (ubuntu package libunicode-string-perl ) in order to complete the installation. Otherwise, I received an obscure @INC error about unicode path.

-- JerreCope - 2010-03-20

Thanks Jerre for reporting, this is a known issue.

-- PeterThoeny - 2010-03-21

Thank you DonSwift for refining the CGI version, this is now in the SVN repository for the next release.

-- Peter Thoeny - 2015-07-31

Please use the Support forum if you have questions about TWiki features. This comment section is about the documentation of this topic.
Edit | Attach | Watch | Print version | History: r73 < r72 < r71 < r70 < r69 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r73 - 2019-12-09 - PeterThoeny
 
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by Perl Hosted by OICcam.com Ideas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.