aboutsummaryrefslogtreecommitdiff
path: root/.local/bin/tsarbar_status.sh
diff options
context:
space:
mode:
Diffstat (limited to '.local/bin/tsarbar_status.sh')
-rwxr-xr-x.local/bin/tsarbar_status.sh48
1 files changed, 48 insertions, 0 deletions
diff --git a/.local/bin/tsarbar_status.sh b/.local/bin/tsarbar_status.sh
new file mode 100755
index 0000000..dce159f
--- /dev/null
+++ b/.local/bin/tsarbar_status.sh
@@ -0,0 +1,48 @@
+#! /bin/bash
+
+tsarc config -font "CommitMono:pixelsize=15"
+tsarc config -height 17
+tsarc config -bg "#000000"
+tsarc config -gap 10
+
+tsarc set ~ -text "|"
+tsarc set window -bg "#202020"
+tsarc set window -margin 25
+
+tsarc layout -left workspace -center window -right ram ~ vol ~ clock
+
+trap "pkill -P $$" INT
+
+workspace() {
+ focused_ws=`bspc query -D --names -d focused`
+ ws=`bspc query -D --names | tr '\n' ' ' | sed s/$focused_ws/$focused_ws\*/`
+ tsarc set workspace -text " $ws"
+}
+
+window_name() {
+ win_id=$(bspc query -N -n focused)
+ if [[ -n "$win_id" ]]; then
+ title=$(xtitle $win_id)
+ tsarc set window -text "$title"
+ else
+ tsarc set window -text "[...]"
+ fi
+}
+
+bspc subscribe \
+ desktop_focus desktop_add desktop_remove \
+ node_focus node_add node_remove node_transfer \
+| while read -r _; do
+ workspace
+ window_name
+done &
+
+while true; do
+ tsarc set vol -text "VOL `pactl get-sink-volume @DEFAULT_SINK@ | awk 'NR==1{printf "%s", $5}'`"
+done &
+
+while true; do
+ tsarc set clock -text "`date +"%a %b %d, %r"` "
+ tsarc set ram -text "RAM `free -m | awk 'NR==2{printf "%.2f%%", $3*100/$2}'`"
+ sleep 1
+done