6.0.0-beta13
4/15/26

[[toc]]

(If you are only going to install the basic groupware and/or email applications as this guide shows, you should consider installing the [http://horde.org/apps/webmail Webmail bundle] - it's much less work and takes care of most of the tasks on this page. Ed.)

**##red|Instructions for installing Horde 5, IMP and others Horde applications, with Pear on Debian (Jessie) with Apache2, PHP5 and Mysql.##

//Last updated 2015-10-28//

+++ First steps and assumptions

Debian is installed with basic, web server and ssh at a minimum.

SMTP, IMAP and Apache servers are properly configured and working.

All services are on the same host.


+++ Update your system

{{aptitude update}} (and {{aptitude safe-upgrade}} if necessary)
{{pear upgrade PEAR}}


+++ Install Mysql and create Horde database

{{aptitude install mysql-server mysql-common mysql-client}}
{{mysql --user=root -p}}

  • Database=horde, user=horde, password=!PasswordToHordeDatabase
    {{create database horde;}}
    {{grant ALL on horde.* to 'horde' identified by '!PasswordToHordeDatabase';}}
    {{quit}}

+++ Install PHP5

{{aptitude install php5 php5-common php5-imap php5-mysql php-pear php5-gd php5-tidy php5-imagick php5-mcrypt php5-intl php5-memcache php5-geoip php-gettext imagemagick tidy gettext php5-curl}}


+++ Install Horde (read INSTALL[http://www.horde.org/apps/horde/docs/INSTALL] before proceeding)

{{pear channel-discover pear.horde.org}}
{{pear install horde/horde_role}}
{{pear run-scripts horde/horde_role}}
Filesystem location for the base Horde application : /var/www/horde
{{pear install -a -B horde/horde}}
+++ Notes

  • Here you will get some "Failed to download" notices. Take note of what has failed, you MAY need to install them.
  • You will get some warnings too, These maybe harmless[http://marc.info/?l=horde&m=138351291524461&w=2].
  • At the time of these instructions those were:
    {{pecl upgrade -a -B channel://pecl.php.net/sasl-0.1.0}}
    {{pear upgrade -a -B channel://pear.php.net/Text_LanguageDetect-0.3.0}}
    {{pecl upgrade -a -B channel://pecl.php.net/idn-0.2.0}}
    {{pecl upgrade -a -B channel://pecl.php.net/ssh2-0.12}}
    {{pear upgrade -a -B channel://pear.php.net/SOAP-0.13.0}}
    {{pear upgrade -a -B channel://pear.php.net/XML_Serializer-0.20.2}}
    {{pear upgrade -a -B channel://pear.php.net/Console_Color2-0.1.2}}
    {{pear upgrade -a -B channel://pecl.php.net/msgpack-0.5.7}}
    {{pear upgrade -a -B channel://pear.php.net/Numbers_Words-0.18.1}}
    {{pear upgrade -a -B channel://pear.php.net/Image_Text-0.7.0}}

+++ Install IMP (read INSTALL[http://www.horde.org/apps/imp/docs/INSTALL] before proceeding)

{{pear install -a -B horde/imp}}
Optional: {{pear upgrade -a -B channel://phpseclib.sourceforge.net/File_ASN1}}


+++ Install Ingo (read INSTALL[http://www.horde.org/apps/ingo/docs/INSTALL] before proceeding)

{{pear install -a -B horde/ingo}}


+++ Install Turba (read INSTALL[http://www.horde.org/apps/turba/docs/INSTALL] before proceeding)

{{pear install -a -B horde/turba}}


+++ Install Kronolith (read INSTALL[http://www.horde.org/apps/kronolith/docs/INSTALL] before proceeding)

{{pear install -a -B horde/kronolith}}
{{pear upgrade -a -B channel://pear.php.net/Date_Holidays-0.21.8}}
Optional: Install your country's holidays, if available.


+++ Install Mnemo (read INSTALL[http://www.horde.org/apps/mnemo/docs/INSTALL] before proceeding)

{{pear install -a -B horde/mnemo}}


+++ Setup and configure Horde

{{chown -R www-data /var/www/horde}}

  • Optional: Setup for Horde logging.

{{mkdir /var/log/horde}}
{{touch /var/log/horde/horde5.log}}
{{chown -R www-data /var/log/horde/}}

  • Setup Apache2 for Horde.

++++ First time configuration

{{cd /var/www/horde/config}}
{{cp -p conf.php.dist conf.php}}

  • Use your browser to open your_Horde_site. You don't need to login, you will be using as "Administrator".
  • Configure just database, optional logging (if so, do it before database).
  • Gear -> Configuration -> Horde -> Database tag
  • SQL Database Settings
  • ''phptype'' -> Mysql (mysqli)
  • ''username'' -> horde
  • ''password'' -> !PasswordToHordeDatabase
  • ''database'' -> horde
  • Click on "Generate Horde Configuration"

As your database is empty you will get an error and crash. Don't worry!

++++ Setup horde database

{{horde-db-migrate}}

++++ Configure Horde and applications

  • Use your browser to open your_Horde_site.
  • Update all SQL DB schema
  • Take a look at all Horde's tabs and configure all applications (Imp, Ingo, Turba, Kronolith, Mnemo and Nag).
    +++ Note: Do not click on the exit icon (logout), just close the browser. We still need to get back without login (Administrator).

++++ Take a look at test.php

  • Enable test (Horde configuration -> General -> uncheck ''testdisable'').
  • Click on "Generate Horde Configuration"
    +++ Note: Do not click on the exit icon (logout), just close the browser. We stiil need to get back without login (Administrator).
  • Use your browser to open your_Horde_site/test.php.
  • You should see many ##green|Yes ## and some ##yellow|yellows##. You decide if you need those yellows.
  • Special care to PHP ''memory_limit'', ''session.gc_divisor'', ''session.gc_probability'', ''upload_max_filesize'' and ''post_max_size''.
  • If you are OK with test, Horde configuration -> General -> check ''testdisable''.
  • Click on "Generate Horde Configuration"

++++ Consider using https

  • Setup Apache to use Horde via https
  • Horde configuration -> General -> URL Settings -> use_ssl -> "Assume we are using SSL and allways generate https URLs."
    +++ Note: Do not click on the exit icon (logout), just close the browser. We still need to get back without login (Administrator).

++++ Setup authentication and resume Horde configuration

  • Horde configuration -> Authentication -> Authentication Settings
  • ''admins'': Comma separated list of logins of those who will administer Horde. Your login should be on the list.
  • ''driver'': "Let a Horde application handle authentication"
  • ''app'': imp
  • Click on "Generate Horde Configuration".

Done!

  • Now click on the exit icon (logout) and you should see the login page
  • Login and check that you can use and configure Horde applications.