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