diff options
Diffstat (limited to 'scripts/.local/bin/personal/bar/brightness')
-rwxr-xr-x | scripts/.local/bin/personal/bar/brightness | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/scripts/.local/bin/personal/bar/brightness b/scripts/.local/bin/personal/bar/brightness new file mode 100755 index 0000000..a7dbe73 --- /dev/null +++ b/scripts/.local/bin/personal/bar/brightness @@ -0,0 +1,67 @@ +#!/bin/bash + +# A script to manage screen and keyboard brightness on my machine +# Depends on: bash, brightnessctl +# By David Penkowoj, 2021/06/24 + +MTR_VALUE=15 +KBD_VALUE=1 + +SWITCH="$1" + +case $SWITCH in + "help") + printf "Possible arguments:\n" + printf "===================\n" + printf "load - loads brightness from save\n" + printf "save - saves current brightness\n" + printf "up - increases brightness by 5 percent and saves\n" + printf "down - decreases brightness by 5 percent and saves\n" + printf "smallup - increases brightness by 1 percent and saves\n" + printf "smalldown - decreases brightness by 1 percent and saves\n" + printf "status - show brightness of a device" + ;; + "load") + brightnessctl --device='intel_backlight' set "$MTR_VALUE%" + brightnessctl --device='smc::kbd_backlight' set 0 # "$KBD_VALUE%" + ;; + "save") + M="$(brightnessctl --device='intel_backlight' | grep -Eo "[0-9]+" | head -n 2 | tail -n 1)" + K="$(brightnessctl --device='smc::kbd_backlight' | grep -Eo "[0-9]+" | head -n 2 | tail -n 1)" + sed -i "s/MTR_VALUE=$MTR_VALUE/MTR_VALUE=$M/g" "$0" + sed -i "s/KBD_VALUE=$KBD_VALUE/KBD_VALUE=$K/g" "$0" + ;; + "smalldown") + if [[ "$2" = "monitor" ]]; then brightnessctl --device='intel_backlight' set 1-%; fi + if [[ "$2" = "keyboard" ]]; then brightnessctl --device='smc::kbd_backlight' set 1-%; fi + brightness save + ;; + "smallup") + if [[ "$2" = "monitor" ]]; then brightnessctl --device='intel_backlight' set +1%; fi + if [[ "$2" = "keyboard" ]]; then brightnessctl --device='smc::kbd_backlight' set +1%; fi + brightness save + ;; + "down") + if [[ "$2" = "monitor" ]]; then brightnessctl --device='intel_backlight' set 5-%; fi + if [[ "$2" = "keyboard" ]]; then brightnessctl --device='smc::kbd_backlight' set 5-%; fi + brightness save + ;; + "up") + if [[ "$2" = "monitor" ]]; then brightnessctl --device='intel_backlight' set +5%; fi + if [[ "$2" = "keyboard" ]]; then brightnessctl --device='smc::kbd_backlight' set +5%; fi + brightness save + ;; + "get") + M="$(brightnessctl --device='intel_backlight' | grep -Eo "[0-9]+" | head -n 2 | tail -n 1)" + K="$(brightnessctl --device='smc::kbd_backlight' | grep -Eo "[0-9]+" | head -n 2 | tail -n 1)" + if [[ "$2" = "monitor" ]]; then echo "$M%"; fi + if [[ "$2" = "keyboard" ]]; then echo "$K%"; fi + ;; + *) + printf "Monitor:\n" + brightnessctl --device='intel_backlight' | tail -n 3 | sed 's/\t/- /g' + printf "Keyboard:\n" + brightnessctl --device='smc::kbd_backlight' | tail -n 3 | sed 's/\t/- /g' + ;; +esac + |