From ac53c688a990c1f2820a3c329ed9e7aab7068e4e Mon Sep 17 00:00:00 2001 From: jon Date: Sun, 3 May 2026 10:53:50 -0500 Subject: [PATCH] prevent multiple instances from running --- jstat | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/jstat b/jstat index 1fd432a..556007f 100755 --- a/jstat +++ b/jstat @@ -1,5 +1,7 @@ #!/bin/bash +pgrep -x "$(basename "$0")" | grep -v $$ >/dev/null && exit 0 + xsetroot -name "Loading ..." while (true); do @@ -46,17 +48,27 @@ while (true); do # get charge percentage mouse_charge="$(upower -i $battery_name | grep percentage | awk '{print $2}')" # if the mouse is charging, set state to percentage. otherwise dont show it ("") - if [ $mouse_state == "charging" ] && [ $mouse_state != "discharging" ]; then - mouse_status="[ Mouse: $mouse_charge ]" - else - unset mouse_status - fi + #if [ $mouse_state == "charging" ] && [ $mouse_state != "discharging" ]; then + # mouse_status="[ Mouse: $mouse_charge ]" + # else + # unset mouse_status + # fi # volume up/down scripts will SIGHUP this PID # when you receive SIGHUP just run set_volume() trap set_volume SIGHUP - # final output to status bar - xsetroot -name "$mouse_status $play $vol $timedate" + + + ### weather stuff + wttr_file="/tmp/weather" + if [[ -s "$wttr_file" ]]; then + wttr=$(<"$wttr_file") + xsetroot -name "$mouse_status $play $vol $wttr $timedate" + else + # output to status bar + xsetroot -name "$mouse_status $play $vol $timedate" + fi + sleep 0.5; done