Replace Xmobar with Polybar

- Remove unneeded imports
- Move global tangle path to individual code blocks
- Add docks hook to avoid polybar when tiling
- Add dwm-style workspace cycling
- Fix keybindings to put ctrl before shift
- Reset window sizes when force re-tiling
- Add ewmhDesktopsEventHook to myEventHook for polybar integration
- Launch polybar instead of xmobar
- No tangle xmobar config and delete it
- Add polybar config from dwm with bunch of tweaks
This commit is contained in:
Sravan Balaji
2021-05-10 23:47:00 -04:00
parent 6293138f1e
commit f803927440
8 changed files with 2554 additions and 113 deletions

1092
polybar/config.ini Normal file

File diff suppressed because it is too large Load Diff

37
polybar/launch.sh Executable file
View File

@@ -0,0 +1,37 @@
#!/bin/bash
#!/bin/bash
BAR="mybar"
CONFIG="~/.xmonad/polybar/config.ini"
NUM_MONITORS=0
CONNECTED_MONITORS=$(xrandr --query | grep " connected" | cut -d" " -f1)
TRAY_POS="right"
killall -q polybar
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
rm /tmp/polybar.pids
sleep 1
for m in $CONNECTED_MONITORS; do
let "NUM_MONITORS+=1"
done
if [ $NUM_MONITORS == 1 ]; then
# Launch on only monitor w/ systray
MONITOR=$CONNECTED_MONITORS TRAY_POS=$TRAY_POS polybar --reload -c $CONFIG $BAR &
else
PRIMARY=$(xrandr --query | grep " connected" | grep "primary" | cut -d" " -f1)
OTHERS=$(xrandr --query | grep " connected" | grep -v "primary" | cut -d" " -f1)
# Launch on primary monitor w/ systray
MONITOR=$PRIMARY TRAY_POS=$TRAY_POS polybar --reload -c $CONFIG $BAR &
sleep 1
# Launch on all other monitors w/o systray
for m in $OTHERS; do
MONITOR=$m TRAY_POS=none polybar --reload -c $CONFIG $BAR &
done
fi
echo "$!" >>/tmp/polybar.pids

View File

@@ -0,0 +1,18 @@
#!/bin/bash
#!/bin/bash
# Check if dunst is running
if pgrep -x "dunst" > /dev/null
then
is_paused=$(dunstctl is-paused)
if [[ $is_paused == 'false' ]]; then
status_icon=" on"
elif [[ $is_paused == 'true' ]]; then
status_icon=" off"
fi
else
status_icon=" off"
fi
echo $status_icon

View File

@@ -0,0 +1,20 @@
#!/bin/bash
#!/usr/bin/bash
mediaStatus=$(playerctl --player=playerctld metadata 2>&1)
if [[ "$mediaStatus" == "No player could handle this command" ]]; then
echo " N/A"
else
artist=$(playerctl --player=playerctld metadata --format '{{ artist }}')
title=$(playerctl --player=playerctld metadata --format '{{ title }}')
status=$(playerctl --player=playerctld metadata --format '{{ status }}')
if [[ $status == "Paused" ]]; then
status_icon=" "
elif [[ $status == "Playing" ]]; then
status_icon=" "
fi
echo "$status_icon $artist - $title"
fi

View File

@@ -0,0 +1,13 @@
#!/bin/bash
#!/bin/sh
if ! num_updates=$(paru -Qu 2>/dev/null | wc -l); then
# if ! updates_aur=$(yay -Qum 2>/dev/null | wc -l); then
# if ! updates_aur=$(cower -u 2> /dev/null | wc -l); then
# if ! updates_aur=$(trizen -Su --aur --quiet | wc -l); then
# if ! updates_aur=$(pikaur -Qua 2> /dev/null | wc -l); then
# if ! updates_aur=$(rua upgrade --printonly 2> /dev/null | wc -l); then
num_updates=0
fi
echo "$num_updates"