Table des matières

, , , , ,

DAViCal, serveur de calendrier CalDAV

DAViCal est un serveur d'agenda partagé. C'est une implémentation du protocole CalDAV qui est conçu pour le stockage d'agenda (au format iCalendar) sur un serveur partagé à distance.

Un nombre croissant de gestionnaire d'agenda supporte le protocole CalDAV, par exemple Mozilla Calendar (Sunbird / Lightning), Evolution, Mulberry, Chandler, Rainlendar Pro et divers autres produits propriétaire tels que Apple iCal et iPhone.

Installation

DAViCal ayant été intégré au dépôt à partir de la version 9.04 d'Ubuntu, il suffit d'installer le paquet davical.

Il faudra sans doute aussi installer le paquet postgresql.

Configuration

Configuration de postgresql

DAViCal utilise une base de données SQL, sous PostgreSQL.

Pour se connecter à PostgreSQL :

sudo -u postgres psql postgres

Création du mot de passe administrateur de PostgreSQL :

\password postgres

Saisir le mot de passe,

Créez les utilisateurs davical_dba et davical_app dans PostgreSQL :

postgres=# CREATE USER davical_dba;
postgres=# CREATE USER davical_app;

puis taper

\q

pour sortir de la console PostgreSQL.

Ouvrez le fichier /etc/postgresql/9.5/main/pg_hba.conf pour ajouter au début ce qui suit :

local all all trust
local davical davical_dba trust
local davical davical_app trust
host davical davical_app 127.0.0.1/32 trust
Si vous utilisez une base de données distante, à la dernière ligne remplacez « 127.0.0.1/32 » par l'IP/masque du serveur DAViCal.

Redémarrer PostgreSQL :

sudo service postgresql restart

Nous allons maintenant peupler la base grâce au script fourni par DAViCal :

sudo su postgres -c /usr/share/davical/dba/create-database.sh
Une fois le script terminé, le mot de passe admin s'affiche, pensez à le noter, il sera indispensable par la suite.

Il faut maintenant retourner dans le fichier « /etc/postgresql/9.5/main/pg_hba.conf » pour en retirer la ligne suivante :

local all all trust
dans le cas contraire, n'importe qui aura tous les droits sur toutes les bases !

Enfin redémarrer PostgreSQL :

sudo service postgresql restart

Configuration d'Apache

Créez un hôte virtuel que nous allons nommer davical dans le répertoire des Virtualhost apache (en général dans /etc/apache2/site-available/) avec le contenu suivant :

<VirtualHost *:80>
 DocumentRoot /usr/share/davical/htdocs
 DirectoryIndex index.php index.html
 ServerName mydavicalsite.dyndns.org
 ServerAlias calendar.mydavicalsite.dyndns.org
 Alias /images/ /usr/share/davical/htdocs/images/
 <Directory /usr/share/davical/htdocs/>
     AllowOverride None
     Order allow,deny
     Allow from all
 </Directory>
 php_value include_path /usr/share/awl/inc
 php_value magic_quotes_gpc 0
 php_value register_globals 0
 php_value error_reporting "E_ALL & ~E_NOTICE"
 php_value default_charset "utf-8"
</VirtualHost>

Activez le Virtualhost que vous avez créé grâce à cette commande :

sudo ln -s /etc/apache2/sites-available/davical /etc/apache2/sites-enabled/davical
Remplacez ServerName par le nom de votre serveur, dans la plupart des cas commentez (ajoutez un # devant) le ServerAlias
Pensez à activer la gestion des hôtes virtuels.

Configuration de DAViCal

Créer le fichier /etc/davical/config.php et copier ça dedans :

<?php
//  $c->domain_name = "mydavicalsite.dyndns.org";
//  $c->sysabbr     = 'rscds';
  $c->admin_email = 'admin@example.net';
  $c->system_name = "Really Simple CalDAV Store";
//  $c->collections_always_exist = true;
//  $c->enable_row_linking = true;
  $c->default_locale = en_US.UTF-8;
  $c->pg_connect[] = 'dbname=davical port=5432 user=davical_app';

Créer un lien symbolique de ce dernier vers « /etc/davical/nom_de_domaine-conf.php ».

À ce stade, vous pouvez accéder à l'interface web de Davical en tapant http://localhost dans le navigateur.

Pour vous identifier, utilisez le mot de passe généré automatiquement après le script « /usr/share/davical/dba/create-database.sh » exécuté précédemment avec le login « admin ».

Utilisation

Pour commencer, il faut créer un utilisateur à partir de l'interface d'administration de Davical, tapez http://serveur_caldav/users.php (l'outil est tellement simple à utiliser qu'il est inutile d'entrer dans les détails).

Une fois l'utilisateur créé, rendez-vous dans votre agenda préféré, au moment de saisir l'url, tapez http://serveur_caldav/caldav.php/username/home.

Il faut bien sûr remplacer « serveur_caldav » et « username »…

Liens


Contributeur principal : wouldsmina.