diff options
Diffstat (limited to 'host/Rory-nginx/services/matrix/synapse/workers/federation-sender.nix')
-rw-r--r-- | host/Rory-nginx/services/matrix/synapse/workers/federation-sender.nix | 75 |
1 files changed, 40 insertions, 35 deletions
diff --git a/host/Rory-nginx/services/matrix/synapse/workers/federation-sender.nix b/host/Rory-nginx/services/matrix/synapse/workers/federation-sender.nix index 391e046..931d6a4 100644 --- a/host/Rory-nginx/services/matrix/synapse/workers/federation-sender.nix +++ b/host/Rory-nginx/services/matrix/synapse/workers/federation-sender.nix @@ -1,52 +1,57 @@ { config, lib, ... }: let cfg = config.services.matrix-synapse; + dbGroup = "solo"; + hasClientResource = false; + hasFederationResource = false; federationSenders = lib.range 0 (cfg.federationSenders - 1); workerName = "federation_sender"; workerRoutes = [ ]; in { - services.matrix-synapse = lib.mkIf (cfg.federationSenders > 0) { - settings = { - instance_map = lib.listToAttrs ( + config = lib.mkIf (cfg.federationSenders > 0) { + services.matrix-synapse = { + settings = { + instance_map = lib.listToAttrs ( + lib.map (index: { + name = "${workerName}-${toString index}"; + value = { + path = "/run/matrix-synapse/${workerName}-${toString index}.sock"; + }; + }) federationSenders + ); + send_federation = false; + federation_sender_instances = lib.map (index: "${workerName}-${toString index}") federationSenders; + outbound_federation_restricted_to = lib.map (index: "${workerName}-${toString index}") federationSenders; + worker_replication_secret = "${workerName}_secret"; + }; + + workers = lib.listToAttrs ( lib.map (index: { name = "${workerName}-${toString index}"; value = { - path = "/run/matrix-synapse/${workerName}-${toString index}.sock"; + worker_app = "synapse.app.generic_worker"; + worker_listeners = [ + { + type = "http"; + path = "/run/matrix-synapse/${workerName}-${toString index}.sock"; + resources = [ + { + names = [ "replication" ]; + compress = false; + } + ]; + } + ]; + database = ( + import ../db.nix { + inherit dbGroup; + workerName = "${workerName}-${toString index}"; + } + ); }; }) federationSenders ); - send_federation = false; - federation_sender_instances = lib.map (index: "${workerName}-${toString index}") federationSenders; - outbound_federation_restricted_to = lib.map (index: "${workerName}-${toString index}") federationSenders; - worker_replication_secret = "${workerName}_secret"; }; - - workers = lib.listToAttrs ( - lib.map (index: { - name = "${workerName}-${toString index}"; - value = { - worker_app = "synapse.app.generic_worker"; - worker_listeners = [ - { - type = "http"; - path = "/run/matrix-synapse/${workerName}-${toString index}.sock"; - resources = [ - { - names = [ "replication" ]; - compress = false; - } - ]; - } - ]; - database = ( - import ../db.nix { - workerName = "${workerName}-${toString index}"; - dbGroup = "solo"; - } - ); - }; - }) federationSenders - ); }; } |