feat(services/synapse): add well-known
This commit is contained in:
parent
7df9d7ef4f
commit
d2949df2fb
1 changed files with 14 additions and 4 deletions
|
|
@ -1,7 +1,15 @@
|
|||
{ config, ... }:
|
||||
let
|
||||
inherit (config.machine.synapse) domain port;
|
||||
cfg = config.machine.synapse;
|
||||
maxUploadSize = config.services.matrix-synapse.settings.max_upload_size;
|
||||
|
||||
clientConfig."m.homeserver".base_url = baseUrl;
|
||||
serverConfig."m.server" = "${cfg.domain}:443";
|
||||
mkWellKnown = data: ''
|
||||
default_type application/json;
|
||||
add_header Access-Control-Allow-Origin *;
|
||||
return 200 '${builtins.toJSON data}';
|
||||
'';
|
||||
in
|
||||
{
|
||||
systemd.services.nginx.serviceConfig.SupplementaryGroups = [ "matrix-synapse" ];
|
||||
|
|
@ -14,13 +22,15 @@ in
|
|||
upstreams."matrix-synapse".servers = {
|
||||
"unix:/run/matrix-synapse/matrix-synapse.sock" = { };
|
||||
};
|
||||
virtualHosts.${domain} = {
|
||||
virtualHosts.${cfg.domain} = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
|
||||
locations = {
|
||||
"= /.well-known/matrix/server".extraConfig = mkWellKnown serverConfig;
|
||||
"= /.well-known/matrix/client".extraConfig = mkWellKnown clientConfig;
|
||||
"^~ /_matrix" = {
|
||||
proxyPass = "http://127.0.0.1:${toString port}";
|
||||
proxyPass = "http://127.0.0.1:${toString cfg.port}";
|
||||
extraConfig = ''
|
||||
limit_req zone=matrix burst=100 nodelay;
|
||||
proxy_set_header Host $host;
|
||||
|
|
@ -36,7 +46,7 @@ in
|
|||
|
||||
# Health check
|
||||
"= /health" = {
|
||||
proxyPass = "http://127.0.0.1:${toString port}";
|
||||
proxyPass = "http://127.0.0.1:${toString cfg.port}";
|
||||
extraConfig = ''
|
||||
access_log off;
|
||||
'';
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue