syncthing.nix (1524B)
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 = 3; 12 devices = { 13 atlas.id = "O5PT2MJ-GHUGJSA-ZYPNGFH-ODHJVTC-OCX6XTI-GNBHBAQ-GYPKWM3-ZI4REAQ"; 14 arcadia.id = "E46LP6X-6LMHIBU-LPQTF2P-T5VIU52-OJWUAP5-ZX7VCQU-S7GGGK3-Y4IXVAJ"; 15 artemis.id = "2TVL2S3-PLNFGFB-Y2BJHSK-4GONJGK-FVLJ5QD-WPDHFF2-D5KTUMB-3PPXLQD"; 16 ilias.id = "FONKXV6-BQFMLNT-6OHTKXG-CP7DOZP-M5ZA6GW-5WAN4L6-X3LEANG-7EC5WQ6"; 17 minerva.id = "L2DBXFX-T5B52M7-54AOF4S-HVGQGHM-XMEDPFI-NXX4PEI-V6YHD7P-JYGR2A3"; 18 phone.id = "7M34AP7-VLSE6A4-UX24I72-VDXCBSW-BGXHSUF-OF6UQQL-7QK4IFW-5F5M3QH"; 19 windows.id = "6DL2MHG-4WS4B2Q-IAOHURV-XL3CXVZ-EBDXZMH-FZS7WFX-UJAVUJL-UQ2EOAQ"; 20 }; 21 folders = { 22 "/home/${username}/vault" = { 23 label = "vault"; 24 id = "vault"; 25 devices = [ "atlas" "arcadia" "artemis" "ilias" "minerva" "phone" "windows" ]; 26 }; 27 }; 28 }; 29 }; 30 31 # https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes 32 boot.kernel.sysctl."net.core.rmem_max" = 7500000; 33 boot.kernel.sysctl."net.core.wmem_max" = 7500000; 34 35 # Disable default ~/Sync folder 36 systemd.services.syncthing.environment.STNODEFAULTFOLDER = "true"; 37 38 # Firewall ports 39 networking.firewall.allowedTCPPorts = [ 22000 ]; 40 networking.firewall.allowedUDPPorts = [ 22000 21027 ]; 41 42 }