#!/bin/sh # initial configuration # sudo pacman --noconfirm -S bluez-utils pulseaudio-bluetooth pulseaudio-alsa blueman # sudo ln -vsf ${PWD}/etc/bluetooth/main.conf /etc/bluetooth/main.conf # Requires: # blueman # bluez-utils # networkmanager_dmenu (https://github.com/firecat53/networkmanager-dmenu) # btmenu (https://github.com/cdown/btmenu) grep -q 'down' /sys/class/net/w*/operstate && wifiicon="❌" [ -z "${wifiicon+var}" ] && wifiicon=$(grep "^\s*w" /proc/net/wireless | awk '{ print "🛜", int($3 * 100 / 70) "%" }') wifi=$(printf "%s %s" "${wifiicon}" "$(sed "s/down/❎/;s/up/🌐/" /sys/class/net/e*/operstate)") if [ -n "${wifi}" ]; then choice=$(printf 'bluetooth\nnetwork\nwifi' | dmenu -i -p "${wifi}") else choice=$(printf 'bluetooth\nnetwork\nwifi' | dmenu -i -p 'Connect:') fi case "${choice}" in bluetooth) [ -z "$(pgrep blueman)" ] && blueman-applet & case "$(printf 'connect\ndisable\nmanage\nnew' | dmenu -i -p 'bluetooth:')" in connect) btmenu ;; disable) sudo rkill block bluetooth ;; manage | new) $TERMINAL bluetoothctl ;; esac ;; network) networkmanager_dmenu ;; wifi) nmcli -c no d wifi list | tail -n +2 | sed 's/ \+/ /;s/Infra [0-9]*/ /g;s/WPA. .*$//;s/Mbit\/s[[:space:]]*[0-9]*/Mbit\/s/g;s/Ad-Hoc [0-9]*//g' | dmenu -i -l 20 -p Networks ;; esac