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";
+ '';
};
};
};