# -------------------------------------------------- # How to use? # * start the icecast # * connect via mixxx to it. # * add the podcast to mpd in the same network # -------------------------------------------------- { pkgs, config, lib, ... }: let user = "username"; password = "password"; mountPoint = "/radio.mp3"; maxListeners = 20; in { services.icecast = { enable = true; hostname = config.networking.hostName; admin = { user = "palo"; password = "palo"; }; # http://icecast.org/docs/icecast-2.4.1/config-file.html extraConf = '' ${mountPoint} ${user} ${password} ${toString maxListeners} 3600 UTF8 1 Palos Awesome Stream Kick ass Tracks https://ingolf-wagner.de classical 320 application/ogg vorbis 1 65536 4096 ''; }; # use port which I can see in iptable -L -v -n networking.firewall = { allowedTCPPorts = [ config.services.icecast.listen.port ]; allowedUDPPorts = [ config.services.icecast.listen.port ]; }; # don't want to have the service running all the time # --------------------------------------------------- systemd.services.icecast.wantedBy = lib.mkForce [ ]; systemd.services.icecast.after = lib.mkForce [ ]; }