49 lines
1.4 KiB
Nix
49 lines
1.4 KiB
Nix
{ pkgs, ... }:
|
|
|
|
{
|
|
services.nginx = {
|
|
enable = true;
|
|
virtualHosts = {
|
|
"matrix.walkah.chat" = {
|
|
forceSSL = true;
|
|
enableACME = true;
|
|
locations."/" = { proxyPass = "http://100.111.208.75:8008"; };
|
|
};
|
|
|
|
"syncv3.walkah.chat" = {
|
|
forceSSL = true;
|
|
enableACME = true;
|
|
locations."/" = { proxyPass = "http://100.111.208.75:8088"; };
|
|
};
|
|
|
|
"walkah.chat" = {
|
|
forceSSL = true;
|
|
enableACME = true;
|
|
locations = {
|
|
"= /.well-known/matrix/server".extraConfig =
|
|
let server = { "m.server" = "matrix.walkah.chat:443"; };
|
|
in
|
|
''
|
|
default_type application/json;
|
|
add_header Access-Control-Allow-Origin *;
|
|
return 200 '${builtins.toJSON server}';
|
|
'';
|
|
"= /.well-known/matrix/client".extraConfig =
|
|
let
|
|
client = {
|
|
"m.homeserver" = { "base_url" = "https://matrix.walkah.chat"; };
|
|
"org.matrix.msc3575.proxy" = { "url" = "https://syncv3.walkah.chat"; };
|
|
};
|
|
in
|
|
''
|
|
default_type application/json;
|
|
add_header Access-Control-Allow-Origin *;
|
|
return 200 '${builtins.toJSON client}';
|
|
'';
|
|
"/" = { root = pkgs.element-web; };
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|