waybar: organize config

This commit is contained in:
2025-08-03 23:23:59 +02:00
parent cc10c92af6
commit 25a07767cf
6 changed files with 160 additions and 745 deletions

View File

@@ -1,5 +1,5 @@
#!/bin/env bash
# shellcheck disable=SC1091
# shellcheck disable=SC1091,SC1090
# Entries in publicip.conf:
# IP_QUERY_URL: URL to query public IP of the system.
@@ -25,23 +25,24 @@ time_log="$path/publicip.log"
[ "$1" == "force" ] && rm -f "$cache_file"
[ -f "$cache_file" ] && . "$cache_file"
ip_current=$(curl -s -L "$IP_QUERY_URL" | jq -r '.ip')
ip_current=$(curl -s -L -4 "$IP_QUERY_URL" | jq -r '.ip')
[ -z "$ip_current" ] && exit 1
if [ "$ip_current" != "$CACHED_IP" ]; then
echo "$(date +%Y-%m-%dT%H:%M:%S) - IP changed: $CACHED_IP -> $ip_current" >> "$time_log"
CACHED_IP="$ip_current"
echo "$(date +%Y-%m-%dT%H:%M:%S) - IP changed: $CACHED_IP -> $ip_current" >>"$time_log"
CACHED_IP="$ip_current"
ip_info_url=${IP_INFO_URL//<ip>/$ip_current}
CACHED_CODE=$(curl -s -L "$ip_info_url" | jq -r '.country_code')
[ -z "$CACHED_CODE" ] && CACHED_CODE="N/A"
echo "CACHED_IP=$CACHED_IP" > "$cache_file"
echo "CACHED_CODE=$CACHED_CODE" >> "$cache_file"
notify-send "New Public IP detected" "New IP: $ip_current\nCountry: $CACHED_CODE"
ip_info_url=${IP_INFO_URL//<ip>/$ip_current}
CACHED_CODE=$(curl -s -L "$ip_info_url" | jq -r '.country_code')
[ -z "$CACHED_CODE" ] && CACHED_CODE="N/A"
echo "CACHED_IP=$CACHED_IP" >"$cache_file"
echo "CACHED_CODE=$CACHED_CODE" >>"$cache_file"
notify-send "New Public IP detected" "New IP: $ip_current\nCountry: $CACHED_CODE"
fi
jq -n --unbuffered --compact-output \
--arg ip "$CACHED_IP" \
--arg country "$CACHED_CODE" \
'{alt: $ip, text: $country}'
'{alt: $ip, text: $country}'