#!/usr/bin/env bash # # Read volume status in Linux set -euo pipefail IFS=$'\n\t' DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" SLEEP_INTERVAL=${SLEEP_INTERVAL:-30} while true; do current_vol_decimal=$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | sed 's/Volume: //g') if [[ "$current_vol_decimal" = *MUTED* ]]; then current_vol_percent=0 else current_vol_percent=$(bc -s <<<"$current_vol_decimal * 100") current_vol_percent=${current_vol_percent%.*} # Remove decimal fi tooltip="$(wpctl status)" tooltip=${tooltip//$'\n'/\\n} tooltip=${tooltip//$'\t'/\\t} class="" icon="" if [ $current_vol_percent -eq 0 ]; then icon="🔇" elif [ $current_vol_percent -le 50 ]; then icon="🔉" else icon="🔊" fi jq --unbuffered --compact-output <