Litenet-Nix-Infra/host/matrix/nginx/litenet.tel/matrix.nix
2024-07-20 10:29:19 +02:00

52 lines
1.6 KiB
Nix
Executable file

{
enableACME = false;
addSSL = false;
locations."/" = {
proxyPass = "http://unix:/run/matrix-synapse/main-http.sock";
extraConfig = ''
if ($request_method = 'OPTIONS') {
more_set_headers 'Access-Control-Allow-Origin: *';
more_set_headers 'Access-Control-Allow-Methods: *';
more_set_headers 'Access-Control-Allow-Headers: *, Authorization';
more_set_headers 'Access-Control-Max-Age: 1728000';
more_set_headers 'Content-Type: text/plain; charset=utf-8';
more_set_headers 'Content-Length: 0';
return 204;
}
'';
};
locations."= /.well-known/matrix/server".extraConfig = ''
more_set_headers 'Content-Type application/json';
more_set_headers 'Access-Control-Allow-Origin *';
return 200 '${builtins.toJSON { "m.server" = "matrix.litenet.tel:443"; }}';
'';
locations."= /.well-known/matrix/client".extraConfig = ''
more_set_headers 'Content-Type application/json';
more_set_headers 'Access-Control-Allow-Origin *';
return 200 '${
builtins.toJSON {
"m.homeserver".base_url = "https://matrix.litenet.tel";
}
}';
'';
locations."= /.well-known/matrix/support".extraConfig = ''
more_set_headers 'Content-Type application/json';
more_set_headers 'Access-Control-Allow-Origin *';
return 200 '${
builtins.toJSON {
admins = [
{
matrix_id = "@emma:rory.gay";
role = "admin";
}
{
matrix_id = "@chris:litenet.tel";
role = "admin";
}
];
}
}';
'';
}