thekenlicht/module.nix

25 lines
685 B
Nix
Raw Normal View History

2024-08-28 22:48:06 +02:00
{ self, config, pkgs, lib, ... }:
let
cfg = config.services.thekenlicht-daemon;
in
{
options = {
services.thekenlicht-daemon = {
enable = lib.mkEnableOption "Enable Module";
2024-08-28 22:58:04 +02:00
serialPort = lib.mkOption {
description = "Serial Port";
type = lib.types.uniq lib.types.str;
};
2024-08-28 22:48:06 +02:00
};
};
config = lib.mkIf cfg.enable {
systemd.services.thekenlicht-daemon = {
description = "converts artnet to serial thekenlicht commands";
wantedBy = [ "multi-user.target" ];
serviceConfig.ExecStart = "${self.packages.thekenlicht-daemon}/bin/thekenlicht-daemon ${cfg.serialPort}";
serviceConfig.Restart = "on-failure";
};
};
}