{ config, pkgs, inputs, ... }: let workstations = ["skinnyv" "foureighty" "thinky"]; workstations_plus_phone = ["OnePlus9"] ++ workstations; in { services.syncthing = { enable = true; user = "cyryl"; dataDir = "/home/cyryl/"; openDefaultPorts = true; package = inputs.nixpkgs-nixos-unstable.legacyPackages."x86_64-linux".syncthing; overrideDevices = false; devices = { "OnePlus9" = { id = "2UVDAHX-IWQEBLF-6VOYLWO-MYQBMO2-62QPM76-CFYPPZW-CWVIBZF-JEUS4QZ"; }; "skinnyv" = { id = "SUNR6EL-UBSLEE6-CZOSGIL-D527FQG-BXL2PMA-ISEQHMV-2CXKKPD-U7GERQB"; }; "foureighty" = { id = "Q4AA3LA-QIMMBNK-QWKW2AL-5SRGBU3-RYWD5EH-GKMVXRT-XVYFU3R-UYAAMAH"; }; "hagath" = { id = "SXQA3TX-3G5T4CQ-3SX42KJ-UEBZWF7-RL66ORF-DVV6ROT-PYTE6QV-EARKMQU"; }; "thinky" = { id = "G6SYM4M-32SHELZ-E4IDW3L-3MAOZ54-N7FB5BD-ZNUFXYW-2JVV6GB-LQHNRAF"; }; }; folders = { "/home/cyryl/vaults" = { id = "vaults"; label = "vaults"; devices = workstations_plus_phone ++ ["hagath"]; }; "/home/cyryl/documents" = { id = "documents"; label = "documents"; devices = workstations_plus_phone ++ ["hagath"]; }; "/home/cyryl/camera" = { id = "camera"; label = "camera"; devices = workstations_plus_phone; }; "/home/cyryl/ISOs" = { id = "isos"; label = "ISOs"; devices = workstations; }; "/home/cyryl/rpg" = { id = "rpg"; label = "rpg"; devices = workstations; }; "/home/cyryl/music" = { id = "music"; label = "music"; devices = workstations; }; "/home/cyryl/photos" = { id = "photos"; label = "photos"; devices = workstations ++ ["hagath"]; }; "/home/cyryl/gopro" = { id = "gopro"; label = "gopro"; devices = workstations; }; "/home/cyryl/videos" = { id = "videos"; label = "videos"; devices = workstations ++ ["hagath"]; }; }; extraOptions = { options = { listenAddresses = [ "tcp://${config.networking.hostName}.raptor-carp.ts.net:22000" "quic://${config.networking.hostName}.raptor-carp.ts.net:22000" "relay://vpsfree1.raptor-carp.ts.net:22067/?id=BVJ54DH-VCLK4C7-SKNGOZP-36K76IE-UEEKLVF-WA5QHN6-6TK2ICW-HSDI6Q7" "dynamic+https://relays.syncthing.net/endpoint" ]; }; }; }; }