Yesterday, the blogosphere was abuzz that Google and Android vendors could find themselves in hot water over violation of the GPL. This mainly stems from Google’s decision back in April to not make source code for Android readily available, a decision that affected not only those parts of the OS covered under the “permissive” Apache License, but also the Linux kernel which is covered under the GPLv2, which clearly specifies that source code must be made available at the time of distribution.
When I first wrote on this story on April 5th, I expected that pressure would be put on Google and that Android would quickly be brought back into compliance with the GPL. That hasn’t happened. Pressure might have been placed on Google, I don’t know, but if so it’s done no good. Four months have passed and Android still isn’t compliant. Thankfully, it seems that era is now over, and the organizations that enforce the GPL are going to have to go after Google and all Android vendors for these violations.
Unfortunately, Google and its partners may find it’s too late to easily remedy the situation, as such violations can’t be fixed simply by saying “my bad” and releasing the source code after the fact. This was pretty much established in 2010, when Best Buy lost a lawsuit for embedding BusyBox, an open source program, without making source code available. Edward Naughton, a litigator and partner with the law firm Brown Rudnick, explained in a blog posted on August 8th:
“…In the Best Buy case, the SFC and SFLC argued that a violation of the GPLv2 immediately terminates a licensee’s right to distribute covered code and that the licensee cannot remedy its violation by providing the source code after the fact. The express permission of the relevant copyright holders is necessary to reestablish the licensee’s rights.
“Given the woeful track record of GPL compliance in the Android ecosystem, that argument would imply that almost every OEM distributing Android devices today is unlicensed, and even Google itself may not be licensed to distribute portions of the Android code.”
Indeed, if Android is found in violation of the GPL, Google and its vendors could be facing a wave of lawsuits that could kill the Android project, as reported yesterday by Fudzilla and others:
“The situation surrounding most Android OEMs could become quite uncomfortable if any Linux copyright holders driven by greed or other motives team up with copyright lawyers and enforce their rights. There are thousands of Linux kernel contributors besides Linus Torvalds.”
If this seems a little harsh, it’s not. The various versions of the GPL are our major way of assuring the survival of free software. Already Google has managed to make Android seem like a proprietary OS, by adding Apache licensed code on top of the Linux kernel, usurping the very spirit of the GPL. On August 4, Gizmodo reported that in a study of nine popular open source applications, Android was found to be the “least free”:
“The study, done by market research firm VisionMobile, took a look at Android, Eclipse, the Linux kernel, MeeGo, Firefox, Qt, Symbian and WebKit and focused on their open governance, inclusiveness, transparency, and ease of access to source code. In the ‘open governance index’, Android finished with a measly 23 percent. It was far and away the lowest score, Android was the only open source project to score less than 58 percent (the best score was Eclipse at 84 percent).”
Although many of us take pride in the fact that Linux based Android is now the world’s most popular mobile operating system, we cannot let that pride override our commitment to free software. We must demand that those who distribute GPL’d code strictly adhere to the terms of the license. To do any less would be to jeopardize the software freedoms that many have worked hard to establish. Lenience might be offered if violations are accidental, committed because of a lack of understanding of the GPL. However, this certifiably isn’t the case here; the GPL is being willingly violated and that cannot be tolerated.
In other words, Google should be made to either comply or quit using GPL code. If they want Android to be proprietary, they can take a page from the Apple playbook and port it to one of the BSDs. Then they can do whatever they want.