From 7537fb33b59a29505ab2cd26fb0089e846fefa5a Mon Sep 17 00:00:00 2001 From: kat witch Date: Sun, 8 Aug 2021 02:17:13 +0100 Subject: [PATCH] tvheadend service --- config/services/tvheadend/default.nix | 37 +++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 config/services/tvheadend/default.nix diff --git a/config/services/tvheadend/default.nix b/config/services/tvheadend/default.nix new file mode 100644 index 00000000..328bb38d --- /dev/null +++ b/config/services/tvheadend/default.nix @@ -0,0 +1,37 @@ +{ config, pkgs, lib, ... }: + +{ + hardware.firmware = [ pkgs.libreelec-dvb-firmware ]; + services.tvheadend.enable = true; + systemd.services.tvheadend.enable = lib.mkForce false; + + kw.fw.public = { + tcp.ports = [ 9981 9982 ]; + }; + + systemd.services.tvheadend-kat = { + description = "Tvheadend TV streaming server"; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; + script = '' + ${pkgs.tvheadend}/bin/tvheadend \ + --http_root /tvheadend \ + --http_port 9981 \ + --htsp_port 9982 \ + -f \ + -C \ + -p ${config.users.users.tvheadend.home}/tvheadend.pid \ + -u tvheadend \ + -g video + ''; + serviceConfig = { + Type = "forking"; + PIDFile = "${config.users.users.tvheadend.home}/tvheadend.pid"; + Restart = "always"; + RestartSec = 5; + User = "tvheadend"; + Group = "video"; + ExecStop = "${pkgs.coreutils}/bin/rm ${config.users.users.tvheadend.home}/tvheadend.pid"; + }; + }; +}