To whomever feels legally responsible for Mozilla's actions,
Mozilla has given me a Tablet as part of the Firefox OS Tablet
Contribution Program. Unfortunately, in the process, Mozilla has
violated the terms of the General Public License, version 2, (GPL) used
by the Linux kernel and several core libraries integrated into the
version of Firefox OS running on the device. Mozilla has failed to
fulfill either of the three conditions required by section 3 of the GPL:
http://www.gnu.org/licenses/gpl-2.0.html#section3
which requires that those distributing binaries of GPL must 'accompany'
the binary by either:
* the source code of the binary, or
* a written offer to obtain the source code, or
* 'information' provided by a previous distributor of the binary.
The quickest way to resolve this violation might be to:
1. write a web page (or extend
https://wiki.mozilla.org/FirefoxOS/TCP/Patching) which explains
how to extract from the build system the source code for the
exact build of Firefox OS which was used on the device as shipped
(i.e.whatever '1.4.0.0-prerelease' means).
2. email ( 'a written offer') all recipients of the tablets with
a link to those instructions.
Properly, a piece of paper should have been added in the tablet box with
that link, something Mozilla should ensure is done in any future
hardware give away program.
In greater depth:
The Tablet Contributor Program is distributing a hardware device running
Firefox OS which includes the Linux kernel. Therefore Mozilla is
distributing a binary of the Linux kernel software and Mozilla therefore
MUST comply with the terms of the GPL and MUST fulfill one the the three
conditions of section 3 of that license. (MUST, that is, unless Mozilla
takes the anarchist stance that software licenses are immoral and need
not be followed and Mozilla then decides to operate outside the legal
system.) The fact the tablets are given away or that Mozilla
believes itself to be working in the best interests of end users does
not alter the legal requirements of the GPL.
Section 3 of the GPL (
http://www.gnu.org/licenses/gpl-2.0.html#section3)
makes a requirement of those distributing binaries of GPL
programs (in order to guarantee the freedoms the recipients of those
programs) that the binary be 'accompanied' by either:
* the source code of the binary, or
* a written offer to obtain the source code, or
* 'information' provided by a previous distributor of the binary.
The standard way compliance with this section of the GPL is usually
ensured for devices running a Linux kernel has been to include a piece
of paper pointing to an URL where the source can be obtained. For
example, the 'Alcatel' branded device running Firefox OS which I
purchased included, in the box, a piece of paper pointing to a
Sourceforge dump of the supposed source code for Firefox OS used on the
device. Thus, the manufacturer and the telephony provider perhaps
complied with the letter of the GPL. (However, that Sourceforge
repository is missing some key files or instructions for duplicating the
build of the software, so the distributors have failed to comply with
the intent of the requirements: making it easy for the recipients of
their devices to hack on the source.)
The GPL software at the heart of Firefox OS raises a few difficulties
for those distributing Firefox OS, whether hardware manufacturers,
telephony partners, Mozilla, or hobbyist hackers. We will all run into
difficulties with the requirements of the GPL until such times as the
heavy work has been done to refactor the current build system (i.e.
properly split Gonk from the rest of the OS, fix the build system to
work on multiple operating systems, fix the build system to use shallow
clones by default, show how to use specific tags of all the projects in
the 'repo' tool build) to enable all of us comply with the requirements
of the GPL while ensuring we provide the recipients of our builds with
all the freedom to easily hack their own way forwards.
Sincerely,
Adrian Custer
P.S. This message has been sent to:
t...@mozilla.org
lice...@mozilla.org
le...@lists.mozilla.org
in hopes the message might make its way back to someone feeling
responsible. It is unclear where this message properly should be sent:
Mozilla does not offer any well publicized communication channels from
outside developers to the leaders of the TCP program, of the Firefox OS
Project, or even of the Mozilla Foundation itself.