summary refs log tree commit diff
path: root/host/Rory-nginx/services/nginx/rory.gay/root.nix
blob: 11d06c044b909568795d88d811592261635fb2a4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
{
  root = "/data/nginx/html_rory_gay";
  enableACME = true;
  addSSL = true;
  extraConfig = ''autoindex on;'';

  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.rory.gay: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.rory.gay";
        "org.matrix.msc3575.proxy".url = "https://matrix.rory.gay";
      }
    }';
  '';
  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 = "@alicia:rory.gay";
            role = "admin";
          }
          {
            matrix_id = "@root:rory.gay";
            role = "admin";
          }
          {
            matrix_id = "@rory:rory.gay";
            role = "admin";
          }
        ];
      }
    }';
  '';
}