none
[openafs-wiki.git] / TWiki / TWikiSystemRequirements.mdwn
1 # <a name="TWiki System Requirements"></a> TWiki System Requirements
2
3 _Server and client requirements_
4
5 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|TWiki:Plugins/PluginPackage]] and [[contrib modules|TWiki:Plugins/ContribPackage]] exist which enhance and expand TWiki's capabilities; they may have additional requirements.
6
7 <div>
8   <ul>
9     <li><a href="#TWiki System Requirements"> TWiki System Requirements</a><ul>
10         <li><a href="#Server Requirements"> Server Requirements</a><ul>
11             <li><a href="#Required CPAN Modules"> Required CPAN Modules</a></li>
12             <li><a href="#Optional CPAN Modules"> Optional CPAN Modules</a></li>
13           </ul>
14         </li>
15         <li><a href="#Client Requirements"> Client Requirements</a></li>
16         <li><a href="#Important note about TWiki Plugi"> Important note about TWiki Plugins</a></li>
17       </ul>
18     </li>
19   </ul>
20 </div>
21
22 ## <a name="Server Requirements"></a> Server Requirements
23
24 TWiki is written in Perl 5, uses a number of shell commands, and requires [RCS (Revision Control System)](http://www.gnu.org/software/rcs/rcs.html), 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.
25
26 <table border="1" cellpadding="0" cellspacing="0">
27   <tr>
28     <th bgcolor="#99CCCC"><strong> Resource </strong></th>
29     <th bgcolor="#99CCCC"><strong> Required Server Environment * </strong></th>
30   </tr>
31   <tr>
32     <td> Perl </td>
33     <td> 5.6.1 or higher (5.8.4 or higher is recommended) </td>
34   </tr>
35   <tr>
36     <td> RCS </td>
37     <td> 5.7 or higher (including GNU <code>diff</code>) %BR% Optional, TWiki includes a pure perl implementation of RCS that can be used instead (although it's slower) </td>
38   </tr>
39   <tr>
40     <td> GNU <code>diff</code></td>
41     <td> GNU <code>diff</code> 2.7 or higher is required when not using the all-Perl RcsLite. %BR% Install on PATH if not included with RCS (check version with <code>diff -v</code>) %BR% Must be the version used by RCS, to avoid problems with binary attachments - RCS may have hard-coded path to <code>diff</code></td>
42   </tr>
43   <tr>
44     <td> GNU <code>patch</code></td>
45     <td> For upgrades only: GNU <code>patch</code> is required when using the TWiki:Codev.UpgradeTWiki script </td>
46   </tr>
47   <tr>
48     <td> GNU <code>fgrep</code>, <code>egrep</code></td>
49     <td> Modify command line parameters in configure if you use non-GNU grep programs </td>
50   </tr>
51   <tr>
52     <td> Cron/scheduler </td>
53     <td> %BULLET% Unix: <code>cron</code> %BB% Windows: <code>cron</code> equivalents </td>
54   </tr>
55   <tr>
56     <td> Web server </td>
57     <td> Apache is well supported; see TWiki:TWiki.InstallingTWiki#OtherWebServers for other servers </td>
58   </tr>
59 </table>
60
61 ### <a name="Required CPAN Modules"></a> Required CPAN Modules
62
63 The following Perl modules are used by TWiki:
64
65 <table border="1" cellpadding="0" cellspacing="0">
66   <tr>
67     <th bgcolor="#99CCCC"><strong> Module </strong></th>
68     <th bgcolor="#99CCCC"><strong> Preferred version </strong></th>
69   </tr>
70   <tr>
71     <td> Algorithm::Diff (included in TWiki distribution) </td>
72     <td>   </td>
73   </tr>
74   <tr>
75     <td> CGI::Carp </td>
76     <td> &gt;=1.26 </td>
77   </tr>
78   <tr>
79     <td> Config </td>
80     <td> &gt;=0 </td>
81   </tr>
82   <tr>
83     <td> Cwd </td>
84     <td> &gt;=3.05 </td>
85   </tr>
86   <tr>
87     <td> Data::Dumper </td>
88     <td> &gt;=2.121 </td>
89   </tr>
90   <tr>
91     <td> Encode </td>
92     <td> &gt;=2.1 </td>
93   </tr>
94   <tr>
95     <td> Error (included in TWiki distribution) </td>
96     <td>   </td>
97   </tr>
98   <tr>
99     <td> File::Copy </td>
100     <td> &gt;=2.06 </td>
101   </tr>
102   <tr>
103     <td> File::Find </td>
104     <td> &gt;=1.05 </td>
105   </tr>
106   <tr>
107     <td> File::Spec </td>
108     <td> &gt;=3.05 </td>
109   </tr>
110   <tr>
111     <td> File::Temp </td>
112     <td> (included with perl 5.6 and later) </td>
113   </tr>
114   <tr>
115     <td> FileHandle </td>
116     <td> &gt;=2.01 </td>
117   </tr>
118   <tr>
119     <td> IO::File </td>
120     <td> &gt;=1.10 </td>
121   </tr>
122   <tr>
123     <td> Text::Diff (included in TWiki distribution) </td>
124     <td>   </td>
125   </tr>
126   <tr>
127     <td> Time::Local </td>
128     <td> &gt;=1.11 </td>
129   </tr>
130 </table>
131
132 ### <a name="Optional CPAN Modules"></a> Optional CPAN Modules
133
134 The following Perl modules may be used by TWiki:
135
136 <table border="1" cellpadding="0" cellspacing="0">
137   <tr>
138     <th bgcolor="#99CCCC"><strong> Module </strong></th>
139     <th bgcolor="#99CCCC"><strong> Preferred version </strong></th>
140     <th bgcolor="#99CCCC"><strong> Description </strong></th>
141   </tr>
142   <tr>
143     <td> CGI::Cookie </td>
144     <td> &gt;=1.24 </td>
145     <td> Used for session support </td>
146   </tr>
147   <tr>
148     <td> CGI::Session </td>
149     <td> &gt;=3.95 </td>
150     <td> Used for session support </td>
151   </tr>
152   <tr>
153     <td> Digest::base </td>
154     <td>   </td>
155     <td>   </td>
156   </tr>
157   <tr>
158     <td> Digest::SHA1 </td>
159     <td>   </td>
160     <td>   </td>
161   </tr>
162   <tr>
163     <td> Jcode </td>
164     <td>   </td>
165     <td> Used for I18N support with perl 5.6 </td>
166   </tr>
167   <tr>
168     <td> Locale::Maketext::Lexicon </td>
169     <td> &gt;=0 </td>
170     <td> Used for I18N support </td>
171   </tr>
172   <tr>
173     <td> Net::SMTP </td>
174     <td> &gt;=2.29 </td>
175     <td> Used for sending mail </td>
176   </tr>
177   <tr>
178     <td> Unicode::Map </td>
179     <td>   </td>
180     <td> Used for I18N support with perl 5.6 </td>
181   </tr>
182   <tr>
183     <td> Unicode::Map8 </td>
184     <td>   </td>
185     <td> Used for I18N support with perl 5.6 </td>
186   </tr>
187   <tr>
188     <td> Unicode::MapUTF8 </td>
189     <td>   </td>
190     <td> Used for I18N support with perl 5.6 </td>
191   </tr>
192   <tr>
193     <td> Unicode::String </td>
194     <td>   </td>
195     <td> Used for I18N support with perl 5.6 </td>
196   </tr>
197   <tr>
198     <td> URI </td>
199     <td>   </td>
200     <td> Used for configure </td>
201   </tr>
202 </table>
203
204 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:
205
206     perl -e 'use FileHandle; print $FileHandle::VERSION."\n"'
207
208 <a name="ClientRequirements"></a>
209
210 ## <a name="Client Requirements"></a> Client Requirements
211
212 The TWiki [[standard installation|Main/TWikiInstallationGuide]] has relatively low browser requirements:
213
214 - HTML 3.2 compliant
215 - Cookies, if persistent sessions are required
216
217 CSS and Javascript are used in most skins, although there is a low-fat skin (Classic skin) available that minimises 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).
218
219 You can easily select a balance of browser capability versus look and feel. Try the installed skins at %SYSTEMWEB%.TWikiSkinBrowser and more at TWiki:Plugins.SkinPackage.
220
221 ## <a name="Important note about TWiki Plugi"></a> Important note about TWiki Plugins
222
223 - Plugins can require just about anything - browser-specific functions, stylesheets (CSS), Java applets, cookies, specific Perl modules,... - check the individual Plugin specs.
224
225 **_Related Topics:_** [[AdminDocumentationCategory]]