I’ve release a first version of QSyncThingTray for OS X.
It’s (yet another) traybar app written in C++ and with Qt. That should make portability to Windows fairly easy down the road. Unfortunately I haven’t had the time to do that yet. If someone wants to help out, its highly appreciated
I’ve included some basics (e.g. getting rid of manually setting up a plist file in OS X) but will try and add more features down the road.
This seems to require having QT installed to use.
jb@syno:~ $ open Downloads/QSyncThingTray.app
LSOpenURLsWithRole() failed with error -10810 for the file /Users/jb/Downloads/QSyncThingTray.app.
jb@syno:~ $ ./Downloads/QSyncThingTray.app/Contents/MacOS/QSyncThingTray
dyld: Library not loaded: @rpath/QtWebKitWidgets.framework/Versions/5/QtWebKitWidgets
Referenced from: /Users/jb/./Downloads/QSyncThingTray.app/Contents/MacOS/QSyncThingTray
Reason: image not found
Trace/BPT trap: 5
Also, minor niggle, s/SyncThing/Syncthing/g.
Ahhh, damnit. Seems like I should setup some fresh VMs for testing
Thanks for the heads up!
Will fix the naming as well.
Just pushed out a new release, changed the name and - fingers crossed - included the Qt Frameworks (so it shouldnt require to have Qt installed):
Pushed another update today that displays shared folders in the menu bar and allows for jumping straight to them by clicking on their name.
I wonder what to implement next. Any suggestions?
Was wondering whether an integrated auto-installer for Syncthing may be worth a shot (so you wouldnt have to worry about getting the binary or specifying its location).
@sieren thanks for working on OS X stuff! I know my way around Windows and Linux (and install Syncthing on these systems) but I never use Mac. So I would be happy about all tools that allow me to instruct non-technical friends with Macs to install & run Syncthing without my help
Once I get my Windows VM setup, I’ll see how it performs on Windows. There are some changes to be made, but getting the codebase cross-platform (at least Win/OSX) is one of the next steps (which was one of the reasons I went with Qt for this one)
@canton7 Thanks for the hint, added mine to the list (checked out the other contributions prior, but wasn’t satisfied with whats been there - at least for OSX, seems like youve done a great job with your Win app).
@Zillode thanks for the suggestion.
Just added the binary to the OSX package to spawn automatically along with Syncthing.
Hi! If it isn’t there already, some visual indication in the menubar for items not syncing or other errors. ! over the menubar item for this, or maybe an alternate menubar icon color?
The icon turns from blue to grey in case no connection can be made.
But I should look into displaying more internal syncthing-specific errors.
A bit far-fetched, but how about a way of adding remote nodes? I usually forward the remote syncthing port to a local one and then access the web interface on the forwarded port, i.e.
ssh -L 8088:localhost:8080 remote-host
It’d be handy to forward the remote host’s syncthing port to a random local port and open the window locally.
Thanks, will keep that in mind - sounds useful.
Next on my list is probably auto-downloading SyncThing and integrating an auto-updater for QSyncthingTray.
I’ve added Windows support to QSyncThingTray on the same code-base as the Mac app. (Syncthing UI scaling is a bit off, but I will fix that before putting out the first Win binary - source code is already up).
@calmh any chance you can update the thread title and add a “/ Win” behind the OS X ?
…and Linux support is on board as well now.
Is there, or could there be, some niftyness around auto start in here for all the relevant operating systems? Or at least Mac and Windows? For Mac it would probably either be to make sure the tray thing is launched at login, or create a launch agent for just syncthing?
Yeah, I will look into that soon.
For now I recommend Mac users just drag the application into Login Items (in System Preferences). QSyncthing will spawn the syncthing binary automatically then.
But down the road it’d surely be nice to have a little checkbox that takes care of that instead.
That works perfectly fine too.