This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

syncthing: configure all shares in main config

+30 -60
+30 -12
2configs/syncthing.nix
··· 1 - { config, lib, pkgs, ... }: with lib; 1 + { config, lib, pkgs, ... }: 2 2 let 3 - mk_peers = mapAttrs (n: v: { id = v.syncthing.id; }); 4 3 5 - all_peers = filterAttrs (n: v: v.syncthing.id != null) config.krebs.hosts; 6 - used_peer_names = unique (filter isString (flatten (mapAttrsToList (n: v: v.devices) config.services.syncthing.folders))); 7 - used_peers = filterAttrs (n: v: elem n used_peer_names) all_peers; 4 + shares = { 5 + "/home/lass/sync" = [ "mors" "xerxes" "green" "blue" "coaxmetal" "aergia" "ignavia" ]; 6 + "/home/lass/tmp/the_playlist" = [ "mors" "phone" "prism" "omo" "radio" ]; 7 + # "/home/lass/.weechat" = [ "green" "mors" ]; 8 + "/home/lass/decsync" = [ "mors" "blue" "green" "phone" "massulus" ]; 9 + }; 10 + 11 + mk_peers = lib.mapAttrs (n: v: { id = v.syncthing.id; }); 12 + 13 + all_peers = lib.filterAttrs (n: v: v.syncthing.id != null) config.krebs.hosts; 14 + used_peer_names = lib.unique (lib.filter lib.isString (lib.flatten (lib.mapAttrsToList (n: v: v.devices) config.services.syncthing.folders))); 15 + used_peers = lib.filterAttrs (n: v: lib.elem n used_peer_names) all_peers; 8 16 in { 9 17 services.syncthing = { 10 18 enable = true; ··· 14 22 cert = "${config.krebs.secret.directory}/syncthing.cert"; 15 23 # workaround for infinite recursion on unstable, remove in 23.11 16 24 settings.devices = mk_peers used_peers; 25 + settings.folders = lib.mapAttrs (share: devices: { 26 + enable = lib.elem config.networking.hostName devices; 27 + path = share; 28 + ignorePerms = false; 29 + versioning = { 30 + type = "trashcan"; 31 + params = { 32 + cleanoutDays = "30"; 33 + }; 34 + }; 35 + devices = devices; 36 + }) shares; 37 + user = "lass"; 17 38 }; 18 39 19 40 clanCore.secrets.syncthing = { ··· 29 50 }; 30 51 31 52 boot.kernel.sysctl."fs.inotify.max_user_watches" = 524288; 32 - krebs.iptables.tables.filter.INPUT.rules = [ 33 - { predicate = "-p tcp --dport 22000"; target = "ACCEPT";} 34 - { predicate = "-p udp --dport 21027"; target = "ACCEPT";} 35 - ]; 36 - system.activationScripts.syncthing-home = mkDefault '' 37 - ${pkgs.coreutils}/bin/chmod a+x /home/lass 38 - ''; 53 + networking.firewall = { 54 + allowedTCPPorts = [ 22000 ]; 55 + allowedUDPPorts = [ 21027 ]; 56 + }; 39 57 }
-10
2configs/sync/decsync.nix
··· 1 - { 2 - services.syncthing.folders.decsync = { 3 - path = "/home/lass/decsync"; 4 - devices = [ "mors" "blue" "green" "phone" "massulus" ]; 5 - }; 6 - 7 - krebs.acl."/home/lass/decsync"."u:syncthing:X".parents = true; 8 - krebs.acl."/home/lass/decsync"."u:syncthing:rwX" = {}; 9 - krebs.acl."/home/lass/decsync"."u:lass:rwX" = {}; 10 - }
-23
2configs/sync/sync.nix
··· 1 - { self, ... }: 2 - { 3 - imports = [ self.inputs.stockholm.nixosModules.acl ]; 4 - services.syncthing.settings.folders."/home/lass/sync" = { 5 - devices = [ 6 - "mors" 7 - "xerxes" 8 - "green" 9 - "blue" 10 - "coaxmetal" 11 - "aergia" 12 - ]; 13 - versioning = { 14 - type = "trashcan"; 15 - params = { 16 - cleanoutDays = "30"; 17 - }; 18 - }; 19 - }; 20 - krebs.acl."/home/lass/sync"."u:syncthing:X".parents = true; 21 - krebs.acl."/home/lass/sync"."u:syncthing:rwX" = {}; 22 - krebs.acl."/home/lass/sync"."u:lass:rwX" = {}; 23 - }
-9
2configs/sync/the_playlist.nix
··· 1 - { 2 - services.syncthing.folders.the_playlist = { 3 - path = "/home/lass/tmp/the_playlist"; 4 - devices = [ "mors" "phone" "prism" "omo" "radio" ]; 5 - }; 6 - krebs.acl."/home/lass/tmp/the_playlist"."u:syncthing:X".parents = true; 7 - krebs.acl."/home/lass/tmp/the_playlist"."u:syncthing:rwX" = {}; 8 - krebs.acl."/home/lass/tmp/the_playlist"."u:lass:rwX" = {}; 9 - }
-6
2configs/sync/weechat.nix
··· 1 - { 2 - services.syncthing.folders."/home/lass/.weechat".devices = [ "green" "mors" ]; 3 - krebs.acl."/home/lass/.weechat"."u:syncthing:X".parents = true; 4 - krebs.acl."/home/lass/.weechat"."u:syncthing:rwX" = {}; 5 - krebs.acl."/home/lass/.weechat"."u:lass:rwX" = {}; 6 - }