nix

configuration files that power my machines
Log | Files | Refs | README | LICENSE

huemenu (961B)


      1 #!/bin/bash
      2 set -euo pipefail
      3 
      4 if ! mode=$(echo -e "work\nsleep" | dmenu "$@"); then
      5 	exit 1
      6 fi
      7 [ -z "$mode" ] && exit 1
      8 
      9 if ! color=$(echo -e "relax\nconcentrate\nreading\ndimmed\nskip\noff" | dmenu "$@"); then
     10 	exit 1
     11 fi
     12 [ -z "$color" ] && exit 1
     13 
     14 brightness="skip"
     15 if [ "$color" != "off" ]; then
     16 	if ! brightness=$(seq 100 -10 10 | sed 's/$/%/' | dmenu "$@"); then
     17 		exit 1
     18 	fi
     19 	[ -z "$brightness" ] && exit 1
     20 fi
     21 
     22 case "$mode" in
     23 work) light_id=2 ;;
     24 sleep) light_id=1 ;;
     25 *)
     26 	echo "Error: Unknown mode '$mode'" >&2
     27 	exit 1
     28 	;;
     29 esac
     30 
     31 if [ "$color" = "off" ]; then
     32 	hue "$light_id" off || echo "Warning: Failed to turn off light $light_id" >&2
     33 else
     34 	if [ "$color" != "skip" ]; then
     35 		hue light "$light_id" "$color" || echo "Warning: Failed to set color '$color' for light $light_id" >&2
     36 	fi
     37 	if [ "$brightness" != "skip" ]; then
     38 		hue "$light_id" brightness "$brightness" || echo "Warning: Failed to set brightness '$brightness' for light $light_id" >&2
     39 	fi
     40 fi