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:
1092
polybar/config.ini
Normal file
1092
polybar/config.ini
Normal file
File diff suppressed because it is too large
Load Diff
37
polybar/launch.sh
Executable file
37
polybar/launch.sh
Executable 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
|
18
polybar/scripts/dunst-notification-status.sh
Executable file
18
polybar/scripts/dunst-notification-status.sh
Executable 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
|
20
polybar/scripts/get-media-playing.sh
Executable file
20
polybar/scripts/get-media-playing.sh
Executable 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
|
13
polybar/scripts/updates-pacman-aurhelper.sh
Executable file
13
polybar/scripts/updates-pacman-aurhelper.sh
Executable 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"
|
Reference in New Issue
Block a user