diff options
Diffstat (limited to 'ar/.local/bin/statusbar')
| -rwxr-xr-x | ar/.local/bin/statusbar/sb-clock | 2 | ||||
| -rwxr-xr-x | ar/.local/bin/statusbar/sb-internet | 52 | ||||
| -rwxr-xr-x | ar/.local/bin/statusbar/sb-keyboard | 4 | ||||
| -rwxr-xr-x | ar/.local/bin/statusbar/sb-repos | 2 |
4 files changed, 50 insertions, 10 deletions
diff --git a/ar/.local/bin/statusbar/sb-clock b/ar/.local/bin/statusbar/sb-clock index a5992a5..d909326 100755 --- a/ar/.local/bin/statusbar/sb-clock +++ b/ar/.local/bin/statusbar/sb-clock @@ -1,7 +1,7 @@ #!/bin/sh # Get current hour and minute -calendar="🗓️" +calendar="🗓" hour=$(date '+%I') minute=$(date '+%M') diff --git a/ar/.local/bin/statusbar/sb-internet b/ar/.local/bin/statusbar/sb-internet index df43676..baa5ebd 100755 --- a/ar/.local/bin/statusbar/sb-internet +++ b/ar/.local/bin/statusbar/sb-internet @@ -4,34 +4,74 @@ # Show 🌐 if connected to ethernet or ❎ if none. # Show 🛰️ if a vpn connection is active +eth_con="$(nmcli -t -f NAME,TYPE,DEVICE connection show | + awk -F: '$2=="ethernet" && $3!="" { print $1; exit }')" + +wifi_con="$(nmcli -t -f NAME,TYPE connection show | + awk -F: '$2=="wifi" { print $1; exit }')" + +if [ -n "$eth_con" ]; then + nmcli connection modify "$eth_con" ipv4.method auto + nmcli connection modify "$eth_con" ipv4.never-default no + nmcli connection modify "$eth_con" ipv4.dns-priority -42 + nmcli connection modify "$eth_con" ipv4.route-metric 100 + nmcli connection modify "$eth_con" connection.autoconnect yes +fi + +if [ -n "$wifi_con" ]; then + nmcli connection modify "$wifi_con" ipv4.dns-priority 100 + nmcli connection modify "$wifi_con" ipv4.route-metric 600 +fi + case $BLOCK_BUTTON in 1) "$TERMINAL" -e nmtui pkill -RTMIN+7 dwmblocks ;; +2) + wifi_dev="$(nmcli -t -f DEVICE,TYPE device | + awk -F: '$2=="wifi" { print $1; exit }')" + + wifi_state="$(nmcli -t -f DEVICE,STATE device | + awk -F: -v dev="$wifi_dev" '$1==dev { print $2 }')" + + if [ "$wifi_state" = "connected" ]; then + nmcli radio wifi off + notify-send "Wi-Fi" "Wi-Fi disconnected" + else + nmcli radio wifi on + notify-send "Wi-Fi" "Wi-Fi connected" + fi + + pkill -RTMIN+7 dwmblocks + ;; 3) notify-send "🌐 Internet module" "\- Left click to connect ❌: wifi disabled 📡: no wifi connection 🛜: wifi connection with quality ❎: no ethernet 🌐: ethernet working -🛰️: vpn is active +🛰: vpn is active " ;; 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; esac # Wifi -if grep -q 'up' /sys/class/net/w*/operstate; then - wifiicon="$(awk '/^\s*w/ { print "🛜" int($3 * 100 / 70) "%" }' /proc/net/wireless)" -elif grep -q 'down' /sys/class/net/w*/operstate; then - grep -q '0x1003' /sys/class/net/w*/flags && wifiicon="📡" || wifiicon="❌" +if grep -q 'up' /sys/class/net/w*/operstate 2>/dev/null; then + if grep -q '^\s*w' /proc/net/wireless; then + wifiicon="$(awk '/^\s*w/ { print "🛜" int($3 * 100 / 70) "%" }' /proc/net/wireless)" + else + wifiicon="📡" + fi +elif grep -q 'down' /sys/class/net/w*/operstate 2>/dev/null; then + wifiicon="❌" fi # Ethernet grep -q 'up' /sys/class/net/e*/operstate && ethericon="🌐" || ethericon="❎" # TUN -[ -n "$(cat /sys/class/net/tun*/operstate 2>/dev/null)" ] && tunicon="🛰️" +grep -q 'up' /sys/class/net/tun*/operstate 2>/dev/null && tunicon="🛰" icons="" [ -n "$wifiicon" ] && icons="${icons}$wifiicon " diff --git a/ar/.local/bin/statusbar/sb-keyboard b/ar/.local/bin/statusbar/sb-keyboard index 34fa2bc..67b5f6d 100755 --- a/ar/.local/bin/statusbar/sb-keyboard +++ b/ar/.local/bin/statusbar/sb-keyboard @@ -5,7 +5,7 @@ case $BLOCK_BUTTON in 1) fcitx5-remote -t && kill -44 "$(pidof "${STATUSBAR:-dwmblocks}")" ;; 2) remaps ;; -3) notify-send "⌨️ Input Method module" "\- Shows current input method (defalt US) +3) notify-send "⌨ Input Method module" "\- Shows current input method (defalt US) - Left click to switch language (EN/KO) - Middle click to change keyboard" ;; 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; @@ -28,4 +28,4 @@ hangul) lang="KO" ;; *) lang="??" ;; esac -echo "⌨️$lang" +echo "⌨$lang" diff --git a/ar/.local/bin/statusbar/sb-repos b/ar/.local/bin/statusbar/sb-repos index 2c259ba..d5acfac 100755 --- a/ar/.local/bin/statusbar/sb-repos +++ b/ar/.local/bin/statusbar/sb-repos @@ -9,7 +9,7 @@ private_repos="$HOME/Private/repos" public_repos="${XDG_PUBLICSHARE_DIR:-${HOME}/Public}/repos" # Icon indicators -dotfiles_icon="⚙️" +dotfiles_icon="⚙" suckless_icon="🛠" private_icon="🏠" public_icon="🏢" |
