Proposal #2. Turn peer configuration into just-another-source kind.
(As being quite new to SyncEvo) I don't see a big difference between
"source" and "peer" configurations. At least, the difference isn't
bigger then for example the difference between supported sources
backends. Even more, some of the sources look more like remote peers,
but only with another protocol (CalDAV and ActiveSync come to mind).
Peers are just sources, special in one thing: they are SyncML-servers.
But as SyncEvo can bear this functionality, and this makes peers no
more special: sources can now sync between each other without peers
(using target-config, currently).
Accepting this change would bring us to a simpler picture where every
context has just a set of sources each having:
1. the database/databases property
2. the sync mode, which clearly defines data flow permissions, e.g. rw,
read-only, write-only, none
3. their whitelist and/or blacklist of sources to sync with. E.g. I
want my phone (backend=obex) to sync with the local addressbook
(backend=eds), but not with Google (backend=SyncML-server).
Depending on types of sources to be synced, SyncEvo may decide to use
embedded SyncML-server or source's server capability if backend is
And drop the cryptic target-config.
Just my fantasy, but what do you think?
Ildar Mulyukov, free SW designer/programmer
ALT Linux Sisyphus