==========================
|| INSTALLING Turba 2.0 ||
==========================

This document contains instructions for installing the Turba contact
manager on your system.

For information on the capabilities and features of Turba, see
the file README in the top-level directory of the Turba
distribution.


OBTAINING TURBA
---------------

Turba can be obtained from the Horde website and FTP server, at

   http://www.horde.org/turba/
   ftp://ftp.horde.org/pub/turba/

Bleeding-edge development versions of Turba are available via CVS; see
the file docs/HACKING in the Horde distribution for information on
accessing the Horde CVS repository.

[FIXME note on RPMs here]


PREREQUISITES
-------------

To function properly, Turba requires the following:

  1. A working Horde installation.

     Turba runs within the Horde Application Framework, a set of
     common tools for Web applications written in PHP. You must
     install Horde before installing Turba.

     The Horde Framework can be obtained from the Horde website and
     FTP server, at

        http://www.horde.org/horde/
        ftp://ftp.horde.org/pub/horde/

     Many of Turba's prerequisites are also Horde prerequisites.
     Be sure to have completed all of the steps in the INSTALL
     file for the Horde Framework before installing Turba.

The following are not required, but are strongly recommended:

  1. SQL and/or LDAP support in PHP.

     Turba can store its contacts entries in either an SQL or an
     LDAP database, and can query public (read-only) LDAP databases
     for contacts as well. Build PHP with whichever LDAP or SQL
     drivers you require; see the Horde INSTALL file for details.


INSTALLING TURBA
----------------

Turba is written in PHP, and must be installed in a web-accessible
directory. The precise location of this directory will differ from
system to system. Conventionally, Turba is installed directly underneath
Horde in the webserver's document tree.

Since Turba is written in PHP, there is no compilation necessary;
simply expand the distribution where you want it to reside and rename
the root directory of the distribution to whatever you wish to appear
in the URL. For example, with the Apache webserver's default document
root of '/usr/local/apache/htdocs', you would type:

   cd /usr/local/apache/htdocs/horde
   tar zxvf /path/to/turba-1.0.tar.gz
   mv turba-1.0 turba

and would then find Turba at the URL

   http://your-server/horde/turba/


CONFIGURING TURBA
-----------------

1. Configuring Horde for Turba

   a. Register the application

      In horde/config/registry.php, uncomment the stanza for Turba.
      Be sure to uncomment the ");" on the last line of the stanza.
      If you have changed the location of Turba relative to Horde,
      either in the URL or in the filesystem or both, you must
      update the 'fileroot' and 'webroot' settings to their correct
      values.

   b. Optional: Provide Turba access from IMP

      If you wish to have Turba appear in IMP's menubar, edit
      IMP's config/conf.php to set:

         $conf['menu']['apps'] = array('turba');

2. Creating databases

   The specific steps to create Turba databases depend
   on which database you've chosen to use.

   First, look in scripts/drivers/ to see if a script already
   exists for your database type (SQL or LDAP). If so, you should be
   able to simply execute that script as superuser in your
   database. (Note that executing the script as the "horde" user will
   probably fail when granting privileges.)

   If such a script does not exist, you'll need to build your own, using
   the file turba.sql as a starting point. If you need assistance in
   creating databases, you may wish to let us know on the Turba
   mailing list.

3. Configuring Turba.

   To configure Turba, change to the config/ directory of the
   installed distribution, and make copies of all of the configuration
   "dist" files without the "dist" suffix:

      cd config/
      for foo in *.dist; do cp $foo `basename $foo .dist`; done

   Documentation on the format and purpose of those files can be found in
   each file.   You may edit these files if you wish to customize Turba's
   appearance and behaviour.  With the exception of conf.* files  and the
   sources.php file (See below for information on these files) the defaults
   will be corrct for most sites.

   You must configure sources.php to list your data sources (both SQL and
   LDAP if necessary).

   You must then configure Turba via the Horde Configuration (Setup)
   module (part of Horde).  Login to Horde as a Horde Administrator.
   Use the Horde "Administration" menu item to get to the Administration
   page, then click on "Configuration" to get the configuration page.
   Select "Address Book" from the selection box of applications, and 
   click on on the "Configure" button.  Fill in or change any configuration
   values as needed.  When done click on "Generate Address Book Configuration"
   to generate the conf.php file.  If your web server doesn't have write
   permissions to the configuration directory or file, it will not be able
   to write the file, and will display the configuration file in the 
   browser window.  In this case, copy and paste the returned configuration
   information into the file turba/config/conf.php manually.

4. Securing Turba

   Some of Turba's configuration files contain passwords which local
   users could use to access your database. It is recommended to ensure
   that at least the Turba configuration files (in config/) are not
   readable to system users. There are .htaccess files restricting
   access to directories that do not need to be accessed directly;
   before relying on those, ensure that your webserver supports
   .htaccess and is configured to use them, and that the files in
   those directories are in fact inaccessible via the browser.

   An additional approach is to make Turba's configuration files
   owned by the user 'root' and by a group which only the webserver
   user belongs to, and then making them readable only to owner and
   group. For example, if your webserver runs as www.www, do as
   follows:

      chown root.www config/*
      chmod 0440 config/*

5. Testing Turba

   To verify that Turba is working correctly, attempt to look up
   a known existing and a known nonexisting entry in each of your
   data sources, and to create and then look up a new entry in
   each data source which allows users to create new entries.

   If appropriate, ensure that Turba appears in the IMP menu bar.


OBTAINING SUPPORT
-----------------

If you encounter problems with Turba, help is available!

The Horde Frequently Asked Questions List (FAQ), available on the Web
at

  http://www.horde.org/faq/

The Horde Project runs a number of mailing lists, for individual
applications and for issues relating to the project as a whole.
Information, archives, and subscription information can be found at

  http://www.horde.org/mail/

Lastly, Horde developers, contributors and users also make occasional
appearances on IRC, on the channel #horde on the freenode Network
(irc.freenode.net).

Please keep in mind that Turba is free software written by volunteers.
For information on reasonable support expectations, please read

  http://www.horde.org/support.php

Thanks for using Turba!

The Horde team
turba@lists.horde.org

$Horde: turba/docs/INSTALL,v 1.9 2003/06/04 01:23:46 chuck Exp $
