Baïkal is a lightweight CalDAV+CardDAV server.


For this guide you should be familiar with the basic concepts of


We’re using PHP in the stable version 8.1:

[isabell@stardust ~]$ uberspace tools version show php
Using 'PHP' version: '8.1'
[isabell@stardust ~]$

Your website domain needs to be set up:

[isabell@stardust ~]$ uberspace web domain list
[isabell@stardust ~]$


Remove your html directory and download the current version of Baïkal from the github release. Link the Baïkal html directory as your new

[isabell@stardust ~]$ cd /var/www/virtual/$USER/
[isabell@stardust isabell]$ rm -f html/nocontent.html; rmdir html
[isabell@stardust isabell]$ wget
[isabell@stardust isabell]$ unzip
[isabell@stardust isabell]$ rm
[isabell@stardust isabell]$ ln -s baikal/html html
[isabell@stardust isabell]$

You can also choose not to replace your html directory (and e.g. install Baïkal in a subdirectory or under a subdomain). In that case, you need to perform additional configuration steps.


After the installation you need to open in your browser to finish your setup.

Fill out your system settings, admin user and database settings, you can use the included SQLite database or MySQL.


Check Baïkal’s stable releases for the latest versions. You might want to use the baikal_updates script for doing these checks. If a newer version is available, you should manually update your installation.

Backup your Specific directory and the baikal.yaml config file, delete everything else in your html directory.

[isabell@stardust ~]$ cd /var/www/virtual/$USER/html/
[isabell@stardust html]$ cp -r Specific ~
[isabell@stardust html]$ cp baikal.yaml ~
[isabell@stardust html]$ rm -rf * .*

Proceed with the installation steps from here and move back your config files.

[isabell@stardust html]$ mv ~/Specific ./
[isabell@stardust html]$ mv ~/baikal.yaml ./config/
[isabell@stardust html]$

Finish the update by open in your browser.

Tested with Baïkal 0.9.2, PHP 8.1 and Uberspace 7.13.0

Written by: Thomas Johnson <>