diff options
Diffstat (limited to 'host/Rory-nginx/services/matrix/synapse/workers/stream-writers')
-rw-r--r-- | host/Rory-nginx/services/matrix/synapse/workers/stream-writers/_.nix | 50 | ||||
-rw-r--r-- | host/Rory-nginx/services/matrix/synapse/workers/stream-writers/__OLD__module.nix (renamed from host/Rory-nginx/services/matrix/synapse/workers/stream-writers/module.nix) | 0 | ||||
-rw-r--r-- | host/Rory-nginx/services/matrix/synapse/workers/stream-writers/event-stream-writer.nix | 41 |
3 files changed, 41 insertions, 50 deletions
diff --git a/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/_.nix b/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/_.nix deleted file mode 100644 index 6b0d2c2..0000000 --- a/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/_.nix +++ /dev/null @@ -1,50 +0,0 @@ -{ - count, - separateEventWriters ? 1, - separateTypingWriters ? 1, - separateToDeviceWriters ? 1, - separateAccountDataWriters ? 1, - separateReceiptsWriters ? 1, - separatePresenceWriters ? 1, - separatePusherWriters ? 1, -}: -{ config, pkgs, lib, ... }: -let - eventWriters = lib.range 0 (count - 1); - typingWriters = lib.range 0 (count - 1); - deviceWriters = lib.range 0 (count - 1); - accountDataWriters = lib.range 0 (count - 1); - receiptsWriters = lib.range 0 (count - 1); - presenceWriters = lib.range 0 (count - 1); - pusherWriters = lib.range 0 (count - 1); -in -{ - services.matrix-synapse = { - settings = { - instance_map = lib.listToAttrs (lib.map (port: { - name = "stream-writer-${toString port}"; - value = { - path = "/run/matrix-synapse/stream-writer-${toString port}.sock"; - }; - }) federationSenders); - - stream_writers = { - events = lib.map (port: "stream-writer-events-${toString port}") federationSenders; - typing = lib.map (port: "stream-writer-typing-${toString port}") typingWriters; - to_device = lib.map (port: "stream-writer-to_device-${toString port}") deviceWriters; - account_data = lib.map (port: "stream-writer-account_data-${toString port}") accountDataWriters; - receipts = lib.map (port: "stream-writer-receipts-${toString port}") receiptsWriters; - presence = lib.map (port: "stream-writer-presence-${toString port}") presenceWriters; - push_rules = lib.map (port: "stream-writer-push_rules-${toString port}") pusherWriters; - }; - }; - - workers = lib.listToAttrs (lib.map (port: { - name = "stream-writerr-${toString port}"; - value = { - worker_app = "synapse.app.generic_worker"; - worker_listeners = [ ]; - }; - }) federationSenders); - }; -} \ No newline at end of file diff --git a/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/module.nix b/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/__OLD__module.nix index a661911..a661911 100644 --- a/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/module.nix +++ b/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/__OLD__module.nix diff --git a/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/event-stream-writer.nix b/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/event-stream-writer.nix new file mode 100644 index 0000000..af7e544 --- /dev/null +++ b/host/Rory-nginx/services/matrix/synapse/workers/stream-writers/event-stream-writer.nix @@ -0,0 +1,41 @@ + +{ config, pkgs, lib, ... }: +let + cfg = config.services.matrix-synapse; + streamWriters = lib.range 0 (cfg.eventStreamWriters - 1); +in +{ + services.matrix-synapse = { + settings = { + instance_map = lib.listToAttrs (lib.map (port: { + name = "stream-writer-${toString port}"; + value = { + path = "/run/matrix-synapse/stream-writer-${toString port}.sock"; + }; + }) streamWriters); + + stream_writers = { + events = lib.map (index: "stream-writer-events-${toString index}") streamWriters; + }; + }; + + workers = lib.listToAttrs (lib.map (index: { + name = "stream-writer-${toString index}"; + value = { + worker_app = "synapse.app.generic_worker"; + worker_listeners = [ + { + type = "http"; + path = "/run/matrix-synapse/stream-writer-${toString index}.sock"; + resources = [ + { + names = ["replication"]; + compress = false; + } + ]; + } + ]; + }; + }) streamWriters); + }; +} \ No newline at end of file |