[Kde-pim] Using Akonadi on other platforms than KDE

Gregory Schlomoff gregory.schlomoff at gmail.com
Mon Sep 6 13:42:39 BST 2010


Hello,

First of all, thanks a lot for all the replies.

Yes, as Tobias pointed out, I wasn't very aware of the difference between
Akonadi server and the access libraires. I guess that what Will refers to
as 'akonadi the middleware' is another term for the access librairies.

"Akonadi" was an unclear concept in my mind, and as we all know, unclear
concepts are the root of all evil. Now, what I've understand is that there
is :

- Akonadi server, that provides local storage / caching for PIM objects in a
MySQL database.
- Akonadi middleware that uses Akonadi server to store / retrieve data to
and from the local cache

To make things clear, our most basic needs are :
- to be able to fetch emails from an IMAP server
- to store them to a local cache, and to retrieve them from the cache
- to do all this in the most elegant and simple way, without relying on KDE,
or even on the fact that an instance of Akonadi server is running on the
machine.

So the path that we're planning to adopt is the following:

1. Build Akonadi server on windows, without KDE dependencies (so that should
be the easy part, if I understand well, as this is already the case.)

2. Port the Akonadi agents that we're interested into, and their
dependencies. That would be at least KIMAP, KJob, and KMIME, possibly a
bunch of others. For the first three, we've already done part of the job.

3. If everything goes well, we should be able to start an instance of
Akonadi server in a different D-Bus session, as Kevin explained, and
interact with our server from our app.

Does it all sounds realistic ?

As for the licence issues, is everything LGPL'd? Our project is commercial,
but obviously we would be releasing back all the work done in order to get
this setup working.

Thanks again for your help,

Greg


On Mon, Sep 6, 2010 at 6:55 PM, Will Stephenson <wstephenson at kde.org> wrote:

> On Monday 06 September 2010 11:20:11 Kevin Krammer wrote:
> > > We are willing to put some time and some development effort into this,
> > > but we need some pointers.
> > >
> > >
> > >
> > > - What are the general steps to use akonadi as a library for a program?
> >
> > I don't think anybody has attempted something like this yet.
> > The architecture is centered around having Akonadi as a separate process,
> > e.g.  to have only one process accessing on-disk cache (no unreliable
> file
> > locking), provide change notifications on per-item level, have a
> > technology and licence barrier, etc.
>
> Did Greg mean 'akonadi the server' or 'akonadi the middleware'?  If the
> latter
> he's just asking how to use Akonadi from a non-KDE client in general terms.
>
> > > - Is that a good idea at all? Since Akonadi is designed to serve as a
> > > central cache for several PIM apps, does it make any sense to try to
> use
> > > it a library for a stand-alone app ?
>
> Even with only one app using it, having the cache/storage in a separate
> process gives you nice crash isolation between the storage and the UI.
>  KMail
> and Akregator have both been through several corrupted message index bugs
> due
> to crashes in their UIs.  And on Gnome, Evolution's out of process Data
> Server, while available to other processes, is mainly intended for
> Evolution's
> use - Evo cannot run its components as individual processes as Kontact -
> >KMail,KAddressBook,KOrganizer can.
>
> Will
> _______________________________________________
> KDE PIM mailing list kde-pim at kde.org
> https://mail.kde.org/mailman/listinfo/kde-pim
> KDE PIM home page at http://pim.kde.org/
>
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/



More information about the kde-pim mailing list