From f3aa929cf561f917a48e0ad9d256b2ac75b0f36a Mon Sep 17 00:00:00 2001 From: Romain Paquet Date: Mon, 25 Aug 2025 07:21:21 +0200 Subject: [PATCH] migrate syncthing config to clan --- machines/flake-module.nix | 31 +++++++++++++++++ machines/genepi/syncthing.nix | 44 ++---------------------- machines/haze/syncthing.nix | 64 ++--------------------------------- 3 files changed, 36 insertions(+), 103 deletions(-) diff --git a/machines/flake-module.nix b/machines/flake-module.nix index 007964b..c3256b3 100644 --- a/machines/flake-module.nix +++ b/machines/flake-module.nix @@ -16,6 +16,12 @@ tags = [ "garage" "server" + "syncthing" + ]; + }; + haze = { + tags = [ + "syncthing" ]; }; }; @@ -163,6 +169,31 @@ }; }; }; + + syncthing = { + roles.peer.tags.syncthing = { }; + roles.peer.settings.folders = { + Documents = { + path = "~/Documents"; + }; + Music = { + path = "~/Music"; + }; + Pictures = { + path = "~/Pictures"; + }; + Videos = { + path = "~/Videos"; + }; + }; + roles.peer.settings.extraDevices = { + pixel-7a = { + id = "IZE7B4Z-LKTJY6Q-77NN4JG-ADYRC77-TYPZTXE-Q35BWV2-AEO7Q3R-ZE63IAU"; + name = "Pixel 7a"; + addresses = [ "dynamic" ]; + }; + }; + }; }; }; } diff --git a/machines/genepi/syncthing.nix b/machines/genepi/syncthing.nix index 904941a..e8eae38 100644 --- a/machines/genepi/syncthing.nix +++ b/machines/genepi/syncthing.nix @@ -19,48 +19,8 @@ in services.syncthing = { enable = true; user = user; - group = "users"; + group = lib.mkForce "users"; dataDir = home; - configDir = "${home}/.config/syncthing"; - openDefaultPorts = true; - overrideDevices = true; - overrideFolders = true; - settings = { - devices = { - "haze" = { - id = "INMEQOC-5WT5JMJ-EYCBQVQ-LK2CIFQ-A5IRXPR-724CPE6-Z5A4UTH-5QGO4QD"; - }; - "pixel-7a" = { - id = "IZE7B4Z-LKTJY6Q-77NN4JG-ADYRC77-TYPZTXE-Q35BWV2-AEO7Q3R-ZE63IAU"; - }; - }; - folders = { - "Documents" = { - path = "${home}/Documents"; - devices = [ - "haze" - ]; - }; - "Music" = { - path = "${home}/Media/Music"; - devices = [ - "haze" - "pixel-7a" - ]; - }; - "Pictures" = { - path = "${home}/Media/Pictures"; - devices = [ - "haze" - ]; - }; - "Videos" = { - path = "${home}/Media/Videos"; - devices = [ - "haze" - ]; - }; - }; - }; + configDir = lib.mkForce "${home}/.config/syncthing"; }; } diff --git a/machines/haze/syncthing.nix b/machines/haze/syncthing.nix index c463b15..0a6cfde 100644 --- a/machines/haze/syncthing.nix +++ b/machines/haze/syncthing.nix @@ -1,5 +1,6 @@ { config, + lib, ... }: let @@ -10,67 +11,8 @@ in services.syncthing = { enable = true; user = user; - group = "users"; + group = lib.mkForce "users"; dataDir = home; - configDir = "${home}/.config/syncthing"; - key = config.clan.core.vars.generators.syncthing.files."key".path; - cert = config.clan.core.vars.generators.syncthing.files."cert".path; - openDefaultPorts = true; - overrideDevices = true; - overrideFolders = true; - settings = { - devices = { - "genepi" = { - id = "TNP3M2Z-2AJ3CJE-4LLYHME-3KWCLN4-XQWBIDJ-PTDRANE-RRBYQWQ-KXJFTQU"; - }; - "pixel-7a" = { - id = "IZE7B4Z-LKTJY6Q-77NN4JG-ADYRC77-TYPZTXE-Q35BWV2-AEO7Q3R-ZE63IAU"; - }; - }; - folders = { - "Documents" = { - path = "${home}/Documents"; - devices = [ - "genepi" - "pixel-7a" - ]; - }; - "Music" = { - path = "${home}/Music"; - devices = [ - "genepi" - "pixel-7a" - ]; - }; - "Pictures" = { - path = "${home}/Pictures"; - devices = [ - "genepi" - ]; - }; - "Videos" = { - path = "${home}/Videos"; - devices = [ - "genepi" - ]; - }; - }; - }; - }; - - clan.core.vars.generators.syncthing = { - prompts.key = { - description = "syncthing private key"; - type = "hidden"; - persist = true; - }; - files.key.owner = config.services.syncthing.user; - - prompts.cert = { - description = "syncthing cert"; - type = "hidden"; - persist = true; - }; - files.cert.owner = config.services.syncthing.user; + configDir = lib.mkForce "${home}/.config/syncthing"; }; }