1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- #!/usr/bin/bash
- SAVE_FILE="${HOME}/.cache/brightness-control-cache"
- let really_notify=1
- notify-brightness() {
- ((${really_notify})) || return
- brightness="$(brightnessctl -m | sed 's/,/ /g' | awk '{print $4}' | tr -d '\n' | tr -d '%')"
- notify-send -h string:x-canonical-private-synchronous:brightness-control-sh -t 4000 -u normal -a "Brightness" -h int:value:"$brightness" "$brightness%"
- }
- save-brightness() {
- brightness="$(brightnessctl -m | sed 's/,/ /g' | awk '{print $4}' | tr -d '\n' | tr -d '%')"
- printf '%d' "${brightness}" >"${SAVE_FILE}"
- }
- restore-brightness() {
- if [ ! -e "${SAVE_FILE}" ]; then
- echo "brightness-control.sh: error: save file at \"${SAVE_FILE}\" not found" >&2
- exit 1
- fi
- brightness="$(cat "${SAVE_FILE}")"
- brightnessctl s "${brightness}%"
- }
- print-usage() {
- echo 'usage: brightness-control.sh [up|down|set|restore|display] <ammount>' 1>&2
- exit 1
- }
- if [ "$#" -lt 1 ]; then
- print-usage
- fi
- if [[ "${1}" == -n ]]; then
- really_notify=0
- shift 1
- fi
- ammount='5%'
- value='50%'
- if [ "${#}" -gt 1 ]; then
- ammount="${2}"
- value="${2}"
- fi
- case "${1}" in
- 'up')
- brightnessctl s "+${ammount}" > /dev/null
- notify-brightness
- save-brightness
- ;;
- 'down')
- brightnessctl s "${ammount}-" > /dev/null
- notify-brightness
- save-brightness
- ;;
- 'set')
- brightnessctl s "${value}" > /dev/null
- notify-brightness
- save-brightness
- ;;
- 'display')
- notify-brightness
- ;;
- 'restore')
- restore-brightness
- ;;
- *)
- print-usage
- ;;
- esac
|