This shows you the differences between two versions of the page.
tutorials:horde_groupware [2009/08/07 20:21] razvan |
tutorials:horde_groupware [2020/07/20 09:16] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | = Installing and configuring Horde Groupware = | ||
- | [[http:// | ||
- | |||
- | We've started using Horde Groupware for [[https:// | ||
- | |||
- | == Install and basic configuration == | ||
- | |||
- | The installation and configuration process is complex but quite straightforward. Horde' | ||
- | |||
- | I will detail my installation/ | ||
- | |||
- | I didn't use [[http:// | ||
- | |||
- | === System settings and requirements === | ||
- | |||
- | The following list shows the system configuration and setting and desired features. We want an Apache2 and MySQL based instance, with IMAPS login (based on an e-mail account) and the built-in wiki. | ||
- | |||
- | * Debian GNU/Linux 5.0 Lenny | ||
- | * Horde Webmail Groupware | ||
- | * non-privileged account | ||
- | * Apache2 web-server | ||
- | * MySQL | ||
- | * IMAPS e-mail access | ||
- | * IMAPS login | ||
- | * Horde builtin wiki (wicked) | ||
- | |||
- | === Required packages === | ||
- | |||
- | The required Debian packages are listed below. A MySQL server also has to be configured (it need not be on the same system). cvs needs only be installed for CVS-based modules (such as [[http:// | ||
- | |||
- | * apache2 | ||
- | * libapache2-mod-php5 | ||
- | * mysql-client-5.0 | ||
- | * php5 | ||
- | * php5-cli | ||
- | * php-pear | ||
- | * php5-imap | ||
- | * cvs for CVS-based modules | ||
- | |||
- | === Download == | ||
- | |||
- | You should [[http:// | ||
- | |||
- | {{{ | ||
- | razvan@swarm: | ||
- | razvan@swarm: | ||
- | [...] | ||
- | Downloaded: 1 files, 26M in 1m 33s (288 KB/s) | ||
- | razvan@swarm: | ||
- | razvan@swarm: | ||
- | razvan@swarm: | ||
- | }}} | ||
- | |||
- | === Initial configuration === | ||
- | |||
- | Most installation steps are described in the {{{$HORDE_INSTALL_DIR/ | ||
- | |||
- | First of all a database has to be created. Afterwards, the setup script ({{{$HORDE_INSTALL_DIR/ | ||
- | |||
- | {{{ | ||
- | Horde Groupware Webmail Edition Configuration Menu | ||
- | (0) Exit | ||
- | (1) Configure database settings | ||
- | (2) Create database or tables | ||
- | (3) Configure administrator settings | ||
- | (4) Update from an older Horde Groupware Webmail Edition version | ||
- | |||
- | Type your choice: | ||
- | }}} | ||
- | |||
- | ==== Create database and tables === | ||
- | |||
- | The database configuration step {{{(1)}}} should run smoothly. However, the {{{' | ||
- | |||
- | {{{ | ||
- | razvan@swarm: | ||
- | [...] | ||
- | mysql> source groupware.mysql.sql | ||
- | ERROR 1044 (42000): Access denied for user ' | ||
- | ERROR 1146 (42S02): Table ' | ||
- | ERROR 1146 (42S02): Table ' | ||
- | ERROR 1227 (42000): Access denied; you need the RELOAD privilege for this operation | ||
- | ERROR 1044 (42000): Access denied for user ' | ||
- | ERROR 1044 (42000): Access denied for user ' | ||
- | [...] | ||
- | Query OK, 0 rows affected (0.05 sec) | ||
- | }}} | ||
- | |||
- | Do not worry about the above errors. The script is ment to be run by the MySQL root user, enabling the creation of the database and user. As I had already created the database and required user, those steps were not needed. | ||
- | |||
- | ==== Webroot update ==== | ||
- | |||
- | Because there may be problems detecting the webroot URL (happened to me every time), update the {{{$HORDE_INSTALL_DIR/ | ||
- | |||
- | {{{ | ||
- | [...] | ||
- | $this-> | ||
- | ' | ||
- | ' | ||
- | [...] | ||
- | }}} | ||
- | |||
- | To test the configuration, | ||
- | |||
- | === Configure authentication == | ||
- | |||
- | I want IMAPS authentication for IMP (also for login). For that I use the {{{$HORDE_INSTALL_DIR/ | ||
- | |||
- | {{{ | ||
- | $servers[' | ||
- | ' | ||
- | ' | ||
- | ' | ||
- | ' | ||
- | ' | ||
- | ); | ||
- | }}} | ||
- | |||
- | By default, Horde Groupware uses IMP's IMAP authentication. The configuration option can be changed by altering the {{{' | ||
- | |||
- | {{{ | ||
- | $conf[' | ||
- | $conf[' | ||
- | }}} | ||
- | |||
- | === Enable HTTPS === | ||
- | |||
- | You can configure HTTPS only access to Horde through the use of {{{mod_ssl}}} and {{{mod_rewrite}}} Apache modules. Replace {{{/ | ||
- | |||
- | {{{ | ||
- | < | ||
- | < | ||
- | < | ||
- | RewriteEngine on | ||
- | RewriteCond %{HTTPS} !^on$ [NC] | ||
- | RewriteRule . https:// | ||
- | </ | ||
- | </ | ||
- | </ | ||
- | }}} | ||
- | |||
- | === That's it! === | ||
- | |||
- | Congratulations! You now have a working instance of Horde Webmail Groupware. Accessing your base URL (http:// | ||
- | |||
- | == Extra configuration and customization == | ||
- | |||
- | === Installing wicked === | ||
- | |||
- | As mentioned above, wicked (Horde' | ||
- | |||
- | {{{ | ||
- | razvan@swarm: | ||
- | razvan@swarm: | ||
- | Logging in to : | ||
- | CVS password: | ||
- | cvs login: CVS password file / | ||
- | }}} | ||
- | |||
- | As mentioned [http:// | ||
- | |||
- | {{{ | ||
- | razvan@swarm: | ||
- | }}} | ||
- | |||
- | The sql scripts have to be run in a similar fashion to the first set of scripts: | ||
- | |||
- | {{{ | ||
- | razvan@swarm: | ||
- | razvan@swarm: | ||
- | CVS wicked.mssql.sql | ||
- | razvan@swarm: | ||
- | mysql> source wicked.sql | ||
- | [...] | ||
- | }}} | ||
- | |||
- | Run the wicked test.php script (http:// | ||
- | |||
- | {{{ | ||
- | razvan@swarm: | ||
- | razvan@swarm: | ||
- | 2009-08-07 18:36:28 (403 KB/s) - `Text_Wiki-1.2.0.tgz' | ||
- | |||
- | razvan@swarm: | ||
- | 2009-08-07 18:36:42 (191 KB/s) - `Text_Wiki_Creole-1.0.1.tgz' | ||
- | |||
- | razvan@swarm: | ||
- | Archive | ||
- | Auth | ||
- | Cache File Mail SOAP Text_Wiki_Creole-1.0.1 | ||
- | Cache.php | ||
- | Console | ||
- | DB | ||
- | DB.php | ||
- | razvan@swarm: | ||
- | razvan@swarm: | ||
- | razvan@swarm: | ||
- | razvan@swarm: | ||
- | }}} | ||
- | |||
- | ==== Enable creole markup ==== | ||
- | |||
- | To enable Creole markup, use the configuration menu in the Administrative user interface. | ||
- | |||
- | === Customization === | ||
- | |||
- | Certain features of Horde can be tuned either at global level, through the use of configuration files, or at user level, through the use of the configuration interface for each user. | ||
- | |||
- | ==== Setup automatic configuration of default identity ==== | ||
- | |||
- | When using IMP, you would like automatic configuration of the {{{Default Identity}}} (sender address). For that we use a postauthentication script, as mentioned [[http:// | ||
- | |||
- | {{{ | ||
- | $conf[' | ||
- | }}} | ||
- | |||
- | ==== Change default theme ==== | ||
- | |||
- | File to update: {{{$HORDE_INSTALL_DIR/ | ||
- | Preference to alter: {{{' | ||
- | |||
- | {{{ | ||
- | // UI theme | ||
- | $_prefs[' | ||
- | ' | ||
- | }}} | ||
- | |||
- | ==== Change default sidebar width === | ||
- | |||
- | As the sidebar is quite small, I like updating it from {{{150}}} to {{{200}}}. | ||
- | |||
- | File to update: {{{$HORDE_INSTALL_DIR/ | ||
- | |||
- | Preference to alter: {{{' | ||
- | |||
- | {{{ | ||
- | $_prefs[' | ||
- | ' | ||
- | }}} | ||
- | |||
- | ==== IMP - configure default sending charset ==== | ||
- | |||
- | File to update: {{{$HORDE_INSTALL_DIR/ | ||
- | |||
- | Preference to alter: {{{' | ||
- | |||
- | {{{ | ||
- | // Select widget for the possible charsets | ||
- | $_prefs[' | ||
- | ' | ||
- | }}} | ||
- | |||
- | ==== IMP - disable view of deleted messages ==== | ||
- | |||
- | File to update: {{{$HORDE_INSTALL_DIR/ | ||
- | |||
- | Preference to alter: {{{' | ||
- | |||
- | {{{ | ||
- | // hide deleted | ||
- | $_prefs[' | ||
- | ' | ||
- | }}} | ||
- | |||
- | ==== Configure date and timezone options ==== | ||
- | |||
- | File to update: {{{$HORDE_INSTALL_DIR/ | ||
- | |||
- | Preferences to alter: {{{' | ||
- | |||
- | {{{ | ||
- | // what day should be displayed as the first day of the week? (0 - Sunday, 1 - Monday) | ||
- | $_prefs[' | ||
- | ' | ||
- | [...] | ||
- | // time format | ||
- | $_prefs[' | ||
- | ' | ||
- | [...] | ||
- | // date format | ||
- | $_prefs[' | ||
- | ' | ||
- | [...] | ||
- | // user time zone | ||
- | $_prefs[' | ||
- | ' | ||
- | [...] | ||
- | }}} | ||
- | |||
- | === UI configuration === | ||
- | |||
- | ==== User UI configuration ==== | ||
- | |||
- | A non-admin user can alter his/hers configuration through the Options -> Global Options menu. The user can configure personal information, | ||
- | |||
- | ==== Administrative UI configuration ==== | ||
- | |||
- | The administrative UI configuration is enabled through the Administration -> Setup menus. As the admin user is altering the configuration files, these must be writable by the web server user (www-data for Apache2) (the backup file must be created if it does not exist): | ||
- | |||
- | {{{ | ||
- | razvan@swarm: | ||
- | razvan@swarm: | ||
- | [...] | ||
- | razvan@swarm: | ||
- | razvan@swarm: | ||
- | }}} | ||
- | |||
- | ==== Enable creole markup ==== | ||
- | |||
- | The Administration -> Setup -> Wicked menu enable configuration of the built-in wiki. The usual configuration I'm doing is changing the default markup to creole (the $conf[wicked][format] variable). |