renge/synapse: Migrate to new settings option

This commit is contained in:
Simon Bruder 2022-05-31 14:43:51 +02:00
parent a68f13967c
commit 8de4852418
Signed by: simon
GPG key ID: 8D3C82F9F309F8EC
4 changed files with 58 additions and 57 deletions

View file

@ -1,6 +1,6 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
let let
synapseCfg = config.services.matrix-synapse; synapseCfg = config.services.matrix-synapse.settings;
in in
{ {
sops.secrets = { sops.secrets = {

View file

@ -1,7 +1,7 @@
# somewhat adapted from https://github.com/NixOS/nixpkgs/pull/59211 # somewhat adapted from https://github.com/NixOS/nixpkgs/pull/59211
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
let let
synapseCfg = config.services.matrix-synapse; synapseCfg = config.services.matrix-synapse.settings;
in in
let let
config = rec { config = rec {
@ -74,5 +74,5 @@ in
}; };
}; };
services.matrix-synapse.app_service_config_files = lib.singleton "${generatedConfig}/registration.yaml"; services.matrix-synapse.settings.app_service_config_files = lib.singleton "${generatedConfig}/registration.yaml";
} }

View file

@ -1,6 +1,6 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
let let
cfg = config.services.matrix-synapse; cfg = config.services.matrix-synapse.settings;
fqdn = "matrix.sbruder.de"; fqdn = "matrix.sbruder.de";
domain = "sbruder.de"; domain = "sbruder.de";
@ -20,12 +20,14 @@ in
services.matrix-synapse = { services.matrix-synapse = {
enable = true; enable = true;
settings = {
server_name = domain; server_name = domain;
public_baseurl = "https://${fqdn}"; public_baseurl = "https://${fqdn}";
listeners = lib.singleton { listeners = lib.singleton {
port = 8008; port = 8008;
bind_address = "127.0.0.1"; bind_addresses = [ "127.0.0.1" ];
type = "http"; type = "http";
tls = false; tls = false;
x_forwarded = true; x_forwarded = true;
@ -74,10 +76,9 @@ in
max_upload_size = "50M"; max_upload_size = "50M";
extraConfig = ''
# Im okay with using matrix.org as trusted key server # Im okay with using matrix.org as trusted key server
suppress_key_server_warning: true suppress_key_server_warning = true;
''; };
extraConfigFiles = with config.sops.secrets; [ extraConfigFiles = with config.sops.secrets; [
synapse-registration-shared-secret.path synapse-registration-shared-secret.path
@ -109,7 +110,7 @@ in
listenerCfg = (lib.elemAt cfg.listeners 0); listenerCfg = (lib.elemAt cfg.listeners 0);
in in
{ {
proxyPass = "http://${listenerCfg.bind_address}:${toString listenerCfg.port}"; proxyPass = "http://${lib.elemAt listenerCfg.bind_addresses 0}:${toString listenerCfg.port}";
extraConfig = '' extraConfig = ''
client_max_body_size ${cfg.max_upload_size}; client_max_body_size ${cfg.max_upload_size};

View file

@ -87,11 +87,11 @@ in
} }
( (
let let
listenerCfg = (lib.elemAt config.services.matrix-synapse.listeners 0); listenerCfg = (lib.elemAt config.services.matrix-synapse.settings.listeners 0);
in in
{ {
job_name = "synapse"; job_name = "synapse";
static_configs = mkStaticTarget "${listenerCfg.bind_address}:${toString listenerCfg.port}"; static_configs = mkStaticTarget "${lib.elemAt listenerCfg.bind_addresses 0}:${toString listenerCfg.port}";
metrics_path = "/_synapse/metrics"; metrics_path = "/_synapse/metrics";
relabel_configs = lib.singleton { relabel_configs = lib.singleton {
target_label = "instance"; target_label = "instance";