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