nixos-conf/services/syncthing.nix

69 lines
1.7 KiB
Nix
Raw Normal View History

2024-06-02 01:31:02 +03:00
# Syncthing instance
{ config, pkgs, ... }:
{
2024-06-02 05:53:39 +03:00
services.syncthing = {
enable = true;
user = "vili";
dataDir = config.users.users.${config.services.syncthing.user}.home;
2024-06-02 01:31:02 +03:00
2024-06-02 05:53:39 +03:00
settings = {
devices = {
"helium" = {
id = "2MRUBSY-NHXYMAW-SY22RHP-CNNMHKR-DPDKMM4-2XV5F6M-6KSNLQI-DD4EOAM";
addresses = [ "tcp://helium.vsinerva.fi:22000" ];
};
"nixos-cpu" = {
id = "ZX35ARB-3ULEUV3-NNUEREF-DEDWOJU-GE7A4PP-T7O43NI-SU564OD-E26HHA4";
addresses = [ "tcp://nixos-cpu.vsinerva.fi:22000" ];
};
"phone" = {
id = "K6QCK2R-BU65RAC-PHTGLIA-24IHDXE-N6VNBAW-QYREMVD-XWGWKRA-VX2BNAK";
addresses = [ "tcp://172.16.0.3:22000" ];
};
};
2024-06-02 01:31:02 +03:00
2024-06-02 05:53:39 +03:00
folders =
let
default = {
2024-06-02 16:18:19 +03:00
devices = [
"helium"
"nixos-cpu"
];
2024-06-02 05:53:39 +03:00
versioning = {
type = "trashcan";
params.cleanoutDays = "30";
};
fsWatcherDelayS = 1;
};
in
{
2024-06-02 16:18:19 +03:00
"~/Documents" = default // {
devices = [
"helium"
"nixos-cpu"
"phone"
];
};
2024-06-02 05:53:39 +03:00
"~/Downloads" = default;
"~/Music" = default;
"~/Pictures" = default;
"~/Projects" = default;
"~/School" = default;
"~/Videos" = default;
"~/Zotero" = default;
};
2024-06-02 01:31:02 +03:00
2024-06-02 16:18:19 +03:00
options = {
urAccepted = -1;
localAnnounceEnabled = false;
globalAnnounceEnabled = false;
natEnabled = false;
relaysEnabled = false;
2024-06-02 05:53:39 +03:00
};
};
2024-06-02 16:18:19 +03:00
#TCP/UDP 22000 for transfers and UDP 21027 for discovery
openDefaultPorts = true;
};
}