archey-osx icon indicating copy to clipboard operation
archey-osx copied to clipboard

eth0.me is down

Open btywoniuk opened this issue 8 years ago • 6 comments

eth0.me is down which makes archey to load with big delay

btywoniuk avatar Dec 28 '16 15:12 btywoniuk

same. output ⇒ % curl: (7) Failed to connect to eth0.me port 80: Operation timed out % ifconfig: interface eth0(.me) does not exist

mnlwsn avatar Dec 30 '16 03:12 mnlwsn

Suggestion for an alternative site: IPv4: curl 4.ifcfg.me/ip or curl 4.ipcfg.me/ip IPv6: curl 6.ifcfg.me/ip or curl 6.ipcfg.me/ip

anthony-wang avatar Jan 02 '17 14:01 anthony-wang

I switched mine to ifconfig.co

thejeffreystone avatar Jan 03 '17 15:01 thejeffreystone

Same problem here, I am using "archey -o" now but I would like to have a working option with IP address shown

lead0r avatar Jan 04 '17 11:01 lead0r

Alternatively, how about using: ip=$(dig +short myip.opendns.com @resolver1.opendns.com) in place of: ip=$(curl -sS eth0.me)

I think opendns.com has been around for a while and, now being a part of Cisco, can be expected to be around for the foreseeable future..

ginobean avatar Mar 21 '17 02:03 ginobean

Also, if the ipfile length is less than 8, maybe just delete it, since the minimum valid ip is 1.1.1.1, which has at least 8 characters in it..

Here are some changes I made to my local copy, to delete an invalid ip cache file and to use dig and myip.opendns.com over curl. Feel free to use it verbatim, if you wish..

diff --git a/scripts/archey b/scripts/archey
index 3bb1902..6019d40 100755
--- a/scripts/archey
+++ b/scripts/archey
@@ -64,12 +64,18 @@ hostname=$(hostname | sed 's/.local//g')

 if [[ "${opt_offline}" = f ]]; then
     ipfile="${HOME}/.archey-ip"
-    if [ -a "$ipfile" ] && test `find "$ipfile" -mmin -360`; then
+
+    [[ -f $ipfile ]] && iplen=$(wc -c < $ipfile)
+    # remove ipfile if it could not possibly be valid:
+    (( iplen < 8 )) && rm -f $ipfile
+
+    if [ -a "$ipfile" ] && test $(find "$ipfile" -mmin -360); then
         while read -r line; do
             ip="$line"
         done < "$ipfile"
     else
-        ip=$(curl -sS eth0.me)
+        # ip=$(curl -sS eth0.me)
+       ip=$(dig +short myip.opendns.com @resolver1.opendns.com)
         echo $ip > "$ipfile"
     fi
 fi

ginobean avatar Mar 21 '17 03:03 ginobean