Baikal – CalDAV made easy

Nachdem ich meine OwnCloud installation entfernt habe musste ich ja die Dienste die ich darin genutzt habe durch andere Programme auf meinem VPS ersetzen.

Statt des fehleranfälligen Owncloud Syncs läuft bei mir jetzt schon geraume Zeit Bittorrent Sync ohne Probleme.

Ein weiterer Service den ich von meiner Owncloud installation genutzt habe war der CalDAV Server für unseren Familienkalender.

Auch da musste was neues her. Nach einigem suchen bin ich dann auf den Baikal-Server gestoßen. Dabei handelt es sich um einen einfachen CalDAV und CardDAV Server ohne großen Schnick-Schnack.

Das ganze soll auf auf Webspace Angeboten mit PHP und Apache Webserver laufen. Dank SQLite ist nicht einmal ein Datenbankserver notwendig. Da auf meinem VPS aber eh ein MySQL Server läuft legt Baikal seine Daten dort ab.

Viel ist zu dem Programm eigentlich nicht zu sagen. Es gibt eine sehr gute detaillierte Installationsanleitung, die es eigentlich jeden möglich machen sollte die Software auf dem Server zum laufen zu bringen. Ein WebInterface gibt es nur für die Administration, es ist also kein Online Kalender vorhanden. Für mich ist der auch nicht nötig da ich meinen CalDAV Server eh nur vom Handy, Tablet und Laptop aus nutze.

Die installation ist in gut 10min geschehen und schon kann man seine Kalender synchronisieren. Wenn das immer nur so einfach ginge.

Nach Experimenten mit Davical (braucht eine Postgre SQL Datenbank) oder Radicale (läuft unter Python und ist ein bisschen seltsam bei der Konfiguration) ist es doch schön zu sehen das es Leute auch noch hinkriegen solche Software so zu gestalten das Sie einfach nur läuft und einfach zu Handhaben ist.

26 Gedanken zu „Baikal – CalDAV made easy“

  1. Hallo, ich suche zur Zeit auch eine Lösung üm Kalender und Kontakte zu Hause aufzubewahren und gleichzeitig mit dem Smartphone zu syncen. Habe gelesen, dass ein CALDAV-Server hier helfen kann. Ich habe jedoch noch keine HW und wenig Linux-Erfahrungen. Kannst du mir hier weiter Hinweise geben? Eine Frage zu dem Blog: Was ist ein VPS?
    Gruß
    Wolfgang

    1. Hi Wolfgang,
      VPS steht in diesem Fall für Virtueller Privater Server, also ein Linux Server auf dem man Root Rechte besitzt und der virtualisiert bei einem Hoster im Rechenzentrum läuft. Für die ersten Schritte in Sachen Linux halte ich diesen allerdings für ungeeignet und zwar aus zwei Gründen.
      1. Auch ein VPS ohne per Default meistens ohne Firewall ans Netz angebunden, und zwar mit einer schnellen Leitung. Bedeutet wenn du den Server falsch konfiguriert hast und jemand damit Schindluder treibt, dann bist du in der Pflicht.
      2. Wenn du den Server vollkommen verkonfiguriert bzw. dich ausgesperrt hast dann kannste den Server nur noch neu aufsetzen. Ich glaube ein VPS birgt da für anfänger ziemlich viel Frustpotential.

      Wenn du den Server aber eh bei dir zuhause haben möchtest dann gibt es meiner Meinung nach mehrere Möglichkeiten, denn Baikal benötigt nur einen Apache 2 Webserver, PHP 5.3 und MySQL oder SQLite. Die Anforderungen sind also recht gering.

      Wenn du noch alte Hardware da hast dann kannst du dir daraus einen Server bauen, mit Linux als OS (oder sogar Windows). Meistens braucht so eine Lösung jedoch unverhältnismäßig viel Strom, vorallem da der Server ja durchgehend laufen soll.

      Meine favorisierte Lösung wäre ein RaspberryPi mit 32GB SD- Karten und Raspbian als OS. So solltest du einen Server zusammenstellen können der keine 10 Watt benötigt und noch Raum für Spielereien bietet.

  2. Hi,
    Ich betreibe derzeit OwnCloud 4.5.13 auf einer Fritzbox 7390 und zwar ausschließlich als Cal-/CardDAVserver. Klappt soweit mit 5 Clients und 4 Kalendern ohne Probleme. Allerdings fühle ich mich damit etwas ‚overdressed‘ weil ich WebDAV nicht benötige.

    2 Fragen hätte ich:

    – Kannst Du mir etwas über die Performance von Baikal vs. OC sagen?
    – Beherrecht Baikal das sharen von Kalendern mit anderen Benutzern?

    Vielen Dank!
    MacNobi

    1. Hallo MacNobi,
      zuerst würde ich mal interessieren wie du OwnCloud auf eine FB 7390 zum laufen bekommen hast. Ich hatte das eigentlich auch mal vor bloss ich habe keine Lösung gefunden um MySQL darauf installieren zu können, bzw. ich hatte so meine Zweifel ob die Performanc dafür ausreicht.

      Aber du hast schon recht, OwnCloud nur für die CalDAV Funktion laufen zu lassen ist schon ein bisschen „mit Kanonen auf Spatzen geschossen“.

      Nun mal zu deinen Fragen:
      -Performance kann ich nicht direkt vergleichen, da ich OwnCloud nicht exklusiv als CalDAV Server betrieben hatte. Ausserdem hatte ich meine OwnCloud installation ja wegen diverser anderer Probleme gelöscht.
      -Baikal hat in dem Sinne keine Rechteverwaltung. Man legt einen Benutzer an und kann für diesen mehrere Kalender anlegen. Es ist jedoch (zumindest habe ich keine Möglichkeit gefunden) nicht möglich einen Kalender für einen anderen Nutzer freizugeben oder bestimmte Rechte für verschiedene Nutzer zu definieren. Ich habe für gemeinsam genutze Kalender jeweils einen neuen User angelegt auf den dann alle Clients zugreifen.

  3. Hallo Björn,

    zusammen mit ‚buffo1987‘ haben wir das im IPPF ausgetüftelt, sie unten.
    Im Gegensatz zum dortigen HowTo, läuft meine Installation im Flash der 7390, da hier der Sync mehr als doppelt so schnell abgewickelt wird.

    Verwendet wird (nur) SQLite, was allerdings für diesen Einsatz ausreichend ist. MySQL ist wohl selbst für die 7390 etwas heftig.

    BaiKal habe ich heute morgen versucht zu installieren, scheitere aber an einem iconv() Fehler in der Tools.php, der bereits bei /admin/install auftritt. Aber, wir arbeiten dran 😉

    Gruß MacNobi

    http://www.ip-phone-forum.de/showthread.php?t=256058&p=1890113&s=1fceebdf3d3159b09c6dc6a9bf8d4853&

    1. Jetzt haste meinen Glauben an mich selbst wieder hergestellt. Hatte nämlich selbst nach ner Lösung gesucht um MySQL auf der FB zum laufen zu bekommen und dabei nichts konkretes gefunden.
      Ja ich hatte auch versucht meine FB z.B. als Cache für meine Mediaportal installationen zu nehmen, bloss war die Geschwindigkeit beim lesen vom USB Stick viel zu langsam und der Flashspeicher nicht groß genug.

      Welche PHP Version läuft denn auf der FB, soviel ich weiss brauchste für Baikal 5.3, ne ältere Version könnte das iconv- Problem erklären.

  4. Server läuft jetzt!
    Habe PHP 5.4.3, es lag daran, dass in der o. g. Tools.php eine Codewandlung (UTF-8 nach irgendwas) vorgenommen wird. Das habe ich dahingehend geändert, das der String unverändert bleibt, dann ging’s.

    Allerdings bekomme ich weder die IOS noch die Macs synchronisiert 🙁
    Aber, wir arb… Siehe oben.

  5. Alles läuft, alles synchron!

    Du hast recht was den Bekanntheitsgrad anbelangt, ohne Deinen Blog hätte ich das Programm glatt übersehen :-))

    Für den angepeilten Zweck ist das Programm eine Perle. Einfach und elegant. Auf das Kalender-Sharing kann ich (noch) verzichten, ich habe aber die Hoffnung, dass Jerome das noch einbauen wird, da das SabreDAV-Framework ausgefeilte User-Rechte unterstützt.

    Da mich jetzt wieder ‚mal das Minimalismus-Fieber gepackt hat, werde versuchen, den Apache auf der 7390 ebenfalls zu eliminieren und Baikal direkt unter der (erweiterten) Busybox laufen zu lassen. Wenn ich das hinbekomme, schreibe ich im IPPF ein kleines HowTo.

    Bitte sage mir kurz Bescheid, ob ich dann unter Credits auf Deinen Blog hinweisen darf.

    Gruß MacNobi

    1. Hallo, hoffentlich liest das noch jemand nach über einem Jahr 😉

      Ich wollte nachfragen, ob du es geschafft hast, baikal mit dem Busybox httpd auf der Fritzbox zum Laufen zu bekommen. Ich würde das nämlich auch gerne so machen (nur fürs LAN), habe aber leider kaum Ahnung davon, was ich tue.

      Ich habe das Package „php“ in mein Freetz-Image integriert, und in /mod/etc/webcfg.conf folgendes eingetragen:
      *.php:/usr/bin/php-cgi

      Php-Seiten werden so prinzipiell auch auch angezeigt, phpinfo() funktioniert. Aber wenn ich http://fritz.box:90/baikal/html/index.php aufrufe, erscheint im Firefox nur eine leere Seite, Chrome sagt „HTTP ERROR 500“.

  6. Hallo,

    habe auf meinem Webspace (Shared Hosting) Baikal installiert. Läuft auch, allerdings kann ich den Kalender nur mit Thunderbird und Lightning abrufen; wenn ich den Kalender in Rainlendar (das hauptsächlich von mir genutzte Kalenderprogramm) hinzufügen will, dann kann er scheinbar nicht mit dem Server kommunizieren. Im Rainlendar-Forum hat der Programmierer nur geschrieben, dass es bei ihm läuft.

    Hat jemand Baikal mit Rainlendar schon zum Laufen gekriegt?

    -torsten

  7. Also ich habe Rainlendar leider nicht als Vollversion (CalDAV) so dass ich es nicht testen kann. Allerdings synct Baikal quer durch die Gemeinde. Neben Lightning, auch mit IOS/OSX und neuerdings Android. An Baikal sollte es also nicht liegen.

    Allerdings sind Pfade z. T. verschieden. Vielleicht mal in den Foren nachhören, wie der korrekte Pfad bei Rainlendar sein soll.

    MacNobi

    1. Wie sieht es eigentlich aus? Haste schon ein HowTo wie man Baikal auf der FB zum laufen bekommt, bzw. hast du es nun mit dem internen Webserver der FB hinbekommen?

  8. Habe Baikal nun noch einmal neu installiert und nun geht es. Keine Ahnung, was der Fehler war, aber es läuft nun auch mit Rainlendar 🙂

    1. Allo
      Ich entschuldige mich für mein Deutsch, ich bin Französisch!
      Ich habe baikel-server installieren, ich süche eine Erklärung, dies mit Rainlendar synchronisieren. Wo kann ich Informationen finden? Funktioniert es gut? Ist es Bidirektionale? Gibt es eine Möglichkeit, um die geburtstag daten der Baikal-Server kontakte auf Rainlendar Kalender automatisch angezeigen?
      Danke,
      Yann.

  9. @ Thorsten, Glückwunsch!
    @ admin, ich tue mich da im Moment etwas schwer. httpd der busybox läuft bereits, php noch nicht (richtig). Weiterhin stelle ich mir manchmal die Frage: Was kannst’e eigentlich bei einem HowTo voraus setzen. Nebenan im IPPF führe ich gerade eine Diskussion, bei der mir nicht klar ist, ob der Teilnehmer so genau weiß was port-forwarding ist !? Ich habe ‚mal in Deinem Blog gestöbert und mitbekommen, „dem kannst’e in 3 Sätzen erklären, wie Baikal auf der FB ans fliegen kommt“. Aber, das ist nicht immer so, dennoch wir arb… siehe oben.

    MacNobi

    1. Jo ich verfolge den Thread im Forum ja auch. Ich finde es manchmal doch lustig das Leute dich nicht einmal die Grundbegriffe verstehen versuchen solche Tutorials abzuarbeiten.

      Aber das es nicht einfach ist das ganze hier auf dem BusyBox HTTPd zum laufen zu bekommen kann ich mir vorstellen. Bin ja mal gespannt ob es irgendwelche Peformance Vorteile bringt, bzw. Ressourcen einsparungen.

  10. Hi Zusammen,
    habe Baikal installiert und läuft auch soweit.
    Läuft auf einem Strato Webhosting Paket, auf einer Subdomain.

    Versuche nun in Thunderbird/Lightning den Kalender zu integrieren, leider klappt es nicht.
    Habs schon x-mal ausprobiert. Pfade geprüft etc. Der Kalender bleibt hellgrau und wird nicht aktiviert. Es erfolgt auch keine Passwortabfrage, was ich merkwürdig finde

    Kann mir jemand dazu einen Tipp geben.

  11. …. so nach unzähligen Installationen und Versuchen.

    !liegt wohl an Strato.!

    Bei Hosteurope klappt es einwandfrei.

    Kein Anhnung warum.

  12. Danke für die Empfehlung.
    Ich bin nach einer Lösung, mit der drei Nutzer auf einen Familienkalender lesend und schreibend zugreifen können. Kann ich das hiermit realisieren?
    Grüße!

    1. Das geht schon. Auch wenn Baikal keine geteilten Kalender zulässt so kann man doch einen User für die Familie anlegen und einfach User und PW auf jeden Endgerät der Familienmitglieder installieren.
      So machen wir es bei unserem Familienkalender auch.

  13. Hallo,
    ich suche genau die hier beschriebene Lösung, auf einer FB7490 meine Adressen und Kalender zu verwalten und mit verschiedenen Geräten (Linux, Android) zu synchronisieren.

    Wenn es hier also eine Anleitung gibt, würde ich mich sehr über eure Unterstützung freuen.

    Danke für eine kurze Rückmeldung zu aktuellen Stand der Realisierung.

  14. Hallo,
    habe Baikal auf meinem NAS prima zum laufen gebracht möchte es aber lieber auf mein Webpack bie HostEurope laufen haben. Obwohl die einrichtung mit SQLite klappt (mit MySQL gab es diverse Probleme) habe ich es nicht hingekriegt, mit Rewrites das Ganze über das HostEurope SSL Proxy mit https zum laufen zu bringen.
    Ich gehe davon aus, dass ich irgendwo in ein config.php etwas anpassen muß, so wie bei owncloud.
    Wenn jemand einen Tipp hat, würde ich mich sehr freuen.
    VG
    P.S. entschuldigt bitte Grammatikfehler. Bin halt kein Muttersprachler.

Schreibe einen Kommentar zu admin Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert