{ config, pkgs, ... }: let rofi = config.home-manager.users.${config.user}.programs.rofi.finalPackage; in { # Adapted from: # A rofi powered menu to execute brightness choices. config.brightnessCommand = builtins.toString (pkgs.writeShellScript "brightness" '' dimmer="󰃝" medium="󰃟" brighter="󰃠" chosen=$(printf '%s;%s;%s\n' \ "$dimmer" \ "$medium" \ "$brighter" \ | ${rofi}/bin/rofi \ -theme-str '@import "brightness.rasi"' \ -hover-select \ -me-select-entry ''' \ -me-accept-entry MousePrimary \ -dmenu \ -sep ';' \ -selected-row 1) case "$chosen" in "$dimmer") ${pkgs.ddcutil}/bin/ddcutil --display 1 setvcp 10 25; ${pkgs.ddcutil}/bin/ddcutil --display 2 setvcp 10 25 ;; "$medium") ${pkgs.ddcutil}/bin/ddcutil --display 1 setvcp 10 75; ${pkgs.ddcutil}/bin/ddcutil --display 2 setvcp 10 75 ;; "$brighter") ${pkgs.ddcutil}/bin/ddcutil --display 1 setvcp 10 100; ${pkgs.ddcutil}/bin/ddcutil --display 2 setvcp 10 100 ;; *) exit 1 ;; esac ''); }