Syncthing for macOS
syncthing-macos is a native macOS Syncthing tray application bundle. It hosts and wraps Syncthing, making it behave more like a native macOS application and less like a command-line utility with a web browser interface.
- Open the Syncthing WebGUI from the tray in your preferred browser.
- Optionally starts on login, so you don't need to set up Syncthing as a service.
- Tray icon indicates when it is connected to syncthing (no status updates yet).
- Retina ready icons for the Application bundle and status tray.
- Automatic updates (using Sparkle pushed from github releases).
- Open shared folders directly in Finder.
Currently, OS X 10.10 or higher is necessary. syncthing-macos is packaged as a disk image as an application bundled with the syncthing binary.
To install just download the dmg, mount it and drag and drop the application to install. The only necessary configuration is to set the API key and URL when provisioning a remote syncthing instance, the local instance is auto-configured. The application automatically keeps the syncthing binary updated, while running.
All cross-platform approaches are not able to use all the native facilities of macOS. Including auto-updates, vector icon set (retina-ready) and creating an application bundle. GUIs are designed with XCode and everything is coded in Objective-C and Swift which is "the native approach".
Build with XCode or run:
It will automaticly download syncthing amd64 binary and add it to the Application Bundle.
For release builds signing the application build and creating an distributable DMG:
The script will select the first available Developer ID and sign the app with it. To specify the signing identity, use
SYNCTHING_APP_CODE_SIGN_IDENTITY environment variable:
SYNCTHING_APP_CODE_SIGN_IDENTITY="Mac Developer: firstname.lastname@example.org (XB59MXU8EC)" make release-dmg
The goal of this project is to keep the Native macOS Syncthing tray as simple as possible. No graphs, no advanced configuration windows. It just provides a very simple wrapper so users are not aware syncthing ships as a commandline application. It strives to have a usability of good-by-default and should always follow the Apple Human Interface Guidelines to feel as much as an native application as possible.
See the issue tracker for the current status.
Design, internals and build process is documented in doc/design.md