From 865728068c965e066d0f8971c5b5ba26e12e7dce Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Thu, 24 Dec 2020 00:06:27 +0530 Subject: Adds scripts and links scripts and wallpapers --- scripts/menuitems.sh | 85 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100755 scripts/menuitems.sh (limited to 'scripts/menuitems.sh') diff --git a/scripts/menuitems.sh b/scripts/menuitems.sh new file mode 100755 index 0000000..92e24d4 --- /dev/null +++ b/scripts/menuitems.sh @@ -0,0 +1,85 @@ +#!/usr/bin/env bash + +volume_component() { amixer get Master | awk -F'[][]' '/dB/ {print $C}' C="$1"; } +mic_component() { amixer get Capture | awk -F'[][]' '/dB/ {print $C}' C="$1" | head -n 1; } + +playerctl_icon() { + local playstate="$(~/scripts/music/player.sh get_play_state)"; + case "$playstate" in + Paused) echo "" ;; + Playing) echo "" ;; + Stopped) echo "" ;; + *) ;; + esac +} + +network_state() { + local state=$(nmcli dev show wlp5s0); + local ssid=$(echo -e "$state" | grep '^GENERAL.CONNECTION:' | sed 's/^GENERAL.CONNECTION:\s*//g'); + + [[ "$ssid" == "--" ]] && ssid=""; + + echo "$([[ -z "$ssid" ]] && echo "offline" || echo "online") ${ssid:0:12}..."; +} + +volume_icon() { volume_component 6 | sed 's/on//; s/off/🔇/'; } +mic_icon() { mic_component 6 | sed 's/on//; s/off/✖/'; } + +icon() { + case "$1" in + date) echo "" ;; + battery) echo "" ;; + music) playerctl_icon ;; + volume) echo -n "[$(mic_icon)] $(volume_icon)" ;; + brightness) echo "" ;; + network) network_state | sed 's/online//; s/idle//; s/offline/❌/' ;; + *) ;; + esac +} + +date_module() { + echo "$(icon date) $(date +"%A, %e %b - %I:%M %p")"; +} + +battery_module() { + local capacity=$(cat "/sys/class/power_supply/BAT0/capacity"); + echo "$(icon battery) $capacity%"; +} + +music_module() { + local label=$(~/scripts/music/player.sh get_label); + echo "$(icon music) $label"; +} + +brightness_module() { + echo "$(icon brightness) $(printf "%.0f%s" "$(xbacklight -get)" "%")" +} + +volume_module() { + echo "$(icon volume) $(volume_component 2)"; +} + +keymode_module() { + echo "$(~/scripts/shotkey.sh mode)"; +} + +network_module() { + echo "$(icon network)"; +} + + +get_module() { + case "$1" in + date) date_module ;; + battery) battery_module ;; + volume) volume_module ;; + music) music_module ;; + brightness) brightness_module ;; + keymode) keymode_module ;; + network) network_module ;; + esac; +} + +padding=" "; + +echo "$padding$(get_module $1)$padding"; -- cgit v1.3.1