Gnome Shell Weather extension displays the weather next to the clock in Gnome Shell. Unfortunately there's no GUI to configure the extension so you must manually enter the YAHOO weather ID for your city in the extension.js file.
Install Gnome Shell Weather extension
Warning: Gnome Shell extensions may cause Gnome Shell to stop working. For instance, The GNOME Shell Weather extension works fine for me under Fedora 15, but crashes the latest GNOME Shell from GIT compiled yesterday. If Gnome Shell crashes because of an extension and you can't log in, press CTRL + ALT + F2 (after the GDM login screen loads), navigate to the Gnome Shell extensions folder from the command line ("cd ~/.local/share/gnome-shell/extensions") and remove the extension that caused Gnome Shell to crash (rm -r "extension_folder"). Then press CTRL + ALT + F7 and log in. You have been warned!
Update: the GNOME SHell weather extension installation instructions changed so see this page for for how to compile it. Also, the extension now uses monochrome icons:
Update 2: GNOME Shell Weather extension can now be installed in Ubuntu from the WebUpd8 GNOME 3 PPA
Once installed, open Nautilus and navigate to ~/.local/share/gnome-shell/extensions/weather@venemo.net (.local is a hidden folder so press CTRL + H to see it), open the "extension.js" file and replace the following: "const YAHOO_ID = 'AUXX0010';" (it's on line 48 for me) with the YAHOO weather ID for your city.
To get your Yahoo ID, go to http://weather.yahoo.com/, enter your city/zip code and when you find it, look for the orange "RSS" icon on the right. Hovering this icon, you'll see your code - copy it and replace the "AUXX0010" code in the extension.js file.
In the same file (just one line above the Yahoo weather ID) you can also change the temperature units - look for "const UNITS = 'c';".
After you finish editing the extension.js file, save it and reload Gnome Shell or log out and log back in.
Browse our Gnome Shell extensions tag for more extensions.
Thanks to rAX for the tip!