[SyncEvolution] status update Akonadi + KDE
patrick.ohly at intel.com
Tue Jan 31 08:23:45 PST 2012
I've started to compile and test the Akonadi backend and KWallet support
as part of the nightly testing. The goal is to include the backend in
the SyncEvolution 1.3 binaries from syncevolution.org.
This will be experimental. Someone has to step up and start supporting
that code as part of the SyncEvolution project, otherwise it'll never be
ready for normal users.
After fixing some bitrot (didn't compile, partly broken by API changes,
partly by genuine bugs in the orginal code) it now runs in the nightly
testing. I'm doing very limited testing (only contacts) and I ignore
basically all valgrind warnings inside KDE/Qt code.
The testDelete404 fails because AkonadiSyncSource::removeItem() doesn't
detect attempts to delete a non-existent item. That is only relevant for
SyncEvolution's virtual calendar+todo storage (used when syncing with
Speaking of combined calendar+todo, I doubt that the backend properly
handles that case when Akonadi itself stores events and tasks in the
same resource. The SyncEvolution backend is expected to only report one
or the other, but not both even if they happen to be in the same Akonadi
All tests involving more advanced test data fail because the test data
was written for EDS. Akonadi uses a different vCard flavor (different
extensions, for example), so different test data has to be created.
KWallet support is enabled. It'll be used instead of GNOME keyring if
SyncEvolution runs inside a KDE session (KDE_FULL_SESSION env variable
When using the "backend = addressbook/calendar/todo/memo" aliases, then
the EDS backend is selected. This is what happens when following the
current setup instructions or the GTK sync UI. This is done to avoid
regressions for the traditional users of SyncEvolution.
Even if SyncEvolution somehow figured out that "addressbook" is meant to
be the KDE addressbook (for example by looking at KDE_FULL_SESSION once
more), fully automatic configuration for KDE still wouldn't work because
the "database" property has to be set explicitly to a URI of an Akonadi
resource. There is no code in the backend or Akonadi to identify the
I'll post more information about how to use it after some more testing.
Best Regards, Patrick Ohly
The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.
More information about the SyncEvolution