{ config, lib, pkgs, ... }: let matrixPort = (import ../data/aliases.nix).services.matrix.port; matrixFederationPort = (import ../data/aliases.nix).services.matrixFederation.port; in { networking.firewall.allowedTCPPorts = [ matrixPort matrixFederationPort ]; services.matrix-synapse = { enable = true; server_name = "orbekk.com"; # registration_shared_secret = "disable_after_registration"; listeners = [ { port = matrixPort; bind_address = ""; type = "http"; tls = false; x_forwarded = true; resources = [ { names = ["client" "webclient"]; compress = true; } # { names = ["federation"]; compress = false; } ]; } { port = matrixFederationPort; bind_address = ""; type = "http"; tls = true; x_forwarded = false; resources = [ { names = ["federation"]; compress = false; } ]; } ]; }; }