Horde groupware

Zie www.horde.org. Er zin debian packages. Volgens eigen zeggen is de synchronisatie met PDA en Outlook nog in ontwikkeling, maar er lijkt in elk geval aan gewerkt te worden.

Debian packages

apt-get install horde3 kronolith2 turba2 imp4 nag2 sork-forwards-h3 sork-passwd-h3 sork-vacation-h3 horde-sam
apt-get install chora2 ingo1 mnemo2
apt-get install php5-mcrypt php-services-weather php-cache php5-memcache php-xml-serializer aspell-nl aspell-fr

De documentatie voor horde3 staat dan in http://www.vdmeulen.net/doc/horde3/.

Apache

Maak apache2 aan in /etc/horde de inhoud staat hieronder. Maakt daarna een symlink aan /etc/apache2/conf.d/horde → /etc/horde/apache2.

Alias /horde /usr/share/horde3
 
<Directory /usr/share/horde3/>
        Options FollowSymlinks ExecCGI
        AllowOverride Limit
        Order allow,deny
        Allow from all
        DirectoryIndex index.html, index.php
        php_flag session.auto_start off
</Directory>
 
<Location /horde/rpc.php>
        php_value mbstring.func_overload 0
        Order allow,deny
        Allow from all
</Location>

Verder heeft horde de includes module nodig. Zet de modules aan en herstart apache:

cd /etc/apache2/mods-enabled
ln -s ../mods-available/includes.load includes.load
apache2ctl graceful

Pas /etc/php5/apache2/php.ini aan. Verander log_errors = Off in log_errors = On

MySQL

Voer het script create.mysql.gz uit op de mysql server. Het toevoegen van de gebruiker werkt niet. Gebruik MySQL Administrator om de gebruiker toe te voegen. Voer de andere commando's uit in jEdit of in de MySQL query browser. Hetzelfde voor /doc/turba2 etc etc.

Pas daarna de turba tafel aan voor synchronisatie met outlook en smartphone. Hoe dat moet staat in http://wiki.horde.org/SyncMLTurbaConfiguration. Vervang de table turba_objects door:

Patch voor adresboek

Standaard kent het adresboek maar 1 naam. We vervangen de de tabel, en een stukje php code. Dit is een aangepaste versie van wat beschreven staat in http://wiki.horde.org/SyncMLTurbaConfiguration.

CREATE TABLE `turba_objects` (
 `object_id` VARCHAR(32) NOT NULL,
 `owner_id` VARCHAR(255) NOT NULL,
 `object_type` VARCHAR(255) NOT NULL DEFAULT 'Object',
 `object_uid` VARCHAR(255),
 `object_members` BLOB,
 `object_firstname` VARCHAR(255),
 `object_middlename` VARCHAR(255) NOT NULL DEFAULT '',
 `object_lastname` VARCHAR(255) NOT NULL DEFAULT '',
 `object_alias` VARCHAR(32),
 `object_nameprefix` VARCHAR(255),
 `object_email` VARCHAR(255),
 `object_homestreet` VARCHAR(255),
 `object_homecity` VARCHAR(255),
 `object_homeprovince` VARCHAR(255),
 `object_homepostalcode` VARCHAR(255),
 `object_homecountry` VARCHAR(255),
 `object_workstreet` VARCHAR(255),
 `object_workcity` VARCHAR(255),
 `object_workprovince` VARCHAR(255),
 `object_workpostalcode` VARCHAR(255),
 `object_workcountry` VARCHAR(255),
 `object_homephone` VARCHAR(25),
 `object_workphone` VARCHAR(25),
 `object_cellphone` VARCHAR(25),
 `object_fax` VARCHAR(25),
 `object_pager` VARCHAR(25),
 `object_title` VARCHAR(255),
 `object_company` VARCHAR(255),
 `object_notes` text,
 `object_url` VARCHAR(255),
 `object_pgppublickey` text,
 `object_smimepublickey` text,
 `object_freebusyurl` VARCHAR(255),
 `object_role` VARCHAR(255),
 `object_category` VARCHAR(80),
 `object_photo` BLOB,
 `object_blobtype` VARCHAR(10),
 `object_bday` VARCHAR(10),
 
   PRIMARY KEY(object_id)
);
 
CREATE INDEX turba_owner_idx ON turba_objects (owner_id);
 
GRANT SELECT, INSERT, UPDATE, DELETE ON turba_objects TO horde@localhost;

Dit gaat in /etc/horde/turba2/sources.php. Vervangt de bestaande $cfgSources['localsql'].

$cfgSources['localsql'] = array(
   'title' => _("My Addressbook"),
   'type' => 'sql',
   // The default connection details are pulled from the Horde-wide SQL
   // connection configuration.
   //
   // The old example illustrates how to use an alternate database
   // configuration.
   //
   // New Example:
   'params' => array_merge($GLOBALS['conf']['sql'], array('table' => 'turba_objects')),
 
   'map' => array(
       '__key' => 'object_id',
       '__owner' => 'owner_id',
       '__type' => 'object_type',
       '__members' => 'object_members',
       '__uid' => 'object_uid',
       'name' => array('fields' => array('firstname', 'lastname'),
                       'format' => '%s %s'),
       'firstname' => 'object_firstname',
       'middlename' => 'object_middlename',
       'lastname' => 'object_lastname',
       'name_prefix' => 'object_nameprefix',
       'email' => 'object_email',
       'alias' => 'object_alias',
       'homeStreet'  => 'object_homestreet',
       'homeCity'     => 'object_homecity',
       'homeProvince'     => 'object_homeprovince',
       'homePostalCode' => 'object_homepostalcode',
       'homeCountry' => 'object_homecountry',
       'workStreet' => 'object_workstreet',
       'workCity'     => 'object_workcity',
       'workProvince'     => 'object_workprovince',
       'workPostalCode' => 'object_workpostalcode',
       'workCountry' => 'object_workcountry',
       'homePhone' => 'object_homephone',
       'workPhone' => 'object_workphone',
       'cellPhone' => 'object_cellphone',
       'fax' => 'object_fax',
       'pager' => 'object_pager',
       'title' => 'object_title',
       'company' => 'object_company',
       'birthday' => 'object_bday',
       'website' => 'object_url',
       'notes' => 'object_notes',
       'pgpPublicKey' => 'object_pgppublickey',
       'smimePublicKey' => 'object_smimepublickey',
       'freebusyUrl' => 'object_freebusyurl'
   ),
   'search' => array(
       'name',
       'email'
   ),
   'strict' => array(
       'object_id',
       'owner_id',
       'object_type',
   ),
   'export' => true,
   'browse' => true,
   'use_shares' => true,
);

Initialisatie

Verwijder het exit(0) directive in /etc/horde/horde3/conf.php en de regel daarboven. Zet vervolgens de owner van /etc/horde/horde3/ en de bestanden daarin op www-data. Dat is nodig om de horde configuarie wizard te laten werken. Nadat horde is geconfigureerd alles weer terugzetten (owner wordt weer root, exit(0) weer terug.

Pas de instelling voor webroot aan in /etc/horde/horde3/registry.php. Voeg onder het webroot verhaal een regel

$webroot = '/horde'

toe.

Ga naar www.vdmeulen.net/horde.

Tests:

Synchronisatie

/share/Web/dokuwiki/data/pages/beheer/horde.txt · Laatst gewijzigd: 2013/12/23 13:45 door pieter
CC Attribution-Share Alike 4.0 International
Powered by PHP Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0 Valid HTML5