So I’ve got the majority of the settings working just fine. Once the configuration is built, I can manually change listen address and globalAnnounceServer and it works fine but defining it in the nix configuration isn’t working.
I’ve verified that the config.xml that is generated for syncthing has the default settings for listen address. I’m a bit of a noob and not sure where to look as far as a log of the build process specifically for the syncthing package. Below is my configuration. The Syncthing settings I’m trying to define are the global discovery server and listen address.
I’ve changed it to this. It picks up the listenAddress variable and sets it in the config.xml but not the global discovery server. I’m assuming that’s a Syncthing only configuration setting that’s not available in the options of nixpkgs?
Everything under ....settings is specific to the application and will not be findable via nixos option search yes. You’ll have to read the docs for the app itself to know how to configure it.
The options are set using the REST API, which uses slightly different keys than the ones used in the XML config file. In the home-manager documentation there is a note about this.
To get valid configuration values, you can get the full config on http://localhost:8384/rest/config (you’ll need to set the X-API-Key header).
TLDR: The option is called globalAnnounceServers (plural) and takes a list of servers.