Since most Windows users seem to be wanting an installer, I’ve spent a couple of hours creating one. This should also aid those users without much technical experience.
Note: Automatic Upgrades do work with this installation for Syncthingonly
Non-Sucking Service Manager (NSSM) v2.24 (Website)
What does it do?
Works on both x86 & x64 machines
Installs NSSM, Syncthing & Syncthing-Tray under C:\Syncthing
Installs a service by the name of Syncthing
The NSSM executable is created hidden, purely for tidiness and to prevent user-error
Creates a Start-Up entry under the Common Start-Up folder (for all Users) of Syncthing-Tray
Creates an entry in Add/Remove Programs so that you may uninstall (uninstalling retains your config folder under C:\Syncthing)
After Installation
You will need to open the Syncthing WebGUI by either clicking the Syncthing-Tray icon in the notification area OR opening http://localhost:8080 and expand the default folder. Once expanded click the Edit button and finally the Delete button. This is because Syncthing is installed as a service under the SYSTEM account and sets the default share path up under the system32 directory.
Changelog
07/03/2015 - Added licenses for both Syncthing-Tray and NSSM
You should update the Wiki - Community Contributions.
Also, I’d suggest you do syncthing -generate under the SVC account, and then find replace the system32 path to something sensible, or just leave it empty to start with somehow.
This is awesome. Should we create a repository for this in the syncthing org Github (if you don’t already have it somewhere else) and aim for an automated build of this?
I’m not sure how to do that using Inno Setup. I’d never created an installer before using this software, this is the first time. Just referred to their documentation all the way through haha
https://github.com/syncthing/winstaller - you should have an admin invitation in the mail. We can rename the repo if you like, it was the first thing that popped into my head.
I’ve just been checking that forum post out, looks very good not too sure on the name but I do agree from the screenshots I’ve seen, it is what Syncthing should be shipped as for all OSes not just Windows but this is a start.
@AudriusButkevicius@calmh do you still want me to update that repo or would you rather have talks with @canton7 to see if it can be renamed to simply “Syncthing” and made part of the automated builds?
I guess if @canton7 adds service control, his thing becomes superior to nssm + SyncthingTray?
In which case perhaps we should offer that as the default thing for Windows.
Heh, they say the 2 hardest problems in computer science are cache invalidation, naming things, and off-by-one errors. Naming things is the bit I suck most at. You can tell it was never meant to become “official” anyway! I’m happy to re-brand if the community deems that the most sensible approach, but I have reservations about using the ‘Syncthing’ name: that would cause undue confusion. Saying “Syncthing is a windows host for Syncthing” in a clear way is not something I want to attempt!
I’ve replied to your post in the SyncTrayzor thread:
Thanks for making an installer. It worked perfectly on Windows 7 64 bit, Server 2012 R2 & Server Essentials 2012 R2.
Assuming it evolves from here (once service vs start on login is hammered out), one thing that is needed is to add the TCP port 22000 Windows firewall exception automatically.
Good point. Using a tray icon causes windows to (by default) prompt for a firewall exemption, at least on my home machines. Once you start getting into group policy, and services, etc, that’s going to become a trickier topic.
Well done . This project is really picking up some developer momentum. That’s really awesome to see.
I’d be happy to load up some EC2 instances and test it there. I’ll be able to test on Windows Server 2003 R2, 2008, 2008 R2, 2012, and 2012 R2.
Just let me know if there’s any formal acceptance criteria, or any requests for what OS it needs to be tested on. I have ISOs for every version of Windows going back to like Windows ME… I can load em up pretty quick in EC2 or VMware.
SyncTrayzor and Syncthing-GTK are linked from the Syncthing home page. They’re both mature, stable downloads with large numbers of users. I’m not sure I’d call them DIY…
Edit: @Curtis_Newton completely reworded the post I responded to, so this is no longer relevant.