#!/bin/bash # Adjust brightness on the most likely display device. step="${1:-+5%}" # Start with the first possible output, then refine to the most likely given an order heuristic. device="$(ls -1 /sys/class/backlight 2>/dev/null | head -n1)" for candidate in amdgpu_bl* intel_backlight acpi_video*; do if [[ -e "/sys/class/backlight/$candidate" ]]; then device="$candidate" break fi done # Set the actual brightness of the display device. brightnessctl -d "$device" set "$step" >/dev/null # Use SwayOSD to display the new brightness setting. percent=$(brightnessctl -d "$device" -m | cut -d',' -f4 | tr -d '%') swayosd-client \ --monitor "$(hyprctl monitors -j | jq -r '.[]|select(.focused==true).name')" \ --custom-icon display-brightness \ --custom-progress "$(awk -v p="$percent" 'BEGIN{printf "%.2f", p/100}')" \ --custom-progress-text "${percent}%"