nixos-config/modules/nixos/linux/gui/desktopish/monitor-brightness.nix
2024-09-28 18:01:53 -04:00

32 lines
692 B
Nix

# TODO: GNOME support via https://extensions.gnome.org/extension/2645/brightness-control-using-ddcutil/
{ pkgs, flake, ... }: {
# ddcutils requires i2c
hardware.i2c.enable = true;
environment.systemPackages = with pkgs;
[
# ddcutil can manage *external* monitor's brightness
ddcutil
# This can control the laptop display.
brightnessctl
];
security.sudo.extraRules = [
{
users = [ flake.config.me.username ];
commands = [
{
command = "${pkgs.ddcutil}/bin/ddcutil";
options = [ "NOPASSWD" ];
}
];
}
];
users.users.${flake.config.me.username} = {
extraGroups = [ "i2c" ];
};
}