2022-07-08 18:49:09 +02:00
|
|
|
{ config, lib, pkgs, ... }:
|
|
|
|
|
|
|
|
with lib;
|
|
|
|
|
|
|
|
let
|
|
|
|
cfg = config.programs.streamdeck-ui;
|
2022-11-12 14:14:21 +01:00
|
|
|
in
|
|
|
|
{
|
2022-07-08 18:49:09 +02:00
|
|
|
options.programs.streamdeck-ui = {
|
2022-08-28 21:18:44 +02:00
|
|
|
enable = mkEnableOption (lib.mdDoc "streamdeck-ui");
|
2022-07-08 18:49:09 +02:00
|
|
|
|
|
|
|
autoStart = mkOption {
|
|
|
|
default = true;
|
|
|
|
type = types.bool;
|
2022-07-28 23:19:15 +02:00
|
|
|
description = lib.mdDoc "Whether streamdeck-ui should be started automatically.";
|
2022-07-08 18:49:09 +02:00
|
|
|
};
|
2022-11-12 14:14:21 +01:00
|
|
|
|
2022-12-30 21:04:52 +01:00
|
|
|
package = mkPackageOptionMD pkgs "streamdeck-ui" {
|
2022-11-12 14:14:21 +01:00
|
|
|
default = [ "streamdeck-ui" ];
|
|
|
|
};
|
|
|
|
|
2022-07-08 18:49:09 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
config = mkIf cfg.enable {
|
|
|
|
environment.systemPackages = with pkgs; [
|
2022-11-12 14:14:21 +01:00
|
|
|
cfg.package
|
|
|
|
(mkIf cfg.autoStart (makeAutostartItem { name = "streamdeck-ui"; package = cfg.package; }))
|
2022-07-08 18:49:09 +02:00
|
|
|
];
|
|
|
|
|
2022-11-12 14:14:21 +01:00
|
|
|
services.udev.packages = [ cfg.package ];
|
2022-07-08 18:49:09 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
meta.maintainers = with maintainers; [ majiir ];
|
|
|
|
}
|