diff --git a/nixos/server/icecast.nix b/nixos/server/icecast.nix index a36833e..faf0fca 100644 --- a/nixos/server/icecast.nix +++ b/nixos/server/icecast.nix @@ -1,6 +1,7 @@ {pkgs, outputs, ...}: { # Icecast, replacing Azuracast maybe services = { + # The host service icecast = { enable = true; listen.port = 265; @@ -13,8 +14,23 @@ ${outputs.secrets.castSourcePass} + + Canada + jimbo@jimbosfiles.com + + + /jimbops.opus + JimBops Radio + Music gathered by me, Jimbo. + https://icecast.jimbosfiles.com/jimbops.opus + Anything + application/ogg + vorbis + ''; }; + + # The audio stream liquidsoap.streams = let jimbops = '' # CONFIGURATION @@ -35,12 +51,8 @@ host="127.0.0.1", port=265, password="${outputs.secrets.castSourcePass}", - name = "JimBops Radio", - description = "Music gathered by me, Jimbo.", - url="https://icecast.jimbosfiles.com/jimbops.opus", public=true, icy_metadata=["artist", "title"], - genre="Anything", mount="jimbops.opus", encoding = "UTF-8", jimbops_fallback @@ -49,12 +61,17 @@ in { JimBops = pkgs.writeText "liquidjim" jimbops; }; + + # The web frontend nginx.virtualHosts."icecast.${outputs.secrets.jimDomain}" = { enableACME = true; forceSSL = true; locations."/" = { proxyPass = "http://127.0.0.1:265"; proxyWebsockets = true; + extraConfig = '' + add_header Ice-Public "1"; + ''; }; }; };