l radio: add watcher

This commit is contained in:
lassulus 2023-09-03 11:59:53 +02:00
parent 541cfbe3a2
commit 45c3e165c9
1 changed files with 18 additions and 0 deletions

View File

@ -104,6 +104,22 @@ in {
print_current print_current
]; ];
systemd.services.radio_watcher = {
wantedBy = [ "multi-user.target" ];
after = [ "radio.service" ];
serviceConfig = {
ExecStart = pkgs.writers.writeDash "radio_watcher" ''
set -efux
while :; do
${pkgs.curl}/bin/curl -Ss http://localhost:8000/radio.ogg -o /dev/null
${pkgs.systemd}/bin/systemctl restart radio
sleep 60
done
'';
};
};
services.liquidsoap.streams.radio = ./radio.liq; services.liquidsoap.streams.radio = ./radio.liq;
systemd.services.radio = { systemd.services.radio = {
environment = { environment = {
@ -124,6 +140,7 @@ in {
}; };
path = [ path = [
pkgs.yt-dlp pkgs.yt-dlp
pkgs.bubblewrap
]; ];
serviceConfig.User = lib.mkForce "radio"; serviceConfig.User = lib.mkForce "radio";
}; };
@ -163,6 +180,7 @@ in {
filter.INPUT.rules = [ filter.INPUT.rules = [
{ predicate = "-p tcp --dport 8000"; target = "ACCEPT"; } { predicate = "-p tcp --dport 8000"; target = "ACCEPT"; }
{ predicate = "-i retiolum -p tcp --dport 8001"; target = "ACCEPT"; } { predicate = "-i retiolum -p tcp --dport 8001"; target = "ACCEPT"; }
{ predicate = "-i retiolum -p tcp --dport 8002"; target = "ACCEPT"; }
]; ];
}; };
}; };