November 15, 2011, 7:49 AM — As the mobile developer community in the Western Hemisphere rolls out of bed this morning--or just gets ready to crash, you never know--they may find a pleasant surprise waiting for them: the complete source code to the Android operating system.
Google has made the source code for Android 4.0, "Ice Cream Sandwich" (ICS) available to the public, fulfilling the promise it made to the community at large about the openness of Android.
The code is actually the version of Android that will be running inside Samsung's Galaxy Nexus, according to Google Software Engineer Jean-Baptiste Queru.
"This is actually the source code for version 4.0.1 of Android, which is the specific version that will ship on the Galaxy Nexus, the first Android 4.0 device," Queru wrote in an Android Building Google Group message yesterday afternoon. "In the source tree, you will find a device build target named 'full_maguro' that you can use to build a system image for Galaxy Nexus. Build configurations for other devices will come later."
The code is available via the git version control system, though Google's code review functionality is still unavailable.
"Unfortunately we still don't have our Gerrit code review servers back online. That remains our top priority though, and we hope to have them back soon," Queru wrote. The review.source.android.com server was taken offline in September to make sure the Gerrit systems weren't affected by the kernel.org breach. The android.git.kernel.org server was also pulled down at the time. Today, Android developers can use the Repo tool to pull the Android source code from android.googlesource.com git server.
Today's source code release makes good on a promise made by Android's development team that ICS' source code, unlike the 3.0 version of Android, Honeycomb, would be released under the conditions of the Apache Software License (ASLv2).
In March of 2011, Vice President for Engineering and head of the Android group Andy Rubin explained that because of the many new tablet-oriented features within Honeycomb, his team of developers were concerned that the source code would be ill-suited for non-tablet devices, like phones. If the code were open sourced this Spring, Rubin said in an interview with BusinessWeek, Google "couldn't prevent developers from putting the software on phones 'and creating a really bad user experience. We have no idea if it will even work on phones.'"
Later in the Spring, Google made "indefinitely" practically forever, announcing at their annual developer's conference that the Honeycomb source code would be not be released until after the release of the ICS source code. Again, Rubin emphasized that because of the half-baked nature of Honeycomb, Google didn't want to put the Android 3.0 source code out into the wild.
This decision brought out a lot of derision from Android supporters and critics alike. The supporters were upset that suddenly Android seemed to be becoming a proprietary platform. Critics used the opportunity to declare Android was in violation of open source licenses, until it was clarified that since the ASL is not a copyleft license, Google is not required to provide access to the Android source code, except for the elements (such as the Android kernel) which are licensed under the GNU Public License (GPL).
Still, even though the ASL legally permits Google to keep the Android source code to itself, it didn't win Google many friends in the broader open source community.
On Oct. 19, Android engineer Dan Morrill revealed new information in the Android Building Google group that indicated a pending release of the ICS source code.
Today that circle was closed, though there are some additional immediate questions yet to be answered for Android fans, such as the release date and price of the Galaxy Nexus within the U.S. While it is known that Verizon will be one of--if not the--U.S. carrier of the device, the date and price information have yet to be released. Speculation will likely increase with the release of the ICS source code, as many observers will see this release as a precursor to a device announcement from Samsung or Verizon.
Read more of Brian Proffitt's Open for Discussion blog and follow the latest IT news at ITworld. Drop Brian a line or follow Brian on Twitter at @TheTechScribe. For the latest IT news, analysis and how-tos, follow ITworld on Twitter and Facebook.















