There's a long history of syncing mobile devices with Linux.

That long history is mostly filled with one device not synchronising, followed by another device not working, followed by another.

The problem is that the protocols and software used by most devices to talk with one another are closely guarded secrets, and anyone attempting to write an open source client needs to decode those protocols bit by bit, and then stay ahead of any changes.

Hopefully, newer and more open platforms like Google Android, the freshly open sourced Symbian or Qt will mean that decent open protocols can be developed to ease the pain for Linux users and device compatibility.

Despite the negativity in our first sentence, things have recently got a lot better. There are several workable solutions you can use today. They might be a little messy, and use a hotchpotch of Gnome and KDE applications, but they can be made to work and we're going to show you how.

The devices we're going to be focusing our efforts on run Windows Mobile versions 5 or 6, and for simple synchronisation, we're going to stick to using a USB connection.

We hope this is going to be the most common configuration used by many people with a smart phone, but both Nokia and Blackberry devices can easily be accommodated by changing the synchronisation back-end. This renaissance in mobile synchronisation is mostly thanks to the last two versions of the Mandriva distribution.

Both 2008 and 2009 releases make the bold claim that they'll synchronise your desktop settings with those on your Windows mobile devices, and Mandriva has expended a lot of effort in trying to make this happen.

The developers have removed the aged odccm daemon that used to keep connection to Windows Mobile devices alive, and replaced it with synce-hal, which handles connections and disconnections automatically.

Merci, messieurs

Mandriva developers also patched Blackberry support into their synchronisation framework, which means you should have little trouble adding a Blackberry device in the same way we're adding a Windows Mobile device. For these reasons, if mobile synchronisation is important to you or your work, we'd recommend using Mandriva Linux One 2009.

Installation and configuration is relatively painless, and you're guaranteed a certain amount of future proofing, as it seems Mandriva has committed itself to synchronisation support.

If you're not willing to switch distros, you can still create a working configuration – it's just going to take a little longer. We'll be using the Mandriva method as the foundation for our instructions, but we'll also cover installation for Ubuntu/Debian users at the same time. We were able to get synchronisation working on both without too much difficulty, and there's very little operational difference between the two when you get everything working.

Step 1: Preparation

There are several pieces of software we're reliant on for the synchronisation to work. The most important, and the part that holds all the other pieces together, is called OpenSync. OpenSync acts as like the railway porter for your synchronised data. It will take the connection from your mobile phone and point it in the direction of your email client, converting the data in the process.

The function of those directions is entirely dependent on plugins. A Windows Mobile device, for example, will need a Windows Mobile plugin, and if you use Evolution for contacts and events, you will need an Evolution plugin to handle the data. This makes OpenSync supremely extendible.

In theory, all you need to add for a new device is a corresponding plugin, and there are plenty of plugins for many mobile devices, including Windows Mobile, Nokia Symbian, Blackberry and Palm. But OpenSync is also flexible: there's no rule to say it must always be used to synchronise a mobile device with a piece of personal information software.