at master 896 B view raw
1{ 2 pkgs, 3 lib, 4 config, 5 ... 6}: 7 8let 9 cfg = config.programs.feedbackd; 10in 11{ 12 options = { 13 programs.feedbackd = { 14 enable = lib.mkEnableOption '' 15 the feedbackd D-BUS service and udev rules. 16 17 Your user needs to be in the `feedbackd` group to trigger effects 18 ''; 19 package = lib.mkPackageOption pkgs "feedbackd" { }; 20 theme-package = lib.mkPackageOption pkgs "feedbackd-device-themes" { 21 nullable = true; 22 }; 23 }; 24 }; 25 config = lib.mkIf cfg.enable { 26 environment.systemPackages = [ 27 cfg.package 28 ] 29 ++ (if cfg.theme-package != null then [ cfg.theme-package ] else [ ]); 30 31 services.dbus.packages = [ cfg.package ]; 32 services.udev.packages = [ cfg.package ]; 33 34 # TODO: also enable systemd unit fbd-alert-slider for OnePlus 6/6T devices, see release notes of feedbackd v0.5.0 35 36 users.groups.feedbackd = { }; 37 }; 38}