Word came down from the Google-plex last Friday that the company has decided to release the source code for Google Update. Codenamed Omaha, Update is a software installer that automatically updates Google Earth, Chrome, and other Google-produced apps designed to run on Windows. The development team says they decided to release Omaha under the Apache 2.0 license in the interest of true transparency and because they "know that keeping software up to date is hard."
Hard is relative, of course. Updating software is a hard problem, but it's been more or less solved for years on Linux. The software that comes from your vendor or project repositories can be updated without headaches using tools like Zypper, Apt, or Yum without any real fuss.
Granted, a big part of this is due to open source: openSUSE, Fedora, Debian, and the rest of the distros can provide a central repository for the software that makes up the distribution because it is open source. Windows users have to get their software from too many sources to make it viable for a centralized updater.
But, I digress. It is cool to see Google releasing this as open source for other vendors and projects that might benefit from it.
It's important to note that the code is for Google Update, not Google Updater, which is part of Pack. Apparently Google is aware the names are causing a bit of confusion and they're working on clarifying the issue. "One idea would be for Google to provide a list of what Google client software gets updates using Google Update," writes Google software engineer Sorin Jianu.
Opening Omaha's code benefits developers who are trying to create their own auto-updaters, and also draws on the collective wisdom of the open source community to drive further development. As blogger Alex Russell points out, it may have at least one other consequence. "It’s huge for the Omaha team to be out in the open, particularly given how many inaccurate articles have been penned about the update system. Now you, dear user and/or journalist, can know exactly what the update system is doing all the time. It’s all right there in the code."
If you want to dig in to Omaha's source code and help build it, you'll find detailed instructions in the Developer Startup Guide. If you just want to poke around a bit without downloading anything, you can check it out right online.
Or, you know, you could run one of the many flavors of Linux and enjoy really robust package updates for almost all your apps.