diff --git a/_desktop/_scripts/sb-emerge b/_desktop/_scripts/sb-emerge new file mode 100755 index 0000000..6bdd3fd --- /dev/null +++ b/_desktop/_scripts/sb-emerge @@ -0,0 +1,4 @@ +#!/bin/bash + +icon='\ue20f ' +[ $(pgrep -x emerge) ] && printf "$icon emerge" || printf "" diff --git a/_desktop/_scripts/sb-network b/_desktop/_scripts/sb-network new file mode 100755 index 0000000..b03596b --- /dev/null +++ b/_desktop/_scripts/sb-network @@ -0,0 +1,10 @@ +#!/bin/bash + +icon='\uf1eb ' +case "$(cat /sys/class/net/w*/operstate 2>/dev/null)" in + down) printf "$icon no wifi" ;; + up) + [ -n "$(ip address show dev wlan0 | grep 'inet ')" ] \ + && printf "$icon $(iw dev wlan0 info | grep 'ssid ' | cut -d' ' -f2-)" \ + || printf "$icon no ip" +esac diff --git a/_desktop/_scripts/sb-volume b/_desktop/_scripts/sb-volume new file mode 100755 index 0000000..95f582c --- /dev/null +++ b/_desktop/_scripts/sb-volume @@ -0,0 +1,5 @@ +#!/bin/bash + +icon='\uf028 ' +vol=$(pactl get-sink-volume @DEFAULT_SINK@ | awk -F' / ' '{print $2}' | tr -d '%') +[ $(pactl get-sink-mute @DEFAULT_SINK@ | awk -F': ' '{print $2}') = yes ] || [ "$vol" -eq 0 ] && printf "$icon mute" || printf "$icon ${vol}%%" diff --git a/_desktop/suckless/dmenu/LICENSE b/_desktop/_suckless/dmenu/LICENSE similarity index 100% rename from _desktop/suckless/dmenu/LICENSE rename to _desktop/_suckless/dmenu/LICENSE diff --git a/_desktop/suckless/dmenu/Makefile b/_desktop/_suckless/dmenu/Makefile similarity index 100% rename from _desktop/suckless/dmenu/Makefile rename to _desktop/_suckless/dmenu/Makefile diff --git a/_desktop/suckless/dmenu/README.md b/_desktop/_suckless/dmenu/README.md similarity index 100% rename from _desktop/suckless/dmenu/README.md rename to _desktop/_suckless/dmenu/README.md diff --git a/_desktop/suckless/dmenu/arg.h b/_desktop/_suckless/dmenu/arg.h similarity index 100% rename from _desktop/suckless/dmenu/arg.h rename to _desktop/_suckless/dmenu/arg.h diff --git a/_desktop/suckless/dmenu/config.def.h b/_desktop/_suckless/dmenu/config.def.h similarity index 100% rename from _desktop/suckless/dmenu/config.def.h rename to _desktop/_suckless/dmenu/config.def.h diff --git a/_desktop/suckless/dmenu/config.h b/_desktop/_suckless/dmenu/config.h similarity index 100% rename from _desktop/suckless/dmenu/config.h rename to _desktop/_suckless/dmenu/config.h diff --git a/_desktop/suckless/dmenu/config.mk b/_desktop/_suckless/dmenu/config.mk similarity index 100% rename from _desktop/suckless/dmenu/config.mk rename to _desktop/_suckless/dmenu/config.mk diff --git a/_desktop/suckless/dmenu/dmenu.1 b/_desktop/_suckless/dmenu/dmenu.1 similarity index 100% rename from _desktop/suckless/dmenu/dmenu.1 rename to _desktop/_suckless/dmenu/dmenu.1 diff --git a/_desktop/suckless/dmenu/dmenu.c b/_desktop/_suckless/dmenu/dmenu.c similarity index 100% rename from _desktop/suckless/dmenu/dmenu.c rename to _desktop/_suckless/dmenu/dmenu.c diff --git a/_desktop/suckless/dmenu/dmenu_path b/_desktop/_suckless/dmenu/dmenu_path similarity index 100% rename from _desktop/suckless/dmenu/dmenu_path rename to _desktop/_suckless/dmenu/dmenu_path diff --git a/_desktop/suckless/dmenu/dmenu_run b/_desktop/_suckless/dmenu/dmenu_run similarity index 100% rename from _desktop/suckless/dmenu/dmenu_run rename to _desktop/_suckless/dmenu/dmenu_run diff --git a/_desktop/suckless/dmenu/drw.c b/_desktop/_suckless/dmenu/drw.c similarity index 100% rename from _desktop/suckless/dmenu/drw.c rename to _desktop/_suckless/dmenu/drw.c diff --git a/_desktop/suckless/dmenu/drw.h b/_desktop/_suckless/dmenu/drw.h similarity index 100% rename from _desktop/suckless/dmenu/drw.h rename to _desktop/_suckless/dmenu/drw.h diff --git a/_desktop/suckless/dmenu/stest.1 b/_desktop/_suckless/dmenu/stest.1 similarity index 100% rename from _desktop/suckless/dmenu/stest.1 rename to _desktop/_suckless/dmenu/stest.1 diff --git a/_desktop/suckless/dmenu/stest.c b/_desktop/_suckless/dmenu/stest.c similarity index 100% rename from _desktop/suckless/dmenu/stest.c rename to _desktop/_suckless/dmenu/stest.c diff --git a/_desktop/suckless/dmenu/util.c b/_desktop/_suckless/dmenu/util.c similarity index 100% rename from _desktop/suckless/dmenu/util.c rename to _desktop/_suckless/dmenu/util.c diff --git a/_desktop/suckless/dmenu/util.h b/_desktop/_suckless/dmenu/util.h similarity index 100% rename from _desktop/suckless/dmenu/util.h rename to _desktop/_suckless/dmenu/util.h diff --git a/_desktop/suckless/st/LICENSE b/_desktop/_suckless/st/LICENSE similarity index 100% rename from _desktop/suckless/st/LICENSE rename to _desktop/_suckless/st/LICENSE diff --git a/_desktop/suckless/st/Makefile b/_desktop/_suckless/st/Makefile similarity index 100% rename from _desktop/suckless/st/Makefile rename to _desktop/_suckless/st/Makefile diff --git a/_desktop/suckless/st/README.md b/_desktop/_suckless/st/README.md similarity index 100% rename from _desktop/suckless/st/README.md rename to _desktop/_suckless/st/README.md diff --git a/_desktop/suckless/st/arg.h b/_desktop/_suckless/st/arg.h similarity index 100% rename from _desktop/suckless/st/arg.h rename to _desktop/_suckless/st/arg.h diff --git a/_desktop/suckless/st/config.def.h b/_desktop/_suckless/st/config.def.h similarity index 100% rename from _desktop/suckless/st/config.def.h rename to _desktop/_suckless/st/config.def.h diff --git a/_desktop/suckless/st/config.h b/_desktop/_suckless/st/config.h similarity index 100% rename from _desktop/suckless/st/config.h rename to _desktop/_suckless/st/config.h diff --git a/_desktop/suckless/st/config.mk b/_desktop/_suckless/st/config.mk similarity index 100% rename from _desktop/suckless/st/config.mk rename to _desktop/_suckless/st/config.mk diff --git a/_desktop/suckless/st/st.1 b/_desktop/_suckless/st/st.1 similarity index 100% rename from _desktop/suckless/st/st.1 rename to _desktop/_suckless/st/st.1 diff --git a/_desktop/suckless/st/st.c b/_desktop/_suckless/st/st.c similarity index 100% rename from _desktop/suckless/st/st.c rename to _desktop/_suckless/st/st.c diff --git a/_desktop/suckless/st/st.h b/_desktop/_suckless/st/st.h similarity index 100% rename from _desktop/suckless/st/st.h rename to _desktop/_suckless/st/st.h diff --git a/_desktop/suckless/st/st.info b/_desktop/_suckless/st/st.info similarity index 100% rename from _desktop/suckless/st/st.info rename to _desktop/_suckless/st/st.info diff --git a/_desktop/suckless/st/win.h b/_desktop/_suckless/st/win.h similarity index 100% rename from _desktop/suckless/st/win.h rename to _desktop/_suckless/st/win.h diff --git a/_desktop/suckless/st/x.c b/_desktop/_suckless/st/x.c similarity index 100% rename from _desktop/suckless/st/x.c rename to _desktop/_suckless/st/x.c diff --git a/_desktop/qtile/config.py b/_desktop/qtile/config.py index c14f407..c2d4224 100644 --- a/_desktop/qtile/config.py +++ b/_desktop/qtile/config.py @@ -1,4 +1,5 @@ import psutil +import subprocess from libqtile import bar, extension, hook, layout, widget from libqtile.config import Click, Drag, DropDown, Group, Key, Match, ScratchPad, Screen from libqtile.dgroups import simple_key_binder @@ -20,7 +21,7 @@ groups = [ "spterm", "sh -c 'BROWSER=firefox st'", on_focus_lost_hide=False, width=0.40, - height=0.50, + height=0.20, x=0.30, y=0.25, ), @@ -28,7 +29,7 @@ groups = [ "spwork", "sh -c 'BROWSER=workfx st -n work'", on_focus_lost_hide=False, width=0.40, - height=0.50, + height=0.20, x=0.30, y=0.25, ), @@ -119,42 +120,22 @@ screens = [ record_history=False, ), widget.Spacer(), - widget.Maildir( - hide_when_empty=True, - maildir_path='~/.local/share/mail/priv', - nonempty_color="#fff27f", - sub_folders=[{'label': 'priv', 'path': 'INBOX'}, {'label': 'sites', 'path': 'sites'}], - update_interval=5, + widget.GenPollText( + update_interval=0.2, + func=lambda: subprocess.check_output("sb-emerge").decode(), ), - widget.Maildir( - hide_when_empty=True, - maildir_path='~/.local/share/mail/klub', - nonempty_color="#fff27f", - total=True, - sub_folders=[{'label': 'klub', 'path': 'INBOX'}], - update_interval=5, + widget.GenPollText( + update_interval=0.2, + func=lambda: subprocess.check_output("sb-mail").decode(), ), - widget.Maildir( - hide_when_empty=True, - maildir_path='~/.local/share/mail/info', - nonempty_color="#fff27f", - total=True, - sub_folders=[{'label': 'info', 'path': 'INBOX'}], - update_interval=5, + widget.GenPollText( + update_interval=0.2, + func=lambda: subprocess.check_output("sb-volume").decode(), ), - widget.Maildir( - hide_when_empty=True, - maildir_path='~/.local/share/mail/work', - nonempty_color="#fff27f", - total=True, - sub_folders=[{'label': 'work', 'path': 'INBOX'}], - update_interval=5, + widget.GenPollText( + update_interval=0.2, + func=lambda: subprocess.check_output("sb-network").decode(), ), - widget.Wlan( - format='\uf1eb {essid}', - disconnected_message=' NO WIFI ', - ), - widget.Sep(padding=15, size_percent=60), widget.Battery( format='\uf241 {char} {percent:2.0%}', charge_char="\uf077", @@ -162,16 +143,10 @@ screens = [ full_char="\uf102", unknown_char="\uf444", ), - widget.Sep(padding=15, size_percent=60), widget.Clock( format='\uf073 [%d] %I:%M:%S %p' ), widget.Sep(padding=15, size_percent=60), - widget.PulseVolume( - emoji=True, - step=5, - update_interval=0.1, - ), widget.Systray(), ], 24,