Skip to content

Getting started with CmisSync development

nicolas-raoul edited this page Apr 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

Debugging

See the "Troubleshooting" section of this page, and Internals.

To make the log appear in Visual Studio, add a TraceAppender (and matching appender-ref) to your <log4net> configuration in config.xml. For instance:

  <log4net>
    <appender name="CmisSyncFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="C:\Users\### INSERT YOUR USERNAME HERE ###\AppData\Roaming\cmissync\debug_log.txt" />
      <appendToFile value="true" />
      <rollingStyle value="Size" />
      <maxSizeRollBackups value="10" />
      <maximumFileSize value="5MB" />
      <staticLogFileName value="true" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
      </layout>
    </appender>
    <appender name="TraceAppender" type="log4net.Appender.TraceAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%d [%t] %-5p %c %m%n"/>
      </layout>
    </appender>
    <root>
      <level value="ALL" />
      <appender-ref ref="CmisSyncFileAppender" />
      <appender-ref ref="TraceAppender"/>
    </root>
  </log4net>

More

For explanations about the source code, database, XML format, etc, see Internals.