From c9fc2ec685a4cb31a59f6b0469bce4e70d94cbde Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Geoffrey=20=E2=80=9CFrogeye=E2=80=9D=20Preud=27homme?= Date: Sat, 19 Apr 2025 17:55:17 +0200 Subject: [PATCH] syncthing: Export differently --- hm/desktop/default.nix | 2 ++ os/syncthing/default.nix | 28 +++++++++------------------- 2 files changed, 11 insertions(+), 19 deletions(-) diff --git a/hm/desktop/default.nix b/hm/desktop/default.nix index 57e0f75..e0d9b28 100644 --- a/hm/desktop/default.nix +++ b/hm/desktop/default.nix @@ -158,6 +158,8 @@ gimp inkscape libreoffice + jellyfin-media-player # Does not prevent the screen from sleeping + jellyfin-mpv-shim # No UI, needs remote # data management freefilesync diff --git a/os/syncthing/default.nix b/os/syncthing/default.nix index 22f9c20..dee08a5 100644 --- a/os/syncthing/default.nix +++ b/os/syncthing/default.nix @@ -45,7 +45,7 @@ in system.build.syncthingConfig = { folders = lib.trivial.pipe syncedFolders [ (builtins.map (folder: { - name = folder.name; + name = "geoffrey_${folder.name}"; value = folder; })) builtins.listToAttrs @@ -66,26 +66,16 @@ in devices = lib.trivial.pipe syncingDevices [ (builtins.map (device: { name = device.name; - value = device; + value = { + inherit (device) syncthing; + enabledFolders = lib.trivial.pipe device.folders [ + (lib.attrsets.filterAttrs (folderName: folder: folder.syncthing.enable)) + builtins.attrNames + (builtins.map (folderName: "geoffrey_${folderName}")) + ]; + }; })) builtins.listToAttrs - (lib.attrsets.mapAttrs ( - deviceName: device: - { - folders = lib.trivial.pipe device.folders [ - (lib.attrsets.filterAttrs (folderName: folder: folder.syncthing.enable)) - (lib.attrsets.mapAttrs (folderName: folder: { syncthing.enable = true; })) - ]; - } - // - (lib.attrsets.filterAttrs ( - k: v: - builtins.elem k [ - "syncthing" - ] - )) - device - )) ]; }; services.${service} = {