Copyright (c) 2002, 2003 Infrae. All rights reserved. See also LICENSE.txt Meta:: Valid for: Silva 0.9.1.10 Author: Martijn Faassen Email: email@example.com CVS: $Revision: 188.8.131.52 $ Installing Silva NOTE: If you are upgrading from a previous version of Silva, please see "UPGRADE.txt":http://www.zope.org/Members/faassen/Silva/UPGRADE.txt IMPORTANT: You need PyXML to be installed in order for Silva to work. You can find it here: http://pyxml.sourceforge.net If you have problems installing Silva and your zope start fails somewhere due to ParsedXML (PrettyPrint module for instance), check whether you have PyXML installed. ParsedXML depends on PyXML for operations. Silva depends on a set of file-system Python products for Zope for its core functionality. There will also be a number of services installed in the Zope Object Database; since release 0.8.6 this takes place automatically from the filesystem. These Silva products come as .tgz files, and need to be unpacked in the Zope's lib/python/Products directory. Restart Zope after unpacking to finish the installation. After this restart you should have a bunch of Silva objects in your Zope add list. Pick 'Silva Root' and add it (for instance to your Zope root). This should now automatically create a Silva instance with services and so on installed. If you go to 'http://yourzope/yoursilva/edit' you will see the Silva Management Interface. If you ever install a Silva extension, go to the 'service_extensions' service in your Silva root using the Zope management screens. You should see the extension listed and you can install it into that Silva instance using the 'install' button. Silva Requirements (install in your Products directory) Silva (0.9.1.10) Silva implements the behavior for the Silva objects, such as Folders, Publications, and Documents. Also implements some basic functionality for the editing of Silva documents. Since version 0.8.6 this also contains the views and widgets in separate subdirectories. The Silva product can be found here: "Silva":http://www.zope.org/Members/faassen/Silva or just download: "Silva-0.9.1.10.tgz":http://www.zope.org/Members/faassen/Silva/Silva-0.9.1.10.tgz XMLWidgets (0.8.4) A system that builds on top of ParsedXML to assist in the rendering of editor, as well as in the generation of the HTML for the public pages. Note that newer versions of XMLWidgets won't work properly with Silva 0.9.1; you need 0.8.4. XMLWidgets can be found here: "XMLWidgets":http://www.zope.org/Members/faassen/XMLWidgets or just download: "XMLWidgets-0.8.4.tgz":http://www.zope.org/Members/faassen/XMLWidgets/XMLWidgets-0.8.4.tgz ParsedXML (1.3.1) A system that allows the storage of XML documents in the Zope Object Database. Allows DOM access as well as ways to construct references to individual nodes. Silva Document and Silva DemoObject use this to store their data. ParsedXML depends on the PyXML library for some of its operation; the Python interpreter that is used to run Zope must have access to a recent version of PyXML (0.7 works. 0.8.1 should also work, but let us know!). ParsedXML can be found here: "ParsedXML":http://www.zope.org/Members/faassen/ParsedXML or just download: "ParsedXML-1.3.1.tgz":http://www.zope.org/Members/faassen/ParsedXML/ParsedXML-1.3.1.tgz Formulator (1.3.1) A system for the construction and validation of web forms, used by Silva's views. Formulator can be found here: "Formulator":http://www.zope.org/Members/faassen/Formulator or just download: "Formulator-1.3.1.tgz":http://www.zope.org/Members/faassen/Formulator/Formulator-1.3.1.tgz FileSystemSite (1.2) A system for keeping PageTemplates, PythonScripts and so on on the filesystem. This allows us to maintain the view code for Silva on the filesystem, which should make both version control and deployment easier. FileSystemSite can be found here: "FileSystemSite":http://www.zope.org/Members/k_vertigo/Products/FileSystemSite or just download: "FileSystemSite-1.2.tgz":http://www.zope.org/Members/k_vertigo/Products/FileSystemSite/FileSystemSite-1.2.tgz Groups (0.3.2) If you want to take advantage of Groups support, please download and install the Groups product, here: "Groups-0.3.2.tgz":http://www.zope.org/Members/faassen/Groups/Groups-0.3.2.tgz Groups support is optional; Silva should run without the Groups product installed. Groups use a rather hackish technique called 'monkey patching' to hook groups support into the Silva core, and this may conflict with other products that do the same. If you get strange behavior, removing the Groups product and restarting Zope will safely remove it. To start using the Groups definitions, a "Groups Service" is needed. 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. ExtFile (1.1.3) If you plan to manage large upload files with Silva, which should not be stored in the ZODB but the plain file system, you may consider installing the ExtFile product from here: "ExtFile":http://www.zope.org/Members/MacGregor/ExtFile/ExtFile-1.1.3.tgz This product is optional; see "Installing Silva with ExtFile" below. You may want to look into the README.txt of ExtFile at installation time, and possibly adapt the undo handling. (This should not be changed afterwards.) Installing Silva with LDAP support Silva can work together with LDAPUserFolder (1.2 at this point in time has been tested) 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. At the moment we don't have a demo of this available yet, but we will try to put one online soon. Installing Silva with ExtFile support. 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 may edit the file config.py in the lib/python/Products/Silva directory by changing:: FILESYSTEM_STORAGE_ENABLED = 0 to:: FILESYSTEM_STORAGE_ENABLED = 1 You may want to adjust the 'FILESYSTEM_PATH' as well. 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 the 'docs/FileObject.stx'. Installing Silva on a ZEO cluster In this case, the products need to be installed for all nodes of the cluster. For LDAP support, the above change needs to be made in all installations of the Silva product. For importing the .zexp, put a copy of 'silva.zexp' in the 'import' directory of all cluster nodes. Since Silva depends heavily on sessions, these also need to be shared throughout the cluster; this can be done by mounting a non-undoable storage into the main storage that will be used specifically as a store for session data. For more information on this, see 'docs/ZeoClusterNotes.stx'.