Syncthing Bar for OS-X

The last days i made a small statusbar App for syncthing:

The code is lousy (i am not a swift developer) but it works for me :smiley:

Maybe this is considered useful for some others as well :slight_smile: Note that the package automatically installs a launchagent so it will start after login :smile:

I have no idea if the pkg file is installable for somebody else. I couldn’t test it on some other mac yet. I wouldn’t be surprised if i have to sign the pkg somehow (my first mac app ever). Maybe somebody would be willing to test that?


Hey this is really useful, especially to help non-technical users install Syncthing. I was able to run the package installer and everything runs smoothly.

I can’t use it right now because it auto-updates and my other machines running Syncthing don’t, but if there was a way to opt out of that it would be great!

1 Like

Also, you should add it to the Community Contributions page :smile:

Glad you like it :smile: i tried to make it as simple as possible as i am extremely lazy as well :wink:

i saw that later versions of syncthing upgrade automatically and i thought i should embrace that :wink: what exactly is the usecase that you don’t want to upgrade automatically? my browser would probably be 5 years old if there wouldn’t be rolling updates (lazy, lazy). The “problem” i see here is that i would need to add a new settings dialog just for this :smiley: (again…lazy, lazy).

however if it seems to be useful for many people i might add it.

Hey, thanks for the app! But on my Mac it has some problems. My OS is 10.10.1 I was able to install the Package, and in the Menuebar it apears, but for example “Open UI” is gray and is not working. Also I have two Folders to sync on the Mac but they doesn’t apear in the dropdown. The only thing that work is the “Quit” and “Show Log” Button. And in the Log it shows me, that everything is working. Also I can open the Web-GUI in the Browser under the specified adress. So syncthing is working. An other Problem: When I change something in the Web-GUI, and try a Restart, it will stop syncthing but not restart anymore. Before without your App this behavior was not like this. And by the way, I’ve deleted the old binary, before I’ve installed your App. Maybe you could fix this problems? That would be nice!!

wow. seems as if it is competely broken for you :S

The “Open UI” is greyed out because the app is still thinking syncthing is not yet started and because it still thinks syncthing is not yet running it didn’t even try yet to check which folders are shared.

Could you:

a) Post your log anyway (i really need a bit more info to find out what is going on) b) Check with a browser manually if you can open “http://localhost:/rest/version”?

Okdoky, the log looks like this (anonymised):

OUT: [2DTCM] 18:08:01 INFO: syncthing v0.10.14 (go1.4 darwin-amd64 default) unknown-user@syncthing-builder 2014-12-29 08:42:17 UTC OUT: [2DTCM] 18:08:01 INFO: My ID: "ID-Nr." OUT: [2DTCM] 18:08:02 INFO: Starting web GUI on OUT: [2DTCM] 18:08:03 INFO: Starting UPnP discovery… OUT: [2DTCM] 18:08:09 INFO: UPnP discovery complete (found 0 devices). OUT: [2DTCM] 18:08:09 INFO: Starting local discovery announcements OUT: [2DTCM] 18:08:09 INFO: Local discovery over IPv6 unavailable OUT: [2DTCM] 18:08:09 INFO: Starting global discovery announcements OUT: [2DTCM] 18:08:09 OK: Ready to synchronize Folder1 (read-write) OUT: [2DTCM] 18:08:09 OK: Ready to synchronize Folder2 (read-write) OUT: [2DTCM] 18:08:09 INFO: Device “ID-Nr.” is „Server-Name“ at [dynamic] OUT: [2DTCM] 18:08:09 INFO: Device “ID-Nr.” is „Computer2“ at [dynamic] OUT: [2DTCM] 18:08:09 INFO: Starting usage reporting OUT: [2DTCM] 18:08:09 INFO: Completed initial scan (rw) of folder "Folder2 OUT: [2DTCM] 18:08:11 INFO: Completed initial scan (rw) of folder Folder1 OUT: [2DTCM] 18:08:42 INFO: Established secure connection to “ID-Nr.” at OUT: [2DTCM] 18:08:42 INFO: Device “ID-Nr.” client is „syncthing v0.10.14“ OUT: [2DTCM] 18:08:42 INFO: Device “ID-Nr.” name is „Server-Name“ OUT: [2DTCM] 22:06:36 INFO: Connection to “ID-Nr.” closed: read tcp WAN-IP:22000: operation timed out OUT: [2DTCM] 22:07:15 INFO: Established secure connection to “ID-Nr.” at OUT: [2DTCM] 22:07:26 INFO: Device “ID-Nr.” client is „syncthing v0.10.14“ OUT: [2DTCM] 22:07:26 INFO: Device “ID-Nr.” name is „Server-Name“ OUT: [2DTCM] 00:00:45 INFO: Connection to “ID-Nr.” closed: write tcp can’t assign requested address


Ehem, I’ve seen, that at this time my server is at rest, so in the log it says, it can’t etablish a connection. But the rest seems to be ok. So Syncthing is running as it says.

And hear to b): {“arch”:“amd64”,“longVersion”:“syncthing v0.10.14 (go1.4 darwin-amd64 default) unknown-user@syncthing-builder 2014-12-29 08:42:17 UTC”,“os”:“darwin”,“version”:“v0.10.14”}

You’re running syncthing GUI on a custom port. I guess that’s your issue.

OK, and how can I change that? I’ve seen just now, that in the config-file from syncfile there is 8080 as port, but the app seems to start the server on 8084. So on 8080 is no respond!

Actually, I’ve checked the code for the app and 8084 is expected.

So I should change the port in the config-file? But I think that should be adapt in the app later, or do I missunderstand something?

I don’t know, I thought that could be an issue, but it isn’t. You should probably wait for @m0ppers to respond.

Yea, thanks anyway! So I’ve restarted everything with the adapted config (8084), but that changed nothing. So I’m wating… :stuck_out_tongue:

The idea of the app is that you don’t have to bother about a port. I am mostly a web developer and it is highly likely that 8080 is already in use.

The app will try to find a useable port for you starting at 8084. As soon as it detects a free port it will use this one.

Then it will start and manage syncthing on this port overriding any custom config.

However i was just able to reproduce your problem. Did you set a user / password for the UI?

Yes, I did. Ah, ok, without password it works better, but not all;) So now I can open over the dropdown the WEB-GUI and it shows me also the Folders to sync in the dropdown. But when I klick on a folder to open in the finder, it says me, that it cant find the folder. Maybe it is, because I’ve defined in syncthing the location of the folders relativ? So like this ~/…?

It would be nice, when it would work also with a Password :wink:

And an other not very intuitiv behavior: When I change something in syncthing and make a restart over the WEB-GUI, it will start the hole thing under a new port. So it shows in the WEB-GUI the Message that it’s restarting until the cows come home :stuck_out_tongue: It would be nice, when you can change that, so that it will restart under the same port. After this changes, I think the App will work perfekt!! Maybe a multilanguage-App would be nice;) Hear the translations into German :stuck_out_tongue: : Open UI: Öffne UI Open “Foldername” in Finder: Öffne “Foldername” im Finder Show Log: Zeige Log-Daten an Quit: Beenden Are you sure you want to quit?: Wollen Sie Syncthing wirklich beenden? Cancel: Abbrechen Yes: Ja or Yes: Beenden

Ah that happens when you do an app without even looking at possible settings of the underlying software :wink:

Relative folders are most likely not supported yet. If syncthing supports relative folders then it should work through the app as well so this is a bug.

I have seen changing ports as well sometimes but didn’t really care yet…however a broken UI is of course not ok so i consider that as a bug as well.

I will also change the app to use an apptoken instead of relying on a UI without authentication (thats the cleaner way).

As to multilanguage: Surely possible. Not sure though when i find the time to do it :smile:

I will try to fix the bugs next week and prepare a new release

Oh thanks, that woud be great!! I’ve created for you a new Logo, which looks much smoother than the old one in the bar!

Hear the Logo:

Is there any chance of having an inverse colour scheme for us that may have installed the Obsidian Menu Bar?

OKdoky, I’ve created for you an inverted one. Now it’s up to m0ppers :wink:

By the way, I’ve created also a serie of images for an animation :wink: I thought it would be cool, if the logo shows, when syncthing is syncing.

something like that:

And hear some for OK, Error:
inverted one:

I will send the files to m0pper.

Thanks a lot for that, good job :slight_smile: