bar.sh 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #!/bin/dash
  2. # ^c$var^ = fg color
  3. # ^b$var^ = bg color
  4. interval=0
  5. # load colors
  6. . ~/.config/chadwm/scripts/bar_themes/onedark
  7. cpu() {
  8. cpu_val=$(grep -o "^[^ ]*" /proc/loadavg)
  9. printf "^c$black^ ^b$green^ CPU"
  10. printf "^c$white^ ^b$grey^ $cpu_val"
  11. }
  12. pkg_updates() {
  13. updates=$(doas xbps-install -un | wc -l) # void
  14. # updates=$(checkupdates | wc -l) # arch , needs pacman contrib
  15. # updates=$(aptitude search '~U' | wc -l) # apt (ubuntu,debian etc)
  16. if [ -z "$updates" ]; then
  17. printf "^c$green^ Fully Updated"
  18. else
  19. printf "^c$red^ $updates"" updates"
  20. fi
  21. }
  22. battery() {
  23. get_capacity="$(cat /sys/class/power_supply/BAT0/capacity)"
  24. get_status="$(cat /sys/class/power_supply/BAT0/status)"
  25. if [ $get_status == 'Discharging' ]; then
  26. printf "^c$blue^  $get_capacity"
  27. else
  28. printf "^c$blue^  $get_capacity"
  29. fi
  30. }
  31. brightness() {
  32. printf "^c$red^  "
  33. printf "^c$red^%.0f\n" $(cat /sys/class/backlight/acpi_video0/brightness)
  34. }
  35. mem() {
  36. printf "^c$blue^^b$black^  "
  37. printf "^c$blue^ $(free -h | awk '/^Mem/ { print $3 }' | sed s/i//g)"
  38. }
  39. wlan() {
  40. case "$(cat /sys/class/net/wl*/operstate 2>/dev/null)" in
  41. up) printf "^c$black^ ^b$blue^ 󰤨 ^d^%s" " ^c$blue^Connected" ;;
  42. down) printf "^c$black^ ^b$blue^ 󰤭 ^d^%s" " ^c$blue^Disconnected" ;;
  43. esac
  44. }
  45. clock() {
  46. printf "^c$black^ ^b$darkblue^ 󱑆 "
  47. printf "^c$black^^b$blue^ $(date '+%I:%M %p') "
  48. }
  49. while true; do
  50. [ $interval = 0 ] || [ $(($interval % 3600)) = 0 ] && updates=$(pkg_updates)
  51. interval=$((interval + 1))
  52. sleep 1 && xsetroot -name "$(battery) $(brightness) $(cpu) $(mem) $(wlan) $(clock)"
  53. done