Skip to content

Getting started with CmisSync development

nicolas-raoul edited this page Jan 10, 2013 · 35 revisions

Common steps for all platforms

  1. Install Git
  2. Fork https://github.com/nicolas-raoul/CmisSync
  3. Git clone to your local computer.

If you don't like Git, you can also download the source code as a ZIP file here.

On Windows

  1. Install Microsoft Visual C# (Express version is free)
  2. Open Microsoft Visual C#
  3. Import SparkleShare/Windows/SparkleShare.sln
  4. Debug > Start debugging

On Linux

(Some installation bugs remain, volunteers wanted!)

  1. Install as described here: https://github.com/nicolas-raoul/CmisSync/blob/master/SparkleShare/Linux/README.md
  2. Run: sparkleshare start

Importing to Monodevelop

  1. Install Monodevelop
  2. Import SparkleShare/Linux/SparkleShare.sln
  3. Debugging does not seem to work out-of-the-box, but debugging from Monodevelop is possible using this trick.

On Mac

(Some installation bugs remain, volunteers wanted!)

  1. Install as described here: https://github.com/nicolas-raoul/CmisSync/blob/master/SparkleShare/Mac/README.md
  2. Run: sparkleshare start

Source code explanation

The synchronization algorithm is in SparkleLib/Cmis.
CmisSync uses an SQLite database to cache checksums, server-side modification dates, etc, in CmisDatabase.cs.
The source code contains a lot of comments so it should be explicit. Please let us know if something is lacking.
The UI is based on SparkleShare, an excellent Git-synchronization tool. That explains why you might find references to SparkleShare in the source code.