Matrix: Difference between revisions
m disable livekit auto room creation as per lk-jwt-service upstream docs |
Add section about synapse admin |
||
| (One intermediate revision by one other user not shown) | |||
| Line 188: | Line 188: | ||
path = with pkgs; [ livekit coreutils gawk ]; | path = with pkgs; [ livekit coreutils gawk ]; | ||
script = '' | script = '' | ||
echo "Key missing, generating key" | echo "Key missing, generating key" | ||
echo "lk-jwt-service: $(livekit-server generate-keys | tail -1 | awk '{print $3}')" > "${keyFile}" | echo "lk-jwt-service: $(livekit-server generate-keys | tail -1 | awk '{print $3}')" > "${keyFile}" | ||
''; | ''; | ||
serviceConfig.Type = "oneshot"; | serviceConfig.Type = "oneshot"; | ||
unitConfig.ConditionPathExists = "!${keyFile}"; | |||
}; | }; | ||
# restrict access to livekit room creation to a homeserver | # restrict access to livekit room creation to a homeserver | ||
| Line 242: | Line 239: | ||
There's an external module to automatically set up synapse and configure nginx with workers: | There's an external module to automatically set up synapse and configure nginx with workers: | ||
https://github.com/dali99/nixos-matrix-modules | https://github.com/dali99/nixos-matrix-modules | ||
==== Synapse Admin with Caddy ==== | |||
Setting up [https://github.com/etkecc/synapse-admin Synapse Admin] with [[Caddy]] is quite easy! | |||
The example uses the newer <code>pkgs.synapse-admin-etkecc</code> which may not be what you want if you have heard of the old one which is available at: <code>pkgs.synapse-admin</code> | |||
{{File|3={ pkgs, ... }: | |||
let | |||
synapse-admin = pkgs.synapse-admin-etkecc.withConfig { | |||
restrictBaseUrl = [ | |||
"https://matrix.example.com" # Synapse domain | |||
]; | |||
}; | |||
in | |||
{ | |||
services.caddy.virtualHosts."synapse-admin.example.com".extraConfig = '' | |||
root * ${synapse-admin} | |||
file_server | |||
''; | |||
}|name=/etc/nixos/configuration.nix|lang=nix}} | |||
== Application services (a.k.a. bridges) == | == Application services (a.k.a. bridges) == | ||