1{ pkgs, lib, config, ... }:
2
3with lib;
4
5let
6 cfg = config.programs.feedbackd;
7in {
8 options = {
9 programs.feedbackd = {
10 enable = mkEnableOption (lib.mdDoc ''
11 Whether to enable the feedbackd D-BUS service and udev rules.
12
13 Your user needs to be in the `feedbackd` group to trigger effects.
14 '');
15 package = mkOption {
16 description = lib.mdDoc ''
17 Which feedbackd package to use.
18 '';
19 type = types.package;
20 default = pkgs.feedbackd;
21 defaultText = literalExpression "pkgs.feedbackd";
22 };
23 };
24 };
25 config = mkIf cfg.enable {
26 environment.systemPackages = [ cfg.package ];
27
28 services.dbus.packages = [ cfg.package ];
29 services.udev.packages = [ cfg.package ];
30
31 users.groups.feedbackd = {};
32 };
33}