diff --git a/neofetch b/neofetch index 1040f515..0e40cd18 100755 --- a/neofetch +++ b/neofetch @@ -1629,13 +1629,15 @@ getlocalip () { getpublicip () { if type -p dig >/dev/null 2>&1; then - publicip="$(dig +short myip.opendns.com @resolver1.opendns.com)" + publicip="$(dig +time=1 +tries=1 +short myip.opendns.com @resolver1.opendns.com 2>/dev/null)" + fi - elif type -p curl >/dev/null 2>&1; then - publicip="$(curl -w '\n' "$public_ip_host")" + if [ -z "$publicip" ] && type -p curl >/dev/null 2>&1; then + publicip="$(curl --max-time 10 -w '\n' "$public_ip_host")" + fi - elif type -p wget >/dev/null 2>&1; then - publicip="$(wget -qO- "$public_ip_host"; printf "%s")" + if [ -z "$publicip" ] && type -p wget >/dev/null 2>&1; then + publicip="$(wget -T 10 -qO- "$public_ip_host"; printf "%s")" fi }