Card- und CalDAV im terminal

Um’s grad vorweg zu nennen: Vieles hier hab ich von Florian Heinle’s Blog abgeschaut, welchen ich beim initialen Testen als erste Anlaufstelle verwendet hab. Im Gegensatz zu ihm hab ich aber die Debian-Packages verwendet.

Wie’s halt so ist, hätte ich das gern bei mir selbst dokumentiert.

Als erstes monitiert man mal die Packages khard, khal und vdirsyncer.

Sync einrichten

~/.config/vdirsyncer/config (siehe auch vdirsyncer Tutorial)

initiale Konfiguration

Dies ist nur einmalig nötig, oder falls neue Kalender- bzw. Kontakte-Folder hinzugefügt werden.

Nun kann der Sync durchgeführt werden

mit vdirsyncer -vdebug sync kann man sich mehr Details beim Sync anzeigen lassen.

Cron für automatischen Sync

Da man in der Regel nicht gern ständig manuell erst einen Sync macht, damit man up-to-date ist, richtet man am schlausten einen simplen cron ein. Ich mach’s alle 5 Minuten.

Kontakte mit khard

Beim ersten Start wird gleich reklamiert, wenn das Config nicht vorhanden ist

Also kopieren wir am einfachsten mal die Beispielconfig her und passen dort die Pfade entsprechend an

Usage

Mit ‘khard ls <suchbegriff>’ kann man recht bequem Kontakte suchen. verwendet man ‘details’, werden alle Informationen zum Kontakt angezeigt.

Der Parameter ‘–help’ zeigt alle weiteren benötigten Parameter an. Recht selbsterklärend.

Integration in mutt

Mit dieser Ergänzung in .muttrc kann man Adressen mit dem Tabulator vervollständigen und khard sehr bequem mit Mutt verwenden.

Zudem kann man mit ‘A’ Adressen als neue Kontakte hinzufügen (in der Auflistung der Mails oder wenn das entsprechende Mail geöffnet wurde).

Kalender mit khal

Die Konfiguration von khal ist recht simpel, einfach die gewünschen Kalender, die wir in vdirsyncer definiert haben, angeben in .config/khal/config und schon läuft das Teil (inital etwas länger, was ja verständlich ist). Der muss wohl einfach wissen, wo er die ics-Files zu suchen hat.

Um nur schnell die aktuellen Termine anzuzeigen, reicht es aus, einfach ‘khal’ einzugeben.

Möchte man Termine anlegen / bearbeiten, startet man ‘ikhal’. Mit ‘?’ kann man die wichtigsten Tasten anzeigen. Der Rest ist recht selbsterklärend, finde ich.

commands

Anstatt via ikhal kann man aber auch direkt via commanline einen Termin setzen, z.B.:

ganztägige Termine gibt man einfach ohne Zeitangabe an

mit der “-a”-Option kann der entsprechende Kalender gewählt werden. Das ganze wird nach diesem Schema abgesetzt:

Die wichtigsten Optionen hier sind:

  • -l, –location=LOCATION Ort festlegen
  • -g, –categories=CATEGORIES kommagetrennte Liste von Kategoriern. Einige Server unterstützen nicht mehrere Kategorien…
  • -r, –repeat=RRULE Ereignis-Wiederholung. Erlaubte Werte sind daily, weekly, monthly und yearly
  • -u, –until=UNTIL spezifizieren, wie lange das Ereignis dauern soll
  • –alarm DURATION Erinnerung vor dem Start des Ereignisses, sollte etwa so aussehen 1day 10minutes oder 1d3H10m, negative Werte starten nach dem Start des Ereignis.

weitere Beispiele

Ereignis heute um 18 Uhr mit Standardzeit von 1 Stunde im Standardkalender

Ereignis morgen um 16:30

adds a new event on 25th of October lasting from 18:00 to 24:00 with an additional description

Ein ganztägiges Ereignis am 26. Juli im Kalender “work”, welches wöchentlich wiederholt wird.

Detailliertere Informationen findet man beispielsweise hier.

Android / EAS

Wenn ich Kontakte in khal anlege, werden die wunderbar zum Server synchronisiert, auch Thunderbird und Webmail zeigen alles an. Jedoch motzt mein Android, welches via EAS verbunden ist, dass es nicht synchronisieren konnte.

Ob das nun ein EAS, SOGo oder khal-Problem ist, ist mir nicht ganz klar. Ich tendiere, dass es mit EAS etwas zu tun hat, sonst würde TB und das Webmail ja auch nix anzeigen/motzen. Muss mal CalDAV am Handy einrichten und damit testen.

EDIT: Hab heute grad mal DAVdroid montiert – mittels Card- / CalDAV bestehen absolut keine Probleme mit dem Sync auf Android….

 

One thought on “Card- und CalDAV im terminal

Comments are closed.