# # System notifications # { config, lib, pkgs, ... }: { services.syncthing = { enable = true; group = "users"; user = "kabbone"; dataDir = "/home/${config.services.syncthing.user}/Sync"; configDir = "/home/${config.services.syncthing.user}/.config/syncthing"; overrideDevices = true; # overrides any devices added or deleted through the WebUI overrideFolders = true; # overrides any folders added or deleted through the WebUI openDefaultPorts = true; settings = { devices = { "hades.home.opel-online.de" = { id = "3VPCBVW-RH7XKFM-TWJGQHC-ZRAQ575-CQKGGKP-NAB4VXE-KCKJFUT-AMCUQQA"; }; "lifebook.home.opel-online.de" = { id = "RKPZG3H-BDUZID3-DV26MKR-UOARIQC-JBCAFXP-J5QFM4H-5EGBSM5-VEGXHQ4"; }; }; folders = { "Sync" = { # Name of folder in Syncthing, also the folder ID path = "/mnt/Mars/${config.services.syncthing.user}/Sync"; # Which folder to add to Syncthing devices = [ "hades.home.opel-online.de" "lifebook.home.opel-online.de" ]; # Which devices to share the folder with ignorePerms = false; # By default, Syncthing doesn't sync file permissions. This line enables it for this folder. }; }; }; }; services.nginx = { virtualHosts = { "syncthing.home.opel-online.de" = { useACMEHost = "home.opel-online.de"; forceSSL = true; locations."/" = { recommendedProxySettings = true; proxyPass = "http://${toString config.services.syncthing.guiAddress}"; extraConfig = '' proxy_set_header Host localhost; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; ''; }; }; }; }; }