Google has frequently flaunted the openness of its own Android platform. The openness of the platform is one of the main reasons it has attracted many geeks - the ability to modify and run your own software is something that other platforms like iOS and Windows Phone 7 cannot provide.
Last year, the then Apple CEO Steve Jobs questioned Google's claim of Android being open. Andy Rubin, the Android Chief at Google, replied with this tweet:
the definition of open: "mkdir android ; cd android ; repo init -u git://android.git.kernel.org/platform/manifest.git ; repo sync ; make"
In plain speak, those is the commands required to download the Android source code and compile it yourself.
However, after the launch of Android 3.0 "Honeycomb", Google refused to release the source code. They have not released the source code of any of the subsequent updates to Honeycomb. By Rubin's own definition, Android is no longer open.
The reason Google provided for not releasing the source code of Honeycomb is that they are not yet satisfied with the Honeycomb code. This led to many questioning the real motive of Google - and if the Android's much flaunted openness is just an illusion. The fact that the phone manufacturers have started shipping devices with locked bootloader did not help the matter.
Back in July, I raised these very issues - especially the issue with the handset manufacturers locking down the boot loader - with Richard Stallman, the founder of the Free Software Foundation and the GNU Foundation. Stallman, wrote back to me that while that while Google is not breaking the GPL because they release the Linux kernel, he was not sure about the other issues.
I think that they do post the source code of Linux -- just not the rest of Android. But it is hard for me to be sure. All I know is what people report to me.
It looks like Stallman has decided to take a closer look at Android since then. In an article for The Guardian published today, Stallman is questioning if Android is really free software as claimed by Google.
In the article, he said that even though Google has released the source code of the kernel, as required by the GPL, the fact that they have no intention of releasing the part under the Apache License means that Android 3 is not a free software.
Google has complied with the requirements of the GNU General Public License for Linux, but the Apache license on the rest of Android does not require source release. Google has said it will never publish the source code of Android 3.0 (aside from Linux), even though executables have been released to the public. Android 3.1 source code is also being withheld. Thus, Android 3, apart from Linux, is non-free software, pure and simple.
Stallman also raised the issue about the handset manufacturers locking down their device to make sure that only their codes run on the hardware. Many Android handset manufacturers, currently does this. They ship their device with locked boot loader so that custom ROMs will not boot.
Some device models are designed to stop users from installing and using modified software. In that situation, the executables are not free even if they were made from sources that are free and available to you.
Stallman concludes by saying that Android is major step for free-software on phones - but right now, it does not respect the users' software freedom.
Android is a major step towards an ethical, user-controlled, free-software portable phone, but there is a long way to go. Even though the Android phones of today are considerably less bad than Apple or Windows smartphones, they cannot be said to respect your freedom.
Do you agree with Stallman's assessment of Android? Let us know your views in the comments.