diff options
author | makefu <github@syntax-fehler.de> | 2022-01-29 22:56:08 +0100 |
---|---|---|
committer | makefu <github@syntax-fehler.de> | 2022-01-29 22:56:08 +0100 |
commit | d1ff35e1e158fc0037182a963b241fd0aae109f5 (patch) | |
tree | 83da48164d229f998eecdd2d6acc899684cbc1c8 /2configs/sync/default.nix | |
parent | 87e67d48cd38a948ba6f231d7a3d30a8ef870878 (diff) |
ma sync: init syncthing
Diffstat (limited to '2configs/sync/default.nix')
-rw-r--r-- | 2configs/sync/default.nix | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/2configs/sync/default.nix b/2configs/sync/default.nix new file mode 100644 index 000000000..6928daf87 --- /dev/null +++ b/2configs/sync/default.nix @@ -0,0 +1,22 @@ +{ config, pkgs, ... }: with import <stockholm/lib>; let + mk_peers = mapAttrs (n: v: { id = v.syncthing.id; }); + + all_peers = filterAttrs (n: v: v.syncthing.id != null) config.krebs.hosts; + used_peer_names = unique (flatten (mapAttrsToList (n: v: v.devices) config.services.syncthing.folders)); + used_peers = filterAttrs (n: v: elem n used_peer_names) all_peers; +in { + services.syncthing = { + enable = true; + configDir = "/var/lib/syncthing"; + devices = mk_peers used_peers; + key = toString <secrets/syncthing.key>; + cert = toString <secrets/syncthing.cert>; + }; + services.syncthing.folders.the_playlist = { + path = "/home/lass/tmp/the_playlist"; + devices = [ "mors" "prism" ]; + }; + + + boot.kernel.sysctl."fs.inotify.max_user_watches" = 524288; +} |