First steps and assumptions Update your system Install Mysql and create Horde database Install PHP5 Install Horde (read INSTALL1 before proceeding) Notes Install IMP (read INSTALL2 before proceeding) Install Ingo (read INSTALL3 before proceeding) Install Turba (read INSTALL4 before proceeding) Install Kronolith (read INSTALL5 before proceeding) Install Mnemo (read INSTALL6 before proceeding) Setup and configure Horde First time configuration Setup horde database Configure Horde and applications 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 Note: Do not click on the exit icon (logout), just close the browser. We stiil need to get back without login (Administrator). Consider using https 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 (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.) **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 INSTALL7 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 harmless8. At the time of these instructions those were: pecl upgrade -a -B channel://pecl.php.net/sasl-0.1.0 (channel://pecl.php.net/sasl-0.1.0) pear upgrade -a -B channel://pear.php.net/Text_LanguageDetect-0.3.0 (channel://pear.php.net/Text_LanguageDetect-0.3.0) pecl upgrade -a -B channel://pecl.php.net/idn-0.2.0 (channel://pecl.php.net/idn-0.2.0) pecl upgrade -a -B channel://pecl.php.net/ssh2-0.12 (channel://pecl.php.net/ssh2-0.12) pear upgrade -a -B channel://pear.php.net/SOAP-0.13.0 (channel://pear.php.net/SOAP-0.13.0) pear upgrade -a -B channel://pear.php.net/XML_Serializer-0.20.2 (channel://pear.php.net/XML_Serializer-0.20.2) pear upgrade -a -B channel://pear.php.net/Console_Color2-0.1.2 (channel://pear.php.net/Console_Color2-0.1.2) pear upgrade -a -B channel://pecl.php.net/msgpack-0.5.7 (channel://pecl.php.net/msgpack-0.5.7) pear upgrade -a -B channel://pear.php.net/Numbers_Words-0.18.1 (channel://pear.php.net/Numbers_Words-0.18.1) pear upgrade -a -B channel://pear.php.net/Image_Text-0.7.0 (channel://pear.php.net/Image_Text-0.7.0) Install IMP (read INSTALL9 before proceeding) pear install -a -B horde/imp Optional: pear upgrade -a -B channel://phpseclib.sourceforge.net/File_ASN1 (channel://phpseclib.sourceforge.net/File_ASN1) Install Ingo (read INSTALL10 before proceeding) pear install -a -B horde/ingo Install Turba (read INSTALL11 before proceeding) pear install -a -B horde/turba Install Kronolith (read INSTALL12 before proceeding) pear install -a -B horde/kronolith pear upgrade -a -B channel://pear.php.net/Date_Holidays-0.21.8 (channel://pear.php.net/Date_Holidays-0.21.8) Optional: Install your country's holidays, if available. Install Mnemo (read INSTALL13 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.