Hi,

i am now releasing the initial version of OpenSync and Multisync-0.90.
The code has the be considered alpha status. A lot of stuff if missing,
but there is enough in it to show the ideas behind these libraries.

The release consists of 2 tarballs (no public repo at the moment, im
working on setting on up). 

The OpenSync contains the code for managing plugins, syncgroups,
configuration files etc. and the plugins themselves. The only plugin
available at the moment (the works and builds correctly) is the
file-sync plugin which synchronizes a directory.

The multisync tarball contains the code for the syncengine and a
commandline client to use the syncengine and opensync.

Here is a short howto:

Download and untar the
http://www.multisync.org/files/multisync-0.90.0.tar.gz and the
http://www.multisync.org/files/opensync-0.1.tar.gz files.

Go into the OpenSync directory and:
./autogen.sh
make
make install

the depencies are: libdb with major version 4, glib and libxml

then go into the plugins/file-sync directory and do:
./autogen.sh
make
make install

After that go to the multisync-0.90 directory and build and install it.

After it has finished building, you can use the programm called
msynctool.

msynctool --listplugins
should list only the file-sync plugin.

Now lets try to synchronize two directories:

msynctool --addgroup "groupname"
will add a new syncgroup with the given name

then you can add two members of type filesync to this group:
msynctool --addmember "groupname" file-sync
msynctool --addmember "groupname" file-sync
(2 times since we need at least 2 members)

Now configure each member:
msynctool --configure "groupname" 1
msynctool --configure "groupname" 2
the numbers are the numbers return by --showgroup. the --configure
command will open an editor with an empty file for both plugins. Specify
a directory you want to sync (for example specify /home/jack/r1 for the
first plugin and /home/jack/r2 for the second.) The directories you
specify must exist of course.

Now type:
msynctool --sync "groupname"

This should print a couple of lines telling about member connecting and
disconnecting.

Now create some data inside one the directories:
touch /home/jack/r1/file1

now you can synchronize the data across those 2 directories.

Other things you can try:

the syncengine is capable of handling more than 2 members. try adding
more directories to the group.
use the msyncmapdump tool to see if opensync stores the mappings between
elements correctly.


I will try to prepare some slides the next days where i will describe
some of the techniques used by opensync and multisync. Of course you can
always have a look at the source code to see what it does. License is
LGPL for all code.

Armin

-- 
Armin Bauer <[EMAIL PROTECTED]>
-- 
Armin Bauer <[EMAIL PROTECTED]>



-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
_______________________________________________
Multisync-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/multisync-devel

Reply via email to