~kris/dots

srice

e9b48d06a8541f3eda5c4db90382ab3c77183afb — Kris Yotam 2 months ago b42b72d
xprofile: systemd-aware pipewire start + blueman-applet; sb-internet: tolerate missing /proc/net/wireless
2 files changed, 15 insertions(+), 2 deletions(-)

M .config/x11/xprofile
M .local/bin/statusbar/sb-internet
M .config/x11/xprofile => .config/x11/xprofile +11 -1
@@ 30,7 30,17 @@ setfan &	# Set case fan RGB (ice blue)
eval $(echo -n "kris" | gnome-keyring-daemon --replace --unlock --components=pkcs11,secrets,ssh)
export SSH_AUTH_SOCK

autostart="mpd picom dunst unclutter pipewire wireplumber conky protonmail-bridge"
# Audio: on systemd distros (Fedora) PipeWire is socket-activated by the user
# manager -- hand-starting it steals /run/user/UID/pipewire-0 and makes
# pipewire.socket hit its start limit, killing audio. Only hand-start on
# non-systemd inits (e.g. Artix runit).
if [ -d /run/systemd/system ]; then
	systemctl --user start pipewire.socket pipewire-pulse.socket wireplumber.service 2>/dev/null
else
	for p in pipewire wireplumber; do pgrep -x "$p" >/dev/null 2>&1 || "$p" & done
fi

autostart="mpd picom dunst unclutter conky protonmail-bridge blueman-applet"

for program in $autostart; do
	pgrep -x "$program" >/dev/null 2>&1 || "$program" &

M .local/bin/statusbar/sb-internet => .local/bin/statusbar/sb-internet +4 -1
@@ 19,7 19,10 @@ esac

# Wifi
if [ "$(cat /sys/class/net/w*/operstate 2>/dev/null)" = 'up' ] ; then
	wifiicon="$(awk '/^\s*w/ { print "󰖩 ", int($3 * 100 / 70) "% " }' /proc/net/wireless)"
	# /proc/net/wireless is absent on some drivers (e.g. Asahi brcmfmac); fall
	# back to a plain wifi icon with no strength rather than erroring.
	wifiicon="$(awk '/^\s*w/ { print "󰖩 ", int($3 * 100 / 70) "% " }' /proc/net/wireless 2>/dev/null)"
	[ -z "$wifiicon" ] && wifiicon="󰖩  "
elif [ "$(cat /sys/class/net/w*/operstate 2>/dev/null)" = 'down' ] ; then
	[ "$(cat /sys/class/net/w*/flags 2>/dev/null)" = '0x1003' ] && wifiicon="󰤭  " || wifiicon="󰖪  "
fi