KDE developers made the decision to drop the current synchronization code, including KPilot, an older application also called KitchenSync, KSync, Kandy, and libksync, earlier this year in Spain at the aKadamy conference, just days after a SUSE-sponsored coding session in Nuremberg, Germany, where the KitchenSync interface was developed.
Although it recycles an old name, the new KitchenSync is promised to be more compatible than its predecessors, and work with any mobile device or application for which somebody has written a plugin. The KDE-based front end and the OpenSync back end with which it is designed to operate are expected to be simultaneously released in early 2006 with support for at least Palm OS-based devices, SyncML, Evolution, Kontact, and some IrMC-capable mobile devices, according to a post from KDE core developer Cornelius Schumacher at KDE Dot News.
KPilot will be dropped from the KDE core, though it will continue to be developed, Schumacher said in an interview, and KitchenSync will become the primary syncing application in KDE 4. Schumacher said it makes sense for KDE to use the OpenSync framework because it will eliminate redundancies the KDE project was running into. He said KDE's own similar code had become a burden and was not developing at the same rate as other parts of the desktop environment.
"It included some good ideas and in a few areas it also was further [along] than the OpenSync code," Schumacher said. "But with OpenSync becoming mature and ready to use we will have much more progress than with sticking to our own code. And the missing features can be added to OpenSync where they can benefit more people than if they are just in KDE. [It was] a logical decision to adapt the framework as a base for KDE's needs rather than pursue [our] own solution."
Schumacher said that by separating the problems into separate domains of independent device plugins and a generic library for syncing "everything you can think of" it becomes easy to add specific devices. The model allows plugin authors to concentrate on device-specific problems and eliminate some of the work because only data conversions will be necessary, and "the rest comes from the generic OpenSync framework."
OpenSync is designed as a framework to operate behind a graphical interface, such as the one developed by KDE, but should work on any operating system, including Windows and Mac OS, according to the project's Web site. Exactly what can be synced using the framework is based on vendor- or developer-generated plugins. Already available are plugins for SyncML, Kdepim, Evolution 2, and File-sync. Potential targets also include groupware servers KDE already supports, such as Kolab, Open-Xchange, OpenGroupware, and Groupwise. A team of three or four developers, he said, is working on plugins to add to those already available for the environment.
OpenSync is designed as a platform on which any synchronization software may be built, said Armin Bauer, a main developer on the project. He said he expects to see a GNOME front end and likely integration into Evolution 2 and Mozilla Thunderbird.
"The idea of OpenSync is to create a common basis on which all applications that would like to have synchronization support can build," Bauer said. Over time Bauer said he expects to see a growing range of plugins available for OpenSync-based applications.
Adriaan de Groot, the developer of KPilot, said he applauds the effort to unify syncing solutions under one framework, an idea he said he had been involved with at its genesis but couldn't devote the time to. Although he expects KPilot to "stick around" as a Palm syncing tool, he said he hoped OpenSync would get what KPilot had not: "Support from the vendors whose products it enables." He said that centralization for manufacturers to focus Linux support on will benefit all PDA-using Linux users.
"The fragmentation of APIs and user interfaces caused by so many different incompatible applications has, in my mind, slowed down progress by making it hard for PDA manufacturers to contact us, the open source community," de Groot said. "Combining the efforts under one banner makes it clear where PDA manufacturers should send support efforts: to the unified sync framework."
With KitchenSync eliminating the need to integrate multiple frameworks or develop dedicated applications for individual devices, Schumacher said he is hopeful that vendors will write and maintain the software necessary for Linux users to sync with their chosen desktops because it is so easy.