nixos/services/syncthing/default.nix

77 lines
2.7 KiB
Nix

{lib, ...}: let
defaultDataDir = "/var/lib/syncthing";
in {
services.syncthing = {
enable = true;
dataDir = lib.mkDefault "/var/lib/syncthing";
systemService = true;
openDefaultPorts = true;
devices = {
"Ion".id = "7DD4NPH-6T2ET5A-4FCLFWW-CS6UR2W-IO5XQXC-DM5B2Q4-6X7DGU2-UKKVEAB";
"Legion".id = "6OX54CG-EAQMXKA-K7TXB5P-G5A27HB-52JE2FA-XNAYZU6-YMIDBXP-RKPBJQV";
"Monarch".id = "CJSUZQY-67XBLEZ-VKVHQHI-BLEUZNF-G4237AV-AW44CGH-F3JDKXU-CWT3RQZ";
"Nortstar".id = "W3QZTFS-BB42JYB-NQBZ5IM-H3WLAUQ-M57I2CP-FALWGEX-JI2ZZOC-QWAX2QQ";
"Ronin".id = "ZOL5YHK-ZZZULIE-UHGVKHW-H5E4BP7-S4CZBOX-OIZVUCV-RZUXOKA-QVBUBAJ";
"Vanguard".id = "I366QNQ-D3FTDRX-RNOTXMW-YITZXOF-DSCDMQD-63Q72LI-ME2Y4HZ-T34RMQK";
"Remarkable".id = "GHB6JKS-JOA3HHP-TYHB3IJ-GLV26QW-RWRZAMG-XYFGFB6-QLUHDSH-GNPZVAO";
};
folders = {
"Archive" = {
id = "hwnqy-xzcdx";
path = lib.mkDefault "/var/lib/syncthing/Archive";
ignorePerms = true;
devices = ["Ion" "Legion" "Monarch" "Vanguard"];
};
"Books" = {
id = "zjmxy-ycmbq";
path = lib.mkDefault "/var/lib/syncthing/Books";
ignorePerms = true;
devices = ["Legion" "Monarch" "Nortstar" "Remarkable" "Vanguard"];
};
"Comics" = {
id = "kc2h0-q3wot";
path = lib.mkDefault "/var/lib/syncthing/Comics";
ignorePerms = true;
devices = ["Ion" "Legion" "Monarch" "Nortstar" "Vanguard"];
};
"Documents" = {
id = "qc6qa-bipsd";
path = lib.mkDefault "/var/lib/syncthing/Documents";
ignorePerms = true;
devices = ["Legion" "Monarch" "Nortstar" "Vanguard"];
};
"Exports" = {
id = "tof2e-pdtde";
path = lib.mkDefault "/var/lib/syncthing/Exports";
ignorePerms = true;
devices = ["Legion" "Monarch" "Vanguard"];
};
"Notes" = {
id = "4ggjz-5dyop";
path = lib.mkDefault "/var/lib/syncthing/Notes";
ignorePerms = true;
devices = ["Ion" "Legion" "Monarch" "Nortstar" "Ronin" "Vanguard"];
};
"Pictures" = {
id = "ziuj8-rm6dn";
path = lib.mkDefault "/var/lib/syncthing/Pictures";
ignorePerms = true;
devices = ["Ion" "Legion" "Monarch" "Nortstar" "Vanguard"];
};
"Xochitl" = {
id = "dkcbx-kq7hl";
path = lib.mkDefault "/var/lib/syncthing/Xochitl";
type = "receiveonly";
ignorePerms = true;
devices = ["Legion" "Remarkable"];
};
"Zotero" = {
id = "huyvn-liwc9";
path = lib.mkDefault "/var/lib/syncthing/Zotero";
ignorePerms = true;
devices = ["Ion" "Legion" "Monarch" "Nortstar" "Ronin" "Vanguard"];
};
};
};
}