1
0
Fork 0
dotfiles/common/.local/libexec/statusbar/sb-ip

16 lines
542 B
Bash
Executable file

#!/bin/sh
. libsb
cache="${XDG_CACHE_HOME:-$HOME/.cache}/geoip"
# loc_addr="$(ip route get 9.9.9.9 | awk 'NR==1 {print $7}')"
pub_addr="$(curl -s ipv4.icanhazip.com 2>/dev/null)"
location="$(awk -F: -v ip="$pub_addr" '$1==ip {print $2}' "$cache")"
[ -z "$location" ] && {
location="$(curl -s "https://reallyfreegeoip.org/json/${pub_addr}" | jq -r '.country_name')"
echo "${pub_addr}:${location}" >>"$cache"
}
flag="$(awk -v loc="$location" '$0 ~ loc {print $1}' "${XDG_DATA_HOME:-$HOME/.local/share}/emoji")"
echo "${flag} ${pub_addr}"