syncthing.nix (1418B)
1 { username, ... }: 2 { 3 4 services.syncthing = { 5 enable = true; 6 user = "${username}"; 7 group = "users"; 8 dataDir = "/home/${username}/"; 9 configDir = "/home/${username}/.config/syncthing"; 10 settings = { 11 options.urAccepted = 1; 12 devices = { 13 desktop.id = "6DL2MHG-4WS4B2Q-IAOHURV-XL3CXVZ-EBDXZMH-FZS7WFX-UJAVUJL-UQ2EOAQ"; 14 htpc.id = "E46LP6X-6LMHIBU-LPQTF2P-T5VIU52-OJWUAP5-ZX7VCQU-S7GGGK3-Y4IXVAJ"; 15 laptop.id = "L2DBXFX-T5B52M7-54AOF4S-HVGQGHM-XMEDPFI-NXX4PEI-V6YHD7P-JYGR2A3"; 16 nas.id = "FONKXV6-BQFMLNT-6OHTKXG-CP7DOZP-M5ZA6GW-5WAN4L6-X3LEANG-7EC5WQ6"; 17 phone.id = "7M34AP7-VLSE6A4-UX24I72-VDXCBSW-BGXHSUF-OF6UQQL-7QK4IFW-5F5M3QH"; 18 server.id = "TJV7YEI-GYLINDA-6YYHJW7-TLV6XUY-LJEJWSV-AEZ6NKE-BFLX4KB-BJ5DNAH"; 19 }; 20 folders = { 21 "/home/${username}/vault" = { 22 label = "vault"; 23 id = "vault"; 24 devices = [ "desktop" "htpc" "laptop" "nas" "phone" "server" ]; 25 }; 26 }; 27 }; 28 }; 29 30 # https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes 31 boot.kernel.sysctl."net.core.rmem_max" = 7500000; 32 boot.kernel.sysctl."net.core.wmem_max" = 7500000; 33 34 # Disable default ~/Sync folder 35 systemd.services.syncthing.environment.STNODEFAULTFOLDER = "true"; 36 37 # Firewall ports 38 networking.firewall.allowedTCPPorts = [ 22000 ]; 39 networking.firewall.allowedUDPPorts = [ 22000 21027 ]; 40 41 }