Hi Samúel, looks good for a start. Maybe you can make your own Mac-branch on Launchpad. It's really easy:
$ bzr branch lp:syncany $ cd syncany [make your changes] $ bzr commit -m"mac stuff" $ bzr push lp:~yourusername/syncany/mac I saw that you chaned stuff in the BufferedWatcher and even in the BSD* stuff of the jpathwatch implementation. Rewriting the BufferedWatcher is no porblem because I wrote that one myself and it's just a contribution to jpathwatch. But I see a little issue with rewriting the stuff outside the "contrib/" directory of jpathwatch... Do you think you could get it to work without changing that part? Also, could you change the BufferedWatcher in a way that it will still work on the other platforms? If it's easier, you can inherit and make a MacBufferedWatcher. There are already some differences between Windows and Linux, so that might be a good idea anyway. Let me know what you think. Thanks for your support. Philipp 2011/6/22 Samúel Jón Gunnarsson <[email protected]>: > 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; > > -- Mailing list: https://launchpad.net/~syncany-team Post to : [email protected] Unsubscribe : https://launchpad.net/~syncany-team More help : https://help.launchpad.net/ListHelp

