release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Search | Go
Wiki > System > ReferenceManual > SystemRequirements

Foswiki System Requirements

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

Server Requirements

Foswiki is written in Perl 5, which is supported on Microsoft Windows as well as Unix and Unix-like systems (including Linux and OSX), on which it uses a number of shell commands and RCS (Revision Control System), a GNU Free Software package. It should be able to run on any server platform that meets the following requirements.

Resource Required Server Environment
Perl 5.8.8 or higher
RCS 5.7 or higher (including GNU diff)
Optional. Foswiki includes a pure Perl implementation of RCS (RcsLite?) that can be used instead, at the cost of performance
GNU diff GNU diff 2.7 or higher is required when not using the all-Perl RcsLite?.
Install within the 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
Other external programs fgrep, egrep
Cron/scheduler • Unix: cron
• Windows: cron equivalents
Web server Apache is well supported; for information on other servers, see Foswiki:Support.InstallingOnSpecificPlatforms.

Perl Modules

A complete list of the required and optional Perl modules can be found in lib/DEPENDENCIES.

The following CPAN modules are not shipped with Foswiki. Note that Foswiki extensions may add additional requirements. Modules marked as Required may still be optional if certain default core features are not used.

Module Required/Optional Description
CGI::Session Required Sessions support is usually required.
HTML::Entities Required Used for WYSIWYG Editing
HTML::Parser Required Used for WYSIWYG Editing
HTML::Tree Required Used by CompareRevisionAddOn?.
URI Required Used for email notifications of topic changes. MailerContrib?
LWP Required Used by the Configure Extensions Installer, and for external URL based INCLUDEs
Digest::SHA Optional Required to use SHA1 password encoding, since Perl 5.9.3 part of core
Crypt::PasswdMD5 Optional Required to use Apache or Crypt MD5 password encoding, and crypt encoding on Windows
Digest::SHA1 Optional Required by the Foswiki FileCache? feature
Win32::Console Optional May be required for I18N? on Windows
Archive::Tar Optional Required by the Extensions Installer in configure if command line tar or unzip is not available, since Perl 5.9.3 part of core.
Archive::Zip Optional Alternative to Archive::Tar, used by the Extensions Installer if Archive::Tar and command line tar and unzip also unavailable
Net::SMTP::SSL Optional Required by Net::SMPT to send email over SSL to providers such as gmail.
Authen::SASL Optional Required by Net::SMTP if email server requires authentication.

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"'
For more detailed dependency information, try the script dependencies_installer.pl located in the tools directory, which makes perl module installation easier. Run it with option -h to understand basics. This script requires confirmation before it actually does something.

Specific distribution details

Ubuntu and other Debian derived distributions

Install apache and rcs apt-get install apache2 rcs

Perl Module Package to install Notes
CGI::Session libcgi-session-perl  
HTML::Parser libhtml-parser-perl  
HTML::Entities   included with HTML::Parser
HTML::Tree libhtml-tree-perl  
LWP libwww-perl  
Digest::SHA libdigest-sha-perl  
Digest::SHA1 libdigest-sha1-perl  
URI liburi-perl  
Crypt::PasswdMD5 libcrypt-passwdmd5-perl  
Net::SMTP::SSL libnet-smtp-ssl  
Authen::SASL libauthen-sasl note, broken on Ubuntu 11.10 x64. Install using CPAN!

After expanding the Foswiki archive, change the ownership of the files:
  • Debian, Ubuntu, Kubunto: chown -R www-data:www-data /path/to/foswiki

RedHat, SuSE, CentOS and other RPM based distributions

Install apache2, rcs, and perl-CPAN

Perl Module Package to install Notes
CGI::Session perl-CGI-Session  
HTML::Parser perl-HTML-Parser  
HTML::Entities   included with HTML::Parser
HTML::Tree perl-HTML-Tree  
LWP perl-libwww-perl  
Digest::SHA perl-Digest-SHA  
Digest::SHA1 perl-Digest-SHA1  
URI perl-URI  
Crypt::PasswdMD5 perl-Crypt-PasswdMD5  
Net::SMTP::SSL perl-Net-SMPT-SSL  
Authen::SASL perl-Authen-SASL  

After expanding the Foswiki archive, change the ownership of the files:
  • RedHat, Fedora, CentOS Mandriva: chown -R apache:apache /path/to/foswiki=
  • Suse: chown -R wwwrun:www /path/to/foswiki

Client Requirements

The standard installation has relatively low browser requirements:

  • XHTML 1.0 Transitional compliant
  • Cookies, if persistent sessions are required
  • Javascript, for edit/save/upload functionality
    TIP Change {ValidationMethod}{Method} from strikeone to embedded in configure to allow non-javascript browsers to edit/save/upload

CSS and Javascript are used in most skins. Some skins will require more recent releases of browsers. The default skin is tested on IE 6+, Safari, Chrome and Firefox.

You can easily select a balance of browser capability versus look and feel. Try the installed skins at SkinBrowser and more at Foswiki:Extensions.SkinPackage.


Related Topics: AdminDocumentationCategory

r1 - 06 Dec 2010 - 17:08:31 - ProjectContributor
This site is powered by FoswikiCopyright © by the contributing authors. All material on this site is the property of the contributing authors.
Ideas, requests, problems regarding Wiki? Send feedback