If, like me, you use the excellent Meteorologist toolbar application on OSX to keep track of weather in loads of different places (especially handy for travel, though I just noticed I track London, Paris, Vancouver, Kelowna, Whistler, San Francisco, Mexico City, Toronto and Amsterdam… ahem…) you were probably put out this week when it suddenly stopped working.
Normally, when this has happened in the past, it has been a problem with parsing the XML data that weather.com sends.
This time, however, it looks like weather.com has just changed DNS stuff. The server the application normally runs to get data from appears to no longer exist. If you wish to fix it, here’s a small, easy hack that will get it working again.
First back up your hosts file in case you goof up:
sudo cp /etc/hosts /etc/host.orig
use vi, nano or your favourite command line text editor
sudo vi /etc/hosts/
add the following entry at the bottom of the hosts file :
What this does
The hosts file is basically a local override for DNS, which is the internet’s address book. So, what is happening here is that the meteorologist application is looking for updates to its data from www.w3.weaher.com . However, www.w3.weather.com appears not to exist anymore. But, it appears that www.weather.com will give you the updates if you can trick your computer into getting the updates from there.
So, what you’re doing here is telling your computer to send all requests it would normally send to
18.104.22.168, which is actually the IP address of
YMMV, but this has my system updating the weather now perfectly - just in time to show me that it is going to pour with rain here in London tomorrow. ;-)
I imagine that a fix will be out from the app maintainer in a little while since it is so easy to fix in the code of the app, but this will correct the issue without hacking the source code in XCode and then recompiling the application yourself, which I imagine is a little frightening for most users.
Once the app is fixed in say 1.4.5 or whatever, to reverse what you’ve done here, just
sudo cp /etc/hosts.orig /etc/hosts
And you’re all good to go with the new application though I imagine you could leave it in place without issue.