thekenlicht/module.nix
2024-08-28 23:08:17 +02:00

25 lines
699 B
Nix

{flake}:
{ self, config, pkgs, lib, ... }:
let
cfg = config.services.thekenlicht-daemon;
in
{
options = {
services.thekenlicht-daemon = {
enable = lib.mkEnableOption "Enable Module";
serialPort = lib.mkOption {
description = "Serial Port";
type = lib.types.uniq lib.types.str;
};
};
};
config = lib.mkIf cfg.enable {
systemd.services.thekenlicht-daemon = {
description = "converts artnet to serial thekenlicht commands";
wantedBy = [ "multi-user.target" ];
serviceConfig.ExecStart = "${flake.packages.${pkgs.system}.default}/bin/thekenlicht-daemon ${cfg.serialPort}";
serviceConfig.Restart = "on-failure";
};
};
}