at 23.11-pre 604 B view raw
1{ config 2, lib 3, pkgs 4, ... 5}: 6 7let 8 cfg = config.services.ddccontrol; 9in 10 11{ 12 ###### interface 13 14 options = { 15 services.ddccontrol = { 16 enable = lib.mkEnableOption (lib.mdDoc "ddccontrol for controlling displays"); 17 }; 18 }; 19 20 ###### implementation 21 22 config = lib.mkIf cfg.enable { 23 # Load the i2c-dev module 24 boot.kernelModules = [ "i2c_dev" ]; 25 26 # Give users access to the "gddccontrol" tool 27 environment.systemPackages = [ 28 pkgs.ddccontrol 29 ]; 30 31 services.dbus.packages = [ 32 pkgs.ddccontrol 33 ]; 34 35 systemd.packages = [ 36 pkgs.ddccontrol 37 ]; 38 }; 39}