bar.sh 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  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 '+%H:%M %a %d %b %Y') "
  48. }
  49. volume() {
  50. volume=$(pamixer --get-volume)
  51. printf "^c$black^^b$darkblue^  "
  52. printf "^c$black^^b$blue^ $volume"
  53. }
  54. while true; do
  55. [ $interval = 0 ] || [ $(($interval % 3600)) = 0 ] && updates=$(pkg_updates)
  56. interval=$((interval + 1))
  57. sleep 1 && xsetroot -name "$(volume) $(battery) $(brightness) $(cpu) $(mem) $(wlan) $(clock)"
  58. done