================
Installing Silva
================

Meta
----

Copyright (c) 2002-2008 Infrae. All rights reserved.
See also LICENSE.txt

Valid for:  Silva 1.5.x
Author:     Martijn Faassen
Email:      faassen@infrae.com
CVS:        $Revision: 1.58 $

Introduction
------------

If you're on Linux or Unix, or if you want to install Silva in an
already existing Zope install on Windows, just read on. If you are
installing Silva on Windows to just get a quick look however, please
take a look at the section `The easy way on Windows`_ below for a
really easy way to get Silva up and running. If you are upgrading an
existing release of Silva, please consult UPGRADE.txt. If you have any
problems after an install, consult TROUBLESHOOTING.txt.

Checklist for Zope administrators
---------------------------------

Here is a quick checklist what to do to install Silva:

* You need Zope 2.8.8 (other versions are not properly tested) with 
  Python 2.3.

* Download an appropriate Silva ``-all.tgz`` for the version you want
  from `the Silva download area`_ and unpack it into your
  Zope's ``Products`` directory. Be aware the the ordering of the
  releases gets messed up by zope.org, so be sure you get the latest
  one. For a list of what is contained in the Silva distribution and
  other extension products you can install, see PRODUCTS.txt.

* Restart Zope.

* In the Zope Management Interface (ZMI), select 'Silva Root' from the
  add list and create a Silva root. Enter the root by clicking on it
  in the ZMI.

* Selecting the 'Silva /edit...' tab in the ZMI gets you to the Silva
  UI.  Selecting 'View' either in the ZMI or in Silva shows you the
  public presentation of this site.

You should now be done installing Silva. In the next section we'll go
into everything in much more detail.

For a set of Silva extensions you may also want to download and
install the Silva ``-extra`` tarball into your Products directory.

.. _`the Silva download area`: http://www.infrae.com/download/Silva

Note: there is a document called MAINTENANCE.txt that contains specific
instructions for system administrators.

The easy way on Windows
-----------------------

Infrae maintains a Silva installer for Windows. This automatically
installs Silva, Zope and Python and all required dependencies for you
on your system. This is a great way to try out Silva.

When you are planning to run Silva in production you may want to set
it all up by yourselves nonetheless. While it is more work, it should
make maintenance more easy, and it makes it far more easy to combine
Silva with other Zope Products. In addition, Infrae does not yet keep
the windows installer releases as up to date as the source code
releases.

The Silva Windows installer can be found here:

http://www.infrae.com/download/SilvaWindowsInstaller

Optional extensions
===================

Silva extensions in general are discussed in PRODUCTS.txt, so please
see that document for more detail. This section discusses some
particular deep extensions to Silva.

XSLT support
------------

Silva XSLT support is built into Silva, but requires the external
libraries libxml2 and libxslt with Python bindings to be enabled. We
have tested with versions libxml2 2.6.11 and libxslt 1.1.8, but newer
versions should be compatible.

libxml2 and libxslt, including their Python bindings can be found
here:

http://www.xmlsoft.org/downloads.html

For windows, installers for libxml2 and libxslt can be downloaded
here:

http://users.skynet.be/sbi/libxml-python/

Groups
------

To start using the groups in Silva, a Groups Service needs to be
installed. Once the Groups filesystem product is installed, such a
service can be added to the Silva Root via the ZMI. This service
should have 'service_groups' for its id. After this you should be able
to use Groups.

http://www.infrae.com/download/Groups

ExtFile
-------

If the ExtFile product is properly installed, Silva can use it to
store Silva File objects in the file system instead of the ZODB.  To
let Silva use the ExtFile product, you can change settings using the
service_files object available in the services tab in the Silva
root. 

Note that enabling/disabling ExtFile storage does not change the
storage of the already present Silva File objects. It has no effect to
the Silva Image objects either, as they are stored in the ZODB in any
case. More information is available in ``docs/FileObject.stx``.

http://www.zope.org/Members/shh/ExtFile

Note that version 1.4.2 or later of ExtFile is required.

Installing Silva with LDAP support
----------------------------------

Silva can work together with LDAPUserFolder so that users in an LDAP
database can be looked up and authorized as Silva authors and editors.

To make Silva integrate well with a particular LDAP server with a
particular schema, a separate Member extension product must be created
for your site that pulls its information from LDAP. In addition a new
Group service can be created so that Group information as well is
pulled out of LDAP.

If you need LDAP integration for Silva, please contact Infrae
(<info@infrae.com>).

Installing Silva on a ZEO cluster
---------------------------------

When setting up Silva on a ZEO cluster, certain information needs to
be shared between servers. A non-undoable storage needs to be set up
for this.

If you want to set up Silva on a ZEO cluster, please contact Infrae
(<info@infrae.com>).

In case of problems
-------------------

Please consult TROUBLESHOOTING.txt if you run into any trouble.
