===================== Installing Ingo 1.1 ===================== :Last update: $Date: 2005/10/17 23:42:18 $ :Revision: $Revision: 1.14.8.6 $ :Contact: ingo@lists.horde.org .. contents:: Contents .. section-numbering:: This document contains instructions for installing the Ingo Email Filter Rules Manager. Obtaining Ingo ============== Ingo can be obtained from the Horde website and FTP server, at http://www.horde.org/ingo/ ftp://ftp.horde.org/pub/ingo/ Or use the mirror closest to you: http://www.horde.org/mirrors.php Bleeding-edge development versions of Ingo are available via CVS; see the file `horde/docs/HACKING`_, or the website http://www.horde.org/source/, for information on accessing the Horde CVS repository. Prerequisites ============= To function properly, Ingo **requires** the following: 1. A working Horde installation Ingo runs within the `Horde Application Framework`_, a set of common tools for Web applications written in PHP. You must install Horde before installing Ingo. .. Important:: Ingo 1.0 requires version 3.0+ of the Horde Framework - earlier versions of Horde will **not** work. .. _`Horde Application Framework`: http://www.horde.org/horde/ 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 Ingo's prerequisites are also Horde prerequisites. .. Important:: Be sure to have completed all of the steps in the `horde/docs/INSTALL`_ file for the Horde Framework before installing Ingo. 2. The following PHP capabilities: a. IMAP and POP3 support ``--with-imap`` [OPTIONAL] PHP uses the UW-IMAP c-client library to provide IMAP and POP3 support. IMAP support is only necessary if you will be using the client-side imap driver (see ``ingo/config/backends.php``). C-client is available from ftp://ftp.cac.washington.edu/imap/ 3. The following PEAR modules: (See `horde/docs/INSTALL`_ for instructions on installing PEAR modules) a. Net_Sieve 1.0.1 [OPTIONAL] Ingo uses the Net_Sieve class for communicating with timsieved running on Cyrus mail servers. You will only need to install this class if you are using Sieve for filtering. b. Net_Socket [OPTIONAL] Net_Socket is used by Net_Sieve and, thus, is only requires if you will be using Sieve filtering. PEAR *should* install Net_Socket when it installs Net_Sieve. Installing Ingo =============== Ingo 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, Ingo is installed directly underneath Horde in the webserver's document tree. Since Ingo 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/ingo-x.y.z.tar.gz mv ingo-x.y.z ingo and would then find Ingo at the URL:: http://your-server/horde/ingo/ Configuring Ingo ================ 1. Configuring Horde for Ingo a. Register the application In ``horde/config/registry.php``, find the applications['ingo'] stanza. The default settings here should be okay, but you can change them if desired. If you have changed the location of Ingo relative to Horde, either in the URL, in the filesystem or both, you must update the ``fileroot`` and ``webroot`` settings to their correct values. 2. Configuring Ingo To configure Ingo, 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 Or on Windows:: copy *.dist *. Documentation on the format of those files can be found in each file. With the exception of the ``conf.*`` files (see below) and ``backends.php``, the other files in ``config/`` need only be modified if you wish to customize Ingo's appearance or behavior, as the defaults will be correct for most sites. You must login to Horde as a Horde Administrator to finish the configuration of Ingo. Use the Horde ``Administration`` menu item to get to the administration page, and then click on the ``Configuration`` icon to get the configuration page. Select ``Filters`` from the selection list of applications. Fill in or change any configuration values as needed. When done click on ``Generate Filters Configuration`` to generate the ``conf.php`` file. If your web server doesn't have write permissions to the Ingo configuration directory or file, it will not be able to write the file. In this case, go back to ``Configuration`` and choose one of the other methods to create the configuration file ``ingo/config/conf.php``. Note for international users: Ingo uses GNU gettext to provide local translations of text displayed by applications; the translations are found in the po/ directory. If a translation is not yet available for your locale (and you wish to create one), see the ``horde/po/README`` file, or if you're having trouble using a provided translation, please see the `horde/docs/TRANSLATIONS`_ file for instructions. 3. Migrating existing filter rules from IMP 3.x to Ingo 1.x Ingo replaces the filter system of IMP 3.x. If you are using Ingo together with IMP and you are upgrading IMP from version 3.x to 4.x, you need to migrate the existing IMP filter rules to Ingo filter rules. To convert the filters, you will need a list of all users whose filters you want to convert. Save this user list in a text file with each user name on a separate line. The user names must be the same that are used to store user preferences in the preference backend. Now call the conversion script ``scripts/convert_imp_filters.php`` and feed it with your user list:: php convert_filters.php < userlist.txt .. Hint:: You can also enter the users manually by calling the script, entering the user names each confirmed with the ``Enter`` key, and finally pressing ``Ctrl+D`` when you're done. Known Problems ============== Some people experienced problems with Ingo's Sieve driver and Cyrus 2.1.12. The "addflag/removeflag" Sieve commands can cause message copies sticking in Cyrus' message queues producing "virtual memory exhausted" errors. It was reported that upgrading to version 2.1.15 has fixed this problem. Obtaining Support ================= If you encounter problems with Ingo, 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 Ingo is free software written by volunteers. For information on reasonable support expectations, please read http://www.horde.org/support.php Thanks for using Ingo! The Ingo team .. _`horde/docs/HACKING`: ../../horde/docs/?f=HACKING.html .. _`horde/docs/INSTALL`: ../../horde/docs/?f=INSTALL.html .. _`horde/docs/TRANSLATIONS`: ../../horde/docs/?f=TRANSLATIONS.html