|
|
@@ -0,0 +1,19 @@
|
|
|
+#!/bin/bash
|
|
|
+# Adjust brightness of the focused output: internal panel via light,
|
|
|
+# external monitors via DDC/CI.
|
|
|
+# Usage: brightness.sh up|down
|
|
|
+
|
|
|
+case "$1" in
|
|
|
+ up) light_factor=1.4; ddc_op=+ ;;
|
|
|
+ down) light_factor=0.7142; ddc_op=- ;;
|
|
|
+ *) echo "Usage: $0 up|down" >&2; exit 1 ;;
|
|
|
+esac
|
|
|
+
|
|
|
+IFS=$'\t' read -r name serial < <(swaymsg -t get_outputs |
|
|
|
+ jq -r '.[] | select(.focused) | [.name, .serial] | @tsv')
|
|
|
+
|
|
|
+if [[ -z "$name" || "$name" == eDP-* ]]; then
|
|
|
+ exec light -T "$light_factor"
|
|
|
+fi
|
|
|
+
|
|
|
+exec ddcutil setvcp --sn "$serial" 10 "$ddc_op" 5 --noverify
|