The advent of Android, a Linux-based operating system, by search giant Google, has given geeks plenty of time to fulfil their secret fantasies. Thus, when companies which utilise Android deliver devices to market sans the source code - or the offer of the source - as the licensing dictates, some geeks tend to react.
Red Hat's Matthew Garrett belongs to this class. And it is his adventures with a number of the tablets that have been released in the wake of the arrival of Android that occupied the attention of those at the Business of Open Source mini-conference yesterday afternoon.
The mini-conference, organised by HP's Martin Michlmayr, is one of several that occupy the first two days of the week that comprises the 12th Australian national Linux conference.
Garrett spoke about his own experience in pushing manufacturers, who had not done so, to deliver access to source code when it was a requirement, without taking recourse to legal avenues. His advice, he said, was delivered from the perspective of a copyright holder.
He pointed out that while open source was business-friendly - re-use was not prohibited, trademark restrictions were rare, the cost (free) was difficult to beat and it was easy to modify for one's personal requirements - this did not mean that it was in the public domain.
There were licences attached to the software which were either permissive (no source redistribution needed) or copyleft (where there were redistribution requirements). Most of the software fell under one of the GPL, LGPL, BSD, Apache, CDDL or MPL licences.
While code distributed under a BSD licence needed only a copyright notice and a disclaimer, some of the others were more stringent, he said. The LGPL required distribution of source code for LGPLed components; GPL code required source code for GPLed components and all derivative works.
Software licensed under the GPL version 2 - as the Linux kernel is - requires source code to be provided; else, there needs to be an offer to provide the source if requested. The GPL version 3 is stricter and requires provision of source code within 30 days.
Both the LGPL and the GPL apply to the distributor - which means that anyone who sells software under these licences becomes responsible for providing the source.
The distributors of the numerous cheap tablets in the market, all running Android or its variants, could thus be held to the same standard, Garrett said. But of a list of more than 150 such tablets which he compiled, he found that less than 20 were in compliance.
Android, he pointed out, was based on the Linux kernel (GPLv2 code), some pre-existing userland (mix of GPLv2, LGPLv2 and BSD) and a new userspace environment (under the Apache 2 licence). Each component was labelled with the appropriate licence.
A licence gave one the right to distribute; if distribution was done, then the licence had to be observed. Similarly, violating copyright was a serious business. The GPL had been tested by various bids to violate its terms and all had been settled, some with large penalties. Hence, such licences should not be taken lightly.
Garrett said he had obtained the source for the Nook tablet, sold by Barnes and Noble, by finding out who was the design contractor through an inspection of usernames and build information left in the kernel binary. It took three months of contacting various people - but he noted that the source code for the colour Nook was released in a week.