owncast: relay Twitch/YouTube for synced watch parties

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
rope 2026-09-12 12:04:28 +01:00
parent 843d0d12c1
commit 5f85d611c9
3 changed files with 82 additions and 0 deletions

View file

@ -106,6 +106,22 @@ in
"jellyfin.nordhammer.it" = proxy 8096; # streaming to external clients
"seerr.nordhammer.it" = proxy 5055; # own auth via Jellyfin sign-in
# Watch-party relay (services/owncast.nix). Shared basic-auth password
# rather than Authelia: the guests have no accounts here, and Owncast
# has no viewer auth of its own. The chat websocket is exempt because
# browsers don't replay cached basic-auth credentials on a WS
# handshake — /ws would 401 forever and chat would silently never
# connect. Video stays gated; only the chat socket is reachable by
# someone who already knows the hostname.
"watch.nordhammer.it" = lib.recursiveUpdate (proxy 8088) {
basicAuth = { blizzcon = "Blizzcon"; };
locations."/ws" = {
proxyPass = "http://127.0.0.1:8088";
proxyWebsockets = true;
extraConfig = "auth_basic off;";
};
};
# wings daemon (see services/pelican.nix). Deliberately NOT behind
# Authelia: the panel container calls this server-to-server and has no
# session cookie to present. wings authenticates every request with its