Kmail und PostgreSQL zusammenbringen

Kmail, das Mailprogramm des KDE Projekts, kommt ja nicht alleine daher. Mit dabei ist auch ein Adressbuch, eine Terminverwaltung, ein Benachrichtigungsdienst und noch einiges mehr. Das ganze wird von Akonadi, dem dahinterliegenden Backend der gesamten KDE PIM Suite, sozusagen am Laufen gehalten.

Standardmäßig läuft Akonadi mit MySQL als Datenbanksystem, was bei mir aber immer wieder Zicken gemacht hat. Daher habe ich mich mal nach Alternativen umgesehen und bin neben SQLite bei PostgreSQL gelandet. Über SQLite und die Implementierung in Akonadi gab es leider einige negative Berichte, darum habe ich es direkt aussortiert.
Mit PostgreSQL hatte ich keine Erfahrungen, konnte es aber recht schnell einrichten. Die Anbindung von Akonadi und somit Kmail an PostgreSQL war ebenfalls einfach.

Alle Schritte unter openSUSE

Zuerst installieren wir alle nötigen Pakete für PostgreSQL und die Akonadi-Anbindung:

# zypper in postgresql-server libQt5Sql5-postgresql

PostgreSQL Server aktivieren und starten:

# systemctl enable --now postgresql

Postgres-Nutzer und -Datenbank anlegen:

# su - postgres
$ createuser <dein-nutzername>
$ psql postgres
postgres=# alter user <dein-nutzername> createdb;
postgres=# \q;
# exit

Dann richten wir – mit deinem regulären Nutzerkonto – den Datenbankzugriff einrichten:

$ createdb akonadi-<dein-nutzername>

Nun stoppen wir Akonadi und löschen bzw. verschieben die Einstellungen. Das ist besonders wichtig, falls du Akonadi schon einmal gestartet hast!

$ akonadictl stop
$ rm -rf ~/.local/share/akonadi

Die Verbindung zum Datenbankserver passen wir in der Datei ~/.config/akonadi/akonadiserverrc wie folgt an:

[%General]
Driver=QPSQL

[QPSQL]
Host=/tmp/akonadi-<dein-nutzername>.hash
InitDbPath=/usr/bin/initdb
Name=akonadi
Options=
ServerPath=/usr/bin/pg_ctl
StartServer=true

Abschließend Akonadi neu starten und du bist startklar:

$ akonadictl start