(no commit message)
[ikiwiki] / doc / install.mdwn
1 This page documents how to install ikiwiki if a prepackaged version is not
2 available for your distribution, and you are faced with [[downloading|download]]
3 the source and installing by hand. Ikiwiki should work on most unix-like
4 systems.
5
6 ## Dependencies
7
8 Ikiwiki is a perl program, and needs a recent version of perl such as
9 5.10. (5.8.0 has been reported not to work).
10
11 It's recommended you have a C compiler, as ikiwiki uses one to build
12 wrappers.
13
14 Ikiwiki requires the [[!cpan Text::Markdown]], [[!cpan URI]],
15 [[!cpan HTML::Parser]], [[!cpan HTML::Template]], and [[!cpan HTML::Scrubber]]
16 perl modules be installed. It can also use a lot of other perl modules, if
17 they are available.
18
19 Various [[plugins]] use other perl modules and utilities; see their individual
20 documentation for details.
21
22 ### Installing dependencies with yum
23
24 Here's an example of how to install ikiwiki's dependencies using yum
25 on Fedora 7:
26
27         yum install perl-Text-Markdown perl-Mail-Sendmail perl-HTML-Scrubber \
28           perl-XML-Simple perl-TimeDate perl-HTML-Template perl-CGI-FormBuilder \
29           perl-CGI-Session perl-File-MimeInfo perl-gettext perl-Authen-Passphrase
30
31 ### Installing dependencies by hand
32
33 If you want to install by hand from the tarball, you should make sure that
34 all the perl modules are installed. This is one way to install them, using
35 CPAN:
36
37         PERL5LIB=`pwd` PERL_MM_USE_DEFAULT=1 perl -MCPAN -e 'CPAN::Shell->install("Bundle::IkiWiki")'
38         PERL5LIB=`pwd` PERL_MM_USE_DEFAULT=1 perl -MCPAN -e 'CPAN::Shell->install("Bundle::IkiWiki::Extras")'
39
40 ## Installing ikiwiki by hand
41
42 Then to build and install ikiwiki:
43
44         perl Makefile.PL # PREFIX=/dir to install elsewhere
45         make
46         make test # optional
47         make install
48
49 If you're using a shared hosting provider, of the sort where you don't have
50 root, you can still install ikiwiki. There are tutorials covering this for
51 a few providers:
52
53 * [[tips/NearlyFreeSpeech]]
54 * [[tips/DreamHost]]