.. contents:: Contents .. section-numbering:: (If you are only going to install the basic groupware and/or email applications as this guide shows, you should consider installing the `Webmail bundle`_ - it's much less work and takes care of most of the tasks on this page. Ed.) .. _`Webmail bundle`: http://horde.org/apps/webmail **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 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. * 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 before proceeding) ======================================================================================== pear install -a -B horde/imp Optional: pear upgrade -a -B channel://phpseclib.sourceforge.net/File_ASN1 ---- Install Ingo (read INSTALL before proceeding) ========================================================================================== pear install -a -B horde/ingo ---- Install Turba (read INSTALL before proceeding) ============================================================================================ pear install -a -B horde/turba ---- Install Kronolith (read 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 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 Yes and some 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.