1{ config, lib, pkgs, ... }:
2
3with lib;
4
5let
6 cfg = config.programs.streamdeck-ui;
7in
8{
9 options.programs.streamdeck-ui = {
10 enable = mkEnableOption (lib.mdDoc "streamdeck-ui");
11
12 autoStart = mkOption {
13 default = true;
14 type = types.bool;
15 description = lib.mdDoc "Whether streamdeck-ui should be started automatically.";
16 };
17
18 package = mkPackageOptionMD pkgs "streamdeck-ui" {
19 default = [ "streamdeck-ui" ];
20 };
21
22 };
23
24 config = mkIf cfg.enable {
25 environment.systemPackages = with pkgs; [
26 cfg.package
27 (mkIf cfg.autoStart (makeAutostartItem { name = "streamdeck-ui"; package = cfg.package; }))
28 ];
29
30 services.udev.packages = [ cfg.package ];
31 };
32
33 meta.maintainers = with maintainers; [ majiir ];
34}