{
  config,
  pkgs,
  lib,
  ...
}:
let

  rofi = config.programs.rofi.finalPackage;
in
{

  # Adapted from:
  # A rofi powered menu to execute brightness choices.

  config.brightnessCommand = lib.mkIf config.nmasur.presets.programs.rofi.enable builtins.toString (
    pkgs.writeShellScript "brightness" ''

      dimmer="󰃝"
      medium="󰃟"
      brighter="󰃠"

      chosen=$(printf '%s;%s;%s\n' \
          "$dimmer" \
          "$medium" \
          "$brighter" \
          | ${lib.getExe rofi} \
              -theme-str '@import "brightness.rasi"' \
              -hover-select \
              -me-select-entry ''' \
              -me-accept-entry MousePrimary \
              -dmenu \
              -sep ';' \
              -selected-row 1)


      case "$chosen" in
          "$dimmer")
              ${lib.getExe pkgs.ddcutil} --display 1 setvcp 10 25; ${pkgs.ddcutil}/bin/ddcutil --disable-dynamic-sleep --display 2 setvcp 10 25
              ;;

          "$medium")
              ${lib.getExe pkgs.ddcutil} --display 1 setvcp 10 75; ${pkgs.ddcutil}/bin/ddcutil --disable-dynamic-sleep --display 2 setvcp 10 75
              ;;

          "$brighter")
              ${lib.getExe pkgs.ddcutil} --display 1 setvcp 10 100; ${pkgs.ddcutil}/bin/ddcutil --disable-dynamic-sleep --display 2 setvcp 10 100
              ;;

          *) exit 1 ;;
      esac

    ''
  );
}