Software Update Downloader

There are at least a few folks who are less than happy with Apple's decision to remove the option to download and keep updates from the Software Update application in Snow Leopard. I count myself among them.

Though the option may be gone from the GUI, however, it still exists in the command line version. Rob Griffiths solution is to use the command:

softwareupdate -d

There are a couple problems with this. The first is that the command, as listed in Mr. Griffiths article, doesn't do anything, at least not when I run it. From what I can tell the command requires the -a flag. So if you want it to actually work, it should look like:

softwareupdate -d -a

This will download everything you don't already have to a directory that the Software Update app can see (/Library/Updates). Now we're off to a more promising start.

The other problem with this method is that it doesn't offer a great deal of things you normally get with the GUI. In particular, as Pierre Igot points out, you don't get a progress indicator. Which really blows, I agree.

You also don't get prompted to install the updates once downloading has finished. To that end, I've written a little Automator Service. The service, when launched from any Services menu in any app, will prompt you to continue with this confirmation box:

Once you click OK, the download will begin. When the download is complete, the service will copy the new updates to an Updates folder at the top level your home account (~/Updates) for safe keeping.

Once copying has finished, the Software Update app will launch and ask you if you want to install the updates you just downloaded. Just install as normal. Let Software Update do its business.

In the end everything will get installed and you'll be left with copies of all the updates in your home account for later use, all with only a single download.

While I can't really offer a progress bar, I like this better than the alternatives. It more closely approximates the old "Install and Keep" Software Update method than having to go and open the Terminal and do all that stuff as individual steps. And it's almost as user-friendly, being activated from a drop-down menu, just like Software Update usually is.

So here it is. The Software Update Download service:

Software Update Download Service

Download it, unstuff it and put it in ~/Library/Services. You should be able to launch it from the Services menu in any application.

A minor disclaimer: this service has mostly worked well for me, but there was one instance in which it seems to have had troubles. In particular, it seemed to choke on the latest iWork '09 updates. This may have been a fluke, or it may have had something to do with that particular update. I honestly don't know. But if you have troubles, let me know in the comments of this article. I'll do my best to figure out what's wrong as I'm using this in my own workflow. But consider this a beta at best; it's been through minimal testing.

Also, you should be able to open the workflow up in Automator and make adjustments to the behavior if you so please. Feel free to do so and let me know about it in the comments.