[Evolution] Funambol, syncing, etc.



Hi all,

Following the recent discussions, I though that I would try the syncing
method that people have been talking about (Funambol + syncevolution +
genesis), to keep my evolution contacts + my phone's contacts in sync.

Experiences and notes follow. Note the Linux distro was Ubuntu, so some
of the issues I ran into & instructions are specific to this distro, and
the phone was a Nokia N95, so some of the issues I ran into may be
specific to Nokia phones (but will probably apply to most Nokia E series
and N series phones).

== Other methods previously tried that did not work well enough ==

Prior to this I had tried a number of other method for doing this
including:
1) Conduit, syncing contacts via gmail. Keep freezing trying to sync
from evolution to gmail. Also has problems talking to phone over
bluetooth (there are bugs in gnome's bugzilla for this, it's not
feature-complete yet).
2) msynctool over bluetooth directly from evolution, as per:
http://ubuntuforums.org/showthread.php?t=705103 . It worked, but kept
stuffing things up (saying data had changed when it hadn't due to
escaping characters to HTML entities and comparing the unescaped versus
the escaped versions, and randomly inserting extra spaces - e.g.
"Australia" became "Aust ralia"). I wanted exact syncing because I
sometimes use the GPS in my phone to navigate to a contact's address
when driving, and the address has to be exactly correct for this to
work. I.e. address in evolution has to transfer completely correctly to
the phone, which msynctool did not do.
3) Set up connection to Google contacts directly through evolution (as
per: http://www.linux.com/feature/154875 ), and then syncing directly
from the Nokia phone to gmail's contacts using the steps here:
http://www.google.com/support/mobile/bin/answer.py?answer=98230&topic=15015 . However, this is buggy too (the 
address field get all mangled - I'm using separate fields for postcode/suburb/etc, and Google seemed to merge 
them into one big blob, which is not suitable because the GPS software could not parse this). I know Google's 
syncing is in beta, but for me it's not currently suitable.

So, 1 out right failure, 2 "not good enough"s, giving 3 out of 3 for
100% overall failure rate. Not good. So I was fairly dubious about
trying a fourth approach, but the level of positive comments on the list
convinced my to give the funambol method a go.

== Experience / Timeline ==
4:30 start reading - what is my Funambol, can it sync to my phone (Nokia
N95), can I sync evolution to Funambol?
4:34 reading - apparently need syncevolution to sync evolution to
Funambol.
4:37 start sign-up at My.Funambol beta ( http://my.funambol.com )
4:44 Did not get SMS (suspect problem was the leading zero in the phone
number), starting manual funambol setup on phone.
4:51 completed setup of sync profile on phone, ran sync, gave error
about wrong password (I had mistyped), corrected, repeated sync, ran
successfully.
4:58 completed reading a bit more about syncevolution. Ran: "sudo
aptitude install syncevolution". There's no such package in Ubuntu.
Express annoyance about this....
5:02 Some more googling -  https://wiki.ubuntu.com/SyncEvolution
confirms that there are no packages. 
5:03 I search for "genesis", since people have talked about this as a
nice front-end to syncevolution, and hopefully that will include the
syncevolution stuff.... however the "genesis" packages in Ubuntu are to
do with an AI-neural net learning program ("general-purpose neural
simulator")
5:15 Distracted for 12 minutes by a very large thunderstorm.
5:16 Googled for PPA genesis packages, since I have a rule that I won't
install any software unless it's packaged (wasted too much time in my
life doing this, won't do it any more). May have found some packages at:
https://launchpad.net/~frederik-elwert/+archive/ppa
5:17 sudo nano /etc/apt/sources.list , add the lines listed on the URL
above.
5:18 sudo aptitude update
5:19 sudo aptitude install genesis-sync syncevolution
5:20 The above command does not work?! "The following packages have
unmet dependencies: genesis-sync: Depends: syncevolution which is a
virtual package." .. so looks like they have packaged genesis-sync, but
not syncevolution.
5:22 Back to google: "site:launchpad.net syncevolution PPA". Find a PPA
that only has 0.7, would like latest version to avoid bugs.
5:23 A general google, finds this page:
http://www.estamos.de/blog/2008/10/11/binary-packages-for-evolution/
(which does not have links to the packages, but fortunately someone else
already asked this question in the comments and got an answer).
5:25 Follow suggested link
5:26 sudo nano /etc/apt/sources.list , add lines as per:
http://www.estamos.de/download/apt/ 
5:28 sudo aptitude install genesis-sync syncevolution
5:29 Whoops, need to do: sudo aptitude update first
5:30 redo: sudo aptitude install genesis-sync syncevolution
5:31 Yes, install the potentially untrusted packages.
5:33 Installation complete of both syncevolution and genesis-sync.
5:34 applications -> accessories -> genesis
5:35 click on the panel icon to setup genesis. Server name = "funambol",
server template = "funambol"; next; enter username +password; next; tick
address book, select contacts folder, click apply.
5:37 For some reason when I click on the panel icon again, it has
forgotten the details entered above, so I renter the same information
again.
5:38 I click synchronise on the panel icon, it runs, completes, says
some contacts have been added. This looks promising.
5:39 I synchronise on my phone. Runs, completes, says some contacts have
been added on the phone. This looks promising.
5:40 Explore on phone.

== General comments ==

* This is not easy. Any attempt to pretend this is easy is incorrect. My
grandma could not do this. My mother could not do this. Most normal
people will simply not do this many steps. As soon as it requires using
the command line, changing repositories, or anything like that, most
normal people just won't do it.
* This is not quick. Any attempt to pretend this is quick is incorrect.
Most people will give up long before spending this much time (58 minutes
in my case) on getting it to work. Especially when the other methods are
buggy, it makes you far less inclined to spend the time seeing if yet
another method works, since you start to suspect it's an intractable
problem.
* The main solution to the above 2 problems, so I can't emphasise this
enough: Please please please add Ubuntu packages for syncevolution and
genesis-sync to the standard repositories. From what I understand,
Fedora gets this right, and has packages. If "aptitude install
syncevolution genesis-sync" had worked out-of-the-box, it would have
saved a LOT of time, and made it much easier.

== Bugs ==

Having said all this, the Funambol method is still a little bit buggy /
incomplete. I particularly notice this with addresses:

* It doesn't seem to sync a contact's "other" address from evolution to
the phone, as far as I can tell. In fact, it managed to delete an
"other" address from one of my evolution contacts, probably after I
modified the contact on the phone, and then the other address that I
previously had in evolution ended up blank. I would personally prefer
that syncing didn't delete my data :-)
* If a contact has a home address in evolution, I sometimes seem to end
up with both a straight "address" on the phone, and a "home
address" (i.e. 2 addresses from 1). Then if I change the "home address",
in evolution, the "home address" on the phone updates, but the "address"
does not. ... but, if I delete the "address" on the phone, then the
"home address" in evolution sometimes also gets deleted. So there's
something odd going on here.
* I have one contact that I edited multiple times on both the phone and
in evolution, and then synced both (i.e. sync computer, sync phone, sync
computer), so that it should all be in sync, but ended up with the
address on the phone and the address on the computer out-of-sync (i.e.
two different street addresses, yet syncing did not update either, and
no warnings at either end about a conflict or being out-of-sync).

It's hard to know where these problems originate from, since there are
so many different bits of software involved, - at least 5 by my count:
Evolution <-> SyncEvolution <-> Genesis <-> Funambol <-> Nokia's sync
software on the phone; and presumably there could be problems at any
stage of that chain.

So some problems, but overall it seems to work, and it does work better
than the other methods I have tried, and once it's running, it seems
extremely easy to use, both on the phone and on the computer.

== Short version for anyone else wanting to try this on Ubuntu ==

(Also on the web at: http://nickj.org/Nokia_N95#The_N95_and_Linux )

=== Funambol + Nokia phone setup ===

Go to http://my.funambol.com/ and click "sign up", and follow the steps
to set up a username and password. (I didn't give them my email password
when they asked for this, and it still worked fine, and I don't see any
reason why they should need my email password for syncing contacts, so
up to you whether to give this info or not). Follow the instructions for
setting up the phone. Instructions for me were as follows on the Nokia
phone:

   1. Go to Menu and choose Tools
   2. Select Sync (on some devices this option is under Menu, Settings
and then Connectivity)
   3. Press Options, then New sync profile
   4. Set Sync profile name: Funambol and press OK
   5. Select Applications 
   6. Select Contacts
   7. Set Include in sync: Yes
   8. Set Remote database: card
   9. Press Back
  10. Select Calendar
  11. Set Include in sync: Yes
  12. Set Remote database: cal
  13. Press Back twice
  14. Select Connection settings
  15. Set Server Version: 1.2
  16. Set Data bearer: Internet
  17. Set Access point: enter a working internet connection (if you
don't have one, contact your mobile provider)
  18. Set Host address: http://my.funambol.com/sync
  19. Set Port: 80
  20. Set User name: <Funambol username>
  21. Set Password: <Funambol password>
  22. Press Back to save the changes

Should then have syncing of contacts with the phone.

=== Ubuntu desktop ===

On an Ubuntu desktop where you run evolution, do this to set up the
third-party repositories + install the needed software + configure it:

sudo nano /etc/apt/sources.list
... and add these lines:

# For genesis-sync packages, currently unauthenticated:
deb http://ppa.launchpad.net/frederik-elwert/ppa/ubuntu intrepid main
deb-src http://ppa.launchpad.net/frederik-elwert/ppa/ubuntu intrepid
main

# For syncevolution packages, currently unauthenticated:
deb http://www.estamos.de/download/apt stable main


... then:
sudo aptitude update
sudo aptitude install genesis-sync syncevolution-evolution
... "yes" to the untrusted packages (up to you though).

* Run Genesis: Applications -> Accessories -> Genesis.
* Click on the genesis panel icon to setup genesis. Server name =
"funambol", server template = "funambol"; next; enter username +
password; next; tick address book, select desired contacts folder, click
apply.
* Click the genesis panel icon again to run the sync.
* Once you're happy with this, if you want to have genesis available
whenever you need it, right-click on the Genesis icon -> Preferences ->
Tick "Launch Genesis on startup".

Following the above steps, it's achievable to have 2-way syncing of a
phone + evolution, from scratch, including
installation/configuration/setup/running, within about 30 minutes.


-- All the best,
Nick.




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]