Hi All,
I have been hacking on syncany on mac and I now have a version that is buggy but running and syncing to a remote server via samba share. The file open dialog is not working correctly so if I type in the path manually when setting up a new syncing profile. There is probably more that is not working but I haven't got around to test it.
Here are the modifications (diff) I made so that in order to getting syncany up and running on macosx. I have not worked with bzr vcs before so I have not committed my changes yet.
Regards,
Sammi
=== modified file 'syncany/bin/syncany.sh'
--- syncany/bin/syncany.sh 2011-06-05 20:41:13 +0000
+++ syncany/bin/syncany.sh 2011-06-21 00:17:12 +0000
@@ -97,7 +97,7 @@
CLASSPATH="$DEPS:$CLASSPATH"
# Call
-EXEC="$JAVA -Xms512m -cp $CLASSPATH -Dsyncany.home=$PRGDIR -Djava.library.path=$LIBDIR -Djava.util.logging.config.file=$PRGDIR/conf/logging.conf org.syncany.Syncany $@"
+EXEC="$JAVA -Xms512m -Xmx512m -cp $CLASSPATH -Dsyncany.home=$PRGDIR -Djava.library.path=$LIBDIR -Djava.util.logging.config.file=$PRGDIR/conf/logging.conf org.syncany.Syncany $@"
echo $EXEC
=== modified file 'syncany/build.xml'
--- syncany/build.xml 2011-06-05 20:06:20 +0000
+++ syncany/build.xml 2011-06-21 17:16:22 +0000
@@ -12,6 +12,7 @@
<property file="version.properties"/>
<import file="nbproject/build-impl.xml"/>
+<import file="nbproject/management-build-impl.xml"/>
<!-- Determine OS -->
<condition property="isLinux"><os family="unix" /></condition>
<condition property="isWindows"><os family="windows" /></condition>
@@ -226,3 +227,4 @@
-->
</project>
+
=== modified file 'syncany/nbproject/configs/dontpanic.properties'
--- syncany/nbproject/configs/dontpanic.properties 2011-05-28 22:03:36 +0000
+++ syncany/nbproject/configs/dontpanic.properties 2011-06-21 00:17:49 +0000
@@ -1,1 +1,1 @@
-run.jvmargs=-Xms512m -Dsyncany.home=. -Djava.library.path='lib/' -Djava.util.logging.config.file=conf/logging.conf -Dlog4j.configuration=conf/logging.conf
+run.jvmargs=-Xms512m -Xmx512m -Dsyncany.home=. -Djava.library.path='lib/' -Djava.util.logging.config.file=conf/logging.conf -Dlog4j.configuration=conf/logging.conf
=== modified file 'syncany/nbproject/project.properties'
--- syncany/nbproject/project.properties 2011-06-05 21:47:40 +0000
+++ syncany/nbproject/project.properties 2011-06-20 23:32:18 +0000
@@ -124,7 +124,7 @@
${file.reference.SSHTools-j2ssh-ext-0.1.0.jar}:\
${file.reference.jsch-0.1.44.jar}
# Space-separated list of extra javac options
-javac.compilerargs=
+javac.compilerargs=-Xlint:deprecation
javac.deprecation=false
javac.processorpath=\
${javac.classpath}
=== modified file 'syncany/nbproject/project.xml'
--- syncany/nbproject/project.xml 2011-05-29 02:22:38 +0000
+++ syncany/nbproject/project.xml 2011-06-21 17:16:19 +0000
@@ -11,6 +11,7 @@
<root id="test.src.dir"/>
</test-roots>
</data>
+<data xmlns="http://www.netbeans.org/ns/jmx/1" version="0.4"/>
<spellchecker-wordlist xmlns="http://www.netbeans.org/ns/spellchecker-wordlist/1">
<word>Syncany</word>
</spellchecker-wordlist>
=== modified file 'syncany/src/name/pachler/nio/file/contrib/BufferedWatcher.java'
--- syncany/src/name/pachler/nio/file/contrib/BufferedWatcher.java 2011-05-23 16:50:04 +0000
+++ syncany/src/name/pachler/nio/file/contrib/BufferedWatcher.java 2011-06-21 21:53:57 +0000
@@ -74,8 +74,9 @@
StandardWatchEventKind.ENTRY_CREATE,
StandardWatchEventKind.ENTRY_DELETE,
StandardWatchEventKind.ENTRY_MODIFY,
- ExtendedWatchEventKind.ENTRY_RENAME_FROM,
- ExtendedWatchEventKind.ENTRY_RENAME_TO };
+ // ExtendedWatchEventKind.ENTRY_RENAME_FROM,
+ // ExtendedWatchEventKind.ENTRY_RENAME_TO
+ };
private static final Modifier[] MODIFIERS = new Modifier[] {
// ExtendedWatchEventModifier.FILE_TREE // Windows only!
=== modified file 'syncany/src/name/pachler/nio/file/impl/BSDPathWatchService.java'
--- syncany/src/name/pachler/nio/file/impl/BSDPathWatchService.java 2011-05-23 16:50:04 +0000
+++ syncany/src/name/pachler/nio/file/impl/BSDPathWatchService.java 2011-06-21 21:18:47 +0000
@@ -88,7 +88,12 @@
int flags = makeFlagMask(kinds, modifiers);
// check that user only provided supported flags and modifiers
- int supportedFlags = (FLAG_FILTER_ENTRY_CREATE | FLAG_FILTER_ENTRY_DELETE | FLAG_FILTER_ENTRY_MODIFY | FLAG_FILTER_KEY_INVALID);
+ int supportedFlags = (
+ FLAG_FILTER_ENTRY_CREATE |
+ FLAG_FILTER_ENTRY_DELETE |
+ FLAG_FILTER_ENTRY_MODIFY |
+ FLAG_FILTER_KEY_INVALID
+ );
if((flags& ~supportedFlags) != 0)
throw new UnsupportedOperationException("The given watch event kind or modifier is not supported by this WatchService");
=== modified file 'syncany/src/org/syncany/Environment.java'
--- syncany/src/org/syncany/Environment.java 2011-06-05 20:41:13 +0000
+++ syncany/src/org/syncany/Environment.java 2011-06-21 00:24:20 +0000
@@ -91,7 +91,11 @@
else if (System.getProperty("os.name").contains("Windows")) {
operatingSystem = OperatingSystem.Windows;
defaultUserConfDir = new File(System.getProperty("user.home")+"\\"+Constants.APPLICATION_NAME);
- }
+ }
+ else if (System.getProperty("os.name").contains("Mac OS X")) {
+ operatingSystem = OperatingSystem.Mac;
+ defaultUserConfDir = new File(System.getProperty("user.home")+"/."+Constants.APPLICATION_NAME.toLowerCase());
+ }
else {
throw new RuntimeException("Your system is not supported at the moment: "+System.getProperty("os.name"));
}
=== modified file 'syncany/src/org/syncany/config/Config.java'
--- syncany/src/org/syncany/config/Config.java 2011-06-05 21:26:56 +0000
+++ syncany/src/org/syncany/config/Config.java 2011-06-21 20:11:50 +0000
@@ -156,6 +156,8 @@
switch (env.getOperatingSystem()){
case Linux:
return new File(System.getProperty("user.home")+File.separator+".face");
+ case Mac:
+ return new File(System.getProperty("user.home")+File.separator+".face");
case Windows:
return new File(getConfDir()+File.separator+"profile.png");
default:
=== modified file 'syncany/src/org/syncany/gui/tray/Tray.java'
--- syncany/src/org/syncany/gui/tray/Tray.java 2011-06-03 20:55:56 +0000
+++ syncany/src/org/syncany/gui/tray/Tray.java 2011-06-21 00:34:30 +0000
@@ -28,6 +28,7 @@
import java.util.ResourceBundle;
import java.util.logging.Level;
import java.util.logging.Logger;
+import org.syncany.gui.tray.mac.MacTray;
/**
*
@@ -74,6 +75,10 @@
instance = new WindowsTray();
return instance;
}
+ else if (env.getOperatingSystem() == Environment.OperatingSystem.Mac) {
+ instance = new MacTray();
+ return instance;
+ }
throw new RuntimeException("Your OS is currently not supported: "+System.getProperty("os.name"));
}
=== added directory 'syncany/src/org/syncany/gui/tray/mac'
=== added file 'syncany/src/org/syncany/gui/tray/mac/MacTray.java'
--- syncany/src/org/syncany/gui/tray/mac/MacTray.java 1970-01-01 00:00:00 +0000
+++ syncany/src/org/syncany/gui/tray/mac/MacTray.java 2011-06-21 00:33:32 +0000
@@ -0,0 +1,23 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.syncany.gui.tray.mac;
+
+/**
+ *
+ * @author samueljon
+ */
+import java.io.File;
+import org.syncany.gui.tray.AbstractCommonTray;
+
+/**
+ *
+ * @author Philipp C. Heckel
+ */
+public class MacTray extends AbstractCommonTray {
+ @Override
+ public void notify(String summary, String body, File imageFile) {
+ System.err.println("NOT IMPLEMENTED"); // TODO do this!
+ }
+}
=== modified file 'syncany/src/org/syncany/watch/local/LocalWatcher.java'
--- syncany/src/org/syncany/watch/local/LocalWatcher.java 2011-05-23 16:50:04 +0000
+++ syncany/src/org/syncany/watch/local/LocalWatcher.java 2011-06-21 00:28:29 +0000
@@ -123,7 +123,8 @@
}
if (env.getOperatingSystem() == OperatingSystem.Linux
- || env.getOperatingSystem() == OperatingSystem.Windows) {
+ || env.getOperatingSystem() == OperatingSystem.Windows
+ || env.getOperatingSystem() == OperatingSystem.Mac) {
instance = new CommonLocalWatcher();
return instance;