bar.sh 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  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/nord
  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$green^ $updates"" updates"
  20. fi
  21. }
  22. battery() {
  23. get_capacity="$(cat /sys/class/power_supply/BAT1/capacity)"
  24. printf "^c$blue^  $get_capacity"
  25. }
  26. brightness() {
  27. printf "^c$red^  "
  28. printf "^c$red^%.0f\n" $(cat /sys/class/backlight/*/brightness)
  29. }
  30. mem() {
  31. printf "^c$blue^^b$black^  "
  32. printf "^c$blue^ $(free -h | awk '/^Mem/ { print $3 }' | sed s/i//g)"
  33. }
  34. wlan() {
  35. case "$(cat /sys/class/net/wl*/operstate 2>/dev/null)" in
  36. up) printf "^c$black^ ^b$blue^ 󰤨 ^d^%s" " ^c$blue^Connected" ;;
  37. down) printf "^c$black^ ^b$blue^ 󰤭 ^d^%s" " ^c$blue^Disconnected" ;;
  38. esac
  39. }
  40. clock() {
  41. printf "^c$black^ ^b$darkblue^ 󱑆 "
  42. printf "^c$black^^b$blue^ $(date '+%H:%M') "
  43. }
  44. while true; do
  45. [ $interval = 0 ] || [ $(($interval % 3600)) = 0 ] && updates=$(pkg_updates)
  46. interval=$((interval + 1))
  47. sleep 1 && xsetroot -name "$updates $(battery) $(brightness) $(cpu) $(mem) $(wlan) $(clock)"
  48. done