battery.sh 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #!/usr/bin/env bash
  2. ## Author : Aditya Shakya
  3. ## Mail : adi1090x@gmail.com
  4. ## Github : @adi1090x
  5. ## Twitter : @adi1090x
  6. style="$($HOME/.config/rofi/applets/menu/style.sh)"
  7. dir="$HOME/.config/rofi/applets/menu/configs/$style"
  8. rofi_command="rofi -theme $dir/battery.rasi"
  9. ## Get data
  10. BATTERY="$(acpi | awk -F ' ' '{print $4}' | tr -d \%,)"
  11. CHARGE="$(acpi | awk -F ' ' '{print $3}' | tr -d \,)"
  12. active=""
  13. urgent=""
  14. if [[ $CHARGE = *"Charging"* ]]; then
  15. active="-a 1"
  16. ICON_CHRG=""
  17. MSG=$CHARGE
  18. elif [[ $CHARGE = *"Full"* ]]; then
  19. active="-u 1"
  20. ICON_CHRG=""
  21. MSG=$CHARGE
  22. else
  23. urgent="-u 1"
  24. ICON_CHRG=""
  25. MSG=$CHARGE
  26. fi
  27. # Discharging
  28. #if [[ $CHARGE -eq 1 ]] && [[ $BATTERY -eq 100 ]]; then
  29. # ICON_DISCHRG=""
  30. if [[ $BATTERY -ge 5 ]] && [[ $BATTERY -le 19 ]]; then
  31. ICON_DISCHRG=""
  32. elif [[ $BATTERY -ge 20 ]] && [[ $BATTERY -le 39 ]]; then
  33. ICON_DISCHRG=""
  34. elif [[ $BATTERY -ge 40 ]] && [[ $BATTERY -le 59 ]]; then
  35. ICON_DISCHRG=""
  36. elif [[ $BATTERY -ge 60 ]] && [[ $BATTERY -le 79 ]]; then
  37. ICON_DISCHRG=""
  38. elif [[ $BATTERY -ge 80 ]] && [[ $BATTERY -le 100 ]]; then
  39. ICON_DISCHRG=""
  40. fi
  41. ## Icons
  42. ICON_PMGR=""
  43. options="$ICON_DISCHRG\n$ICON_CHRG\n$ICON_PMGR"
  44. ## Main
  45. chosen="$(echo -e "$options" | $rofi_command -p "$MSG : $BATTERY%" -dmenu $active $urgent -selected-row 0)"
  46. case $chosen in
  47. $ICON_CHRG)
  48. ;;
  49. $ICON_DISCHRG)
  50. ;;
  51. $ICON_PMGR)
  52. xfce4-power-manager-settings
  53. ;;
  54. esac