SyncEvolution in Fremantle

SyncEvolution in Fremantle

Patrick Ohly
Karma: 80
2009-10-22 07:45 UTC
Hello Maemo!

It has been a while that I posted anything here. Ironically, since I
started working on SyncEvolution full-time beginning of this year, I
seem to have *less* time left compared to the previous years when I did
it in my spare time ;-)

For those who haven't heard about it:
* SyncEvolution is a SyncML client synchronizing PIM data with
SyncML servers [1]. The versions <= 0.8.1 are available for
Maemo [2] and work with the builtin address book and the Dates
calendar.
* This year it became the sync solution in Moblin and switched to
the Synthesis SyncML engine [3], with the goal of using that
also as SyncML server on a desktop [4].
* We have direct client to server synchronization working in the
development branch, without depending on closed third party
software [5].

I'd love to see the latest SyncEvolution releases packaged properly for
Maemo, and so do users [6]. 0.8.1 still works fine on the older Maemo
releases it is available for, but 0.9 has several relevant improvements,
for example synchronization with Google Contacts and a GTK GUI.

I'm posting here because I hope that an interested developer or
maintainer will step up and take over packaging for Maemo. You can be
sure that this will have full support when it comes to merging patches
and including the Maemo port as first-class citizen in releases.

Another interesting area to work on would be support for other local
databases. GPE has been asked for several times. There is a plugable
backend API which would allow that, if a developer is interested [7].
That article is a bit dated, but still relevant. 0.9.1 (about to be
released) has several improvements that make writing a backend simpler,
for example it is not necessary to have your own
vCard/iCalendar/vCalendar encoder/decoder. Instead, it is possible to
exchange properties directly with the internal Synthesis format [8]. The
sqlite backend demonstrates that. For an introduction to the Synthesis
engine see [9].

I'm cross-posting to the SyncEvolution list to keep the other
SyncEvolution developers informed. If there's anything that I can help
with, please don't hesitate to reply here or contact me directly.

[1] http://syncevolution.org
[2] http://maemo.org/downloads/product/OS2008/syncevolution/
[3] http://www.estamos.de/blog/2009/05/13/syncevolution-09-beta-1-full-time-project-using-synthesis-syncml-engine/
[4] http://syncevolution.org/development/direct-synchronization-aka-syncml-server
[5] http://article.gmane.org/gmane.comp.mobile.syncevolution/434
[6] http://talk.maemo.org/showthread.php?t=32515
[7] http://www.estamos.de/blog/2008/08/04/syncml-client-do-it-yourself-style/
[8] http://article.gmane.org/gmane.comp.mobile.syncevolution/136
[9] http://syncevolution.org/development/pim-data-synchronization-why-it-so-hard

--
Bye, Patrick Ohly
--
Patrick.Ohly@gmx.de
http://www.estamos.de/


  •  Reply

Re: SyncEvolution in Fremantle

Yves-Alexis Perez
Karma: 140
2009-10-22 09:22 UTC
Patrick Ohly a écrit :
> Hello Maemo!
>
> It has been a while that I posted anything here. Ironically, since I
> started working on SyncEvolution full-time beginning of this year, I
> seem to have *less* time left compared to the previous years when I did
> it in my spare time ;-)
>
> For those who haven't heard about it:
> * SyncEvolution is a SyncML client synchronizing PIM data with
> SyncML servers [1]. The versions <= 0.8.1 are available for
> Maemo [2] and work with the builtin address book and the Dates
> calendar.
> * This year it became the sync solution in Moblin and switched to
> the Synthesis SyncML engine [3], with the goal of using that
> also as SyncML server on a desktop [4].
> * We have direct client to server synchronization working in the
> development branch, without depending on closed third party
> software [5].
>
> I'd love to see the latest SyncEvolution releases packaged properly for
> Maemo, and so do users [6]. 0.8.1 still works fine on the older Maemo
> releases it is available for, but 0.9 has several relevant improvements,
> for example synchronization with Google Contacts and a GTK GUI.
>
> I'm posting here because I hope that an interested developer or
> maintainer will step up and take over packaging for Maemo. You can be
> sure that this will have full support when it comes to merging patches
> and including the Maemo port as first-class citizen in releases.
>
Eh, funny, I just posted yet another thread on talk
(http://talk.maemo.org/showthread.php?t=33308)

The syncevolution and libsynthesis packages have recently been uploaded
to Debian (I sponsored them) and I would really be interested to be able
to use them on both laptop and n900 (when I have one). So yeah, at one
point I may give a hand for that to happen.

Does the to-be-release 0.9.1 will do the direct sync without third party
syncML servers?

Cheers,

--
Yves-Alexis
  •  Reply

Re: SyncEvolution in Fremantle

Patrick Ohly
Karma: 80
2009-10-22 10:00 UTC
On Thu, 2009-10-22 at 11:22 +0200, Yves-Alexis Perez wrote:
> Patrick Ohly a écrit :
> > I'm posting here because I hope that an interested developer or
> > maintainer will step up and take over packaging for Maemo. You can be
> > sure that this will have full support when it comes to merging patches
> > and including the Maemo port as first-class citizen in releases.
> >
> Eh, funny, I just posted yet another thread on talk
> (http://talk.maemo.org/showthread.php?t=33308)
>
> The syncevolution and libsynthesis packages have recently been uploaded
> to Debian (I sponsored them) and I would really be interested to be able
> to use them on both laptop and n900 (when I have one). So yeah, at one
> point I may give a hand for that to happen.
>
> Does the to-be-release 0.9.1 will do the direct sync without third party
> syncML servers?

No, 0.9.1 adds some new features and bug fixes:
http://syncevolution.org/blogs/pohly/2009/syncevolution-091-beta-released

The direct sync will come in 1.0, in one way or another. There's still a
lot of work left to do. On the development branch it is working, with
known issues and manual configuration. Once we solve the known issues,
we still need to figure out how to automate the setup and make it easier
to use.

--
Bye, Patrick Ohly
--
Patrick.Ohly@gmx.de
http://www.estamos.de/


  •  Reply

Re: SyncEvolution in Fremantle

Max Mikh
Karma: 192
2009-12-12 22:59 UTC
Hi Patrick,

I tried to compile syncevolution-0.9.2+1.0alpha1 for maemo5. Unfortunately I don't have huge experience for compile (I mostly working on Java and .NET).

For compile I used this command:
./configure --prefix=/opt --host=arm --enable-maemo --enable-dbus-service --enable-evolution-compatibility
It is give me:
config.status: executing depfiles commands
checking for EPACKAGE... yes
checking for ECAL... no
checking for ECAL... no
checking for ECAL... no
checking for EBOOK... yes
configure: error: libecal not found. Use --disable-ecal to compile without or install the necessary development files.

Could you like to give advice how to compile it?
libecal is absent in maemo 5. Probably it should be compiled for calendar-backend-dev or libedataserver-dev.

I tried to play with modification ./configure and /src/backends/evolution$ cat configure-sub.in.
When I modify /src/backends/evolution$ cat configure-sub.in (change pkg_emodules_12="libedataserver-1.2" to pkg_emodules_12="libedataserver-1.4") nothing was changed.
if I made same changes in ./configure than library wasn't find. Maemo 5 used libedataserver-1.4 library.

thank you advance
  •  Reply

Re: SyncEvolution in Fremantle

Ove Kaaven
Karma: 26
2009-12-20 20:05 UTC
Hi, Patrick.

I'm new to Maemo, but I've been a Debian Developer for a long time. I
recently got a N900, and decided I really want to sync my stuff.

I've managed to build the current syncevolution git on Maemo5 (in
Scratchbox), however it did not build cleanly without a few changes (and
I disabled shared libraries since cppunit was not available). Also when
built with optimization it crashes immediately, but appears to at least
start OK when built without optimization. I used the included
debian/rules with a couple of extra environment variables set.

(I'll allow anyone desperate enough to get the .deb I ended up with last
night at http://www.ping.uio.no/~ovehk/maemo/ if they really, really,
want, but it's obviously not anywhere near end-user-ready, there's no
GUI, it's built without optimization, it seems to include
flashmemory-space-wasting .h and .a files, and I disabled regular
expressions.)

Since N900's calendar application no longer uses the evolution backend
(but something Nokia-specific, I guess - some C++ API on top of a sqlite
database), I guess I may have to write a brand new backend in order to
sync the calendar. N900's addressbook still uses the evolution backend,
though. I managed to sync the addressbook in scratchbox, haven't tried
the actual device yet.

Patrick Ohly skrev:
> I'd love to see the latest SyncEvolution releases packaged properly for
> Maemo, and so do users [6]. 0.8.1 still works fine on the older Maemo
> releases it is available for, but 0.9 has several relevant improvements,
> for example synchronization with Google Contacts and a GTK GUI.

Hmm. If someone also made direct sync with Google Calendar, then it
would be really useful...

> I'm posting here because I hope that an interested developer or
> maintainer will step up and take over packaging for Maemo. You can be
> sure that this will have full support when it comes to merging patches
> and including the Maemo port as first-class citizen in releases.

I don't suppose anyone else started working on this yet? If not, do you
have any recommendations on where to start? What version of the software
would it be best/easiest to try packaging, for instance, or is git head
"stable" enough?

Ove
  •  Reply

Re: SyncEvolution in Fremantle

David Greaves
Karma: 714
2009-12-20 23:58 UTC
Ove Kaaven wrote:
> Hi, Patrick.
>
> I'm new to Maemo, but I've been a Debian Developer for a long time. I
> recently got a N900, and decided I really want to sync my stuff.

Hi Ove, welcome to maemo-dev :)

Just breaking lurker status on this thread and saying that I'm really pleased
that someone's making an effort - if you could push your git tree to
gitorious.org (maemo's de-facto git-sharing service) that would be really nice
even though I realise it is likely to be ugly atm.

Also maybe start scribbling on the maemo.org wiki too?

Cheers

David/lbt


--
"Don't worry, you'll be fine; I saw it work in a cartoon once..."
  •  Reply

RE: [SyncEvolution] SyncEvolution in Fremantle

Chen, Congwu

2009-12-21 01:50 UTC
Hello Ove!
Patrick is on vocation these days so I will try to answer your
question first.

Ove Kaaven wrote:
>
>Hi, Patrick.
>
>I'm new to Maemo, but I've been a Debian Developer for a long time. I
>recently got a N900, and decided I really want to sync my stuff.
>
>I've managed to build the current syncevolution git on Maemo5 (in
>Scratchbox), however it did not build cleanly without a few changes (and
>I disabled shared libraries since cppunit was not available). Also when
>built with optimization it crashes immediately, but appears to at least
>start OK when built without optimization. I used the included
>debian/rules with a couple of extra environment variables set.
>
>(I'll allow anyone desperate enough to get the .deb I ended up with last
>night at http://www.ping.uio.no/~ovehk/maemo/ if they really, really,
>want, but it's obviously not anywhere near end-user-ready, there's no
>GUI, it's built without optimization, it seems to include
>flashmemory-space-wasting .h and .a files, and I disabled regular
>expressions.)
>
>Since N900's calendar application no longer uses the evolution backend
>(but something Nokia-specific, I guess - some C++ API on top of a sqlite
>database), I guess I may have to write a brand new backend in order to
>sync the calendar. N900's addressbook still uses the evolution backend,
>though. I managed to sync the addressbook in scratchbox, haven't tried
>the actual device yet.
Great progress! Regarding the calendar backend, you are right. We need
to write a new backend to support it. We have a bug entry tracking this issue
[1], however we have no resource to work on it at this time. If you can come
up and take it, that will be great.

>Patrick Ohly skrev:
>> I'd love to see the latest SyncEvolution releases packaged properly for
>> Maemo, and so do users [6]. 0.8.1 still works fine on the older Maemo
>> releases it is available for, but 0.9 has several relevant improvements,
>> for example synchronization with Google Contacts and a GTK GUI.
>
>Hmm. If someone also made direct sync with Google Calendar, then it
>would be really useful...
That's not possible with SyncML protocol, webDav(which is not really sync) and
ActiveSync may works, but SyncEvolution currently does not support either.

>> I'm posting here because I hope that an interested developer or
>> maintainer will step up and take over packaging for Maemo. You can be
>> sure that this will have full support when it comes to merging patches
>> and including the Maemo port as first-class citizen in releases.
>
>I don't suppose anyone else started working on this yet? If not, do you
>have any recommendations on where to start? What version of the software
>would it be best/easiest to try packaging, for instance, or is git head
>"stable" enough?
SyncEvolution 0.9.1 is the latest stable release, that will be a good version to start.
There are heavy developments towards 1.0 release so I will not recommend git head
at the moment.

[1] http://bugzilla.moblin.org/show_bug.cgi?id=8511
[2] http://git.moblin.org/cgit.cgi/syncevolution/tag/?id=syncevolution-0-9-1

Best Regards,
Congwu
  •  Reply

Re: [SyncEvolution] SyncEvolution in Fremantle

Ove Kaaven
Karma: 26
2009-12-23 05:24 UTC
Chen, Congwu skrev:
> Great progress! Regarding the calendar backend, you are right. We need
> to write a new backend to support it. We have a bug entry tracking this issue
> [1], however we have no resource to work on it at this time. If you can come
> up and take it, that will be great.

Yeah, I'll have a go at it soon.

(By the way, I did successfully sync the addressbook on the actual
device using that .deb I posted a link to, so now it's time to debug the
crash with optimization enabled, and start coding what's left to be
done, I guess...)

> That's not possible with SyncML protocol, webDav(which is not really sync) and
> ActiveSync may works, but SyncEvolution currently does not support either.

Oh well. Best to stick with ScheduleWorld and/or GooSync, then...

> SyncEvolution 0.9.1 is the latest stable release, that will be a good version to start.
> There are heavy developments towards 1.0 release so I will not recommend git head
> at the moment.

What about the libsynthesis? Is there any recommended tag for that?


David Greaves skrev:
> Hi Ove, welcome to maemo-dev :)

Thanks.

> Just breaking lurker status on this thread and saying that I'm really
> pleased that someone's making an effort - if you could push your git
> tree to gitorious.org (maemo's de-facto git-sharing service) that
> would be really nice even though I realise it is likely to be ugly
> atm.

Hmm. It was my impression that Patrick wanted Maemo patches to go into
syncevolution's own git; if so, it would probably be fairly meaningless
to also push it to another git repository.

> Also maybe start scribbling on the maemo.org wiki too?

What would I write?
  •  Reply

RE: [SyncEvolution] SyncEvolution in Fremantle

Chen, Congwu

2009-12-23 05:45 UTC
Ove Kaaven wrote:
>Chen, Congwu skrev:
>> SyncEvolution 0.9.1 is the latest stable release, that will be a good version to
>start.
>
>What about the libsynthesis? Is there any recommended tag for that?
>
There is also a 0.9.1 tag in libsynthesis repo hosted on moblin.org, see
http://git.moblin.org/cgit.cgi/libsynthesis/tag/?id=libsynthesis_3.2.0.35%2bsyncevolution-0-9-1
--
Best Regards,
Congwu
  •  Reply

Re: SyncEvolution in Fremantle

Ove Kaaven
Karma: 26
2009-12-24 08:03 UTC
Update:

I've built a far better .deb based on SyncEvolution 0.9.1, and put it up
at http://people.debian.org/~ovek/maemo/

It can't yet be built with a buildbot, primarily because not all of its
build-dependencies exist in maemo-devel, cppunit in particular. (I had
to install it locally into my scratchbox to build this.) It'd be great
if anyone would try to put cppunit into extras-devel (the debian package
of cppunit can't be ported directly since it depends on qt3, which
doesn't exist on maemo5, but simply compiling out the qt parts works for
me, I don't need them).

However, the binary package is probably fairly ready for testing. It is
compiled with optimization, optified, and stuff. It will synchronize
your addressbook via the Evolution backend, as well as your calendar
(including tasks and notes), via the Maemo-Calendar backend which I've
spent the last two days writing, and which now seems to work fine for me.

Wasn't sure what URI scheme to use to let the user configure which
calendar to sync, for now I've settled on "id:<calendar ID>", and
defaulting to the same calendar that Nokia PC Suite would sync to.

Anyway, everything I've got on ScheduleWorld is now also available on
the N900's builtin contacts and calendar apps... rockin',

There's still no GUI. For fun I tried to run the gtk+ ui (and again
stumbled across missing build-deps when building it - the 0.9.1 version
can't be built because of missing gnome-keyring, the git head version is
slightly easier to build), but it was totally worthless on the N900.
Guess it'd be necessary for someone to build a new GUI for this. Or
maybe a control panel applet or something. Hmm.

Still, it seems to work fine from the command line, if you really need
to sync your stuff. That's all I need, at least...

  •  Reply
1 2 3 next »