l radio: add watcher
This commit is contained in:
parent
541cfbe3a2
commit
45c3e165c9
@ -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"; }
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user