Forgot your password?
typodupeerror
GNU is Not Unix Handhelds Linux Hardware Your Rights Online

Most Android Tablets Fail At GPL Compliance 198

Posted by timothy
from the hey-man-those-are-just-like-rules dept.
polar_bear` writes "Red Hat's Matthew Garrett has been checking to see who's naughty and nice. Most Android tablet vendors? Naughty, naughty, naughty, when it comes to GPL compliance. In the current crop of Android tablets, most of the vendors flout the GPL and fail to ship source."
This discussion has been archived. No new comments can be posted.

Most Android Tablets Fail At GPL Compliance

Comments Filter:
  • Ship Source? (Score:4, Informative)

    by icebike (68054) on Friday December 31, 2010 @03:24AM (#34719696)

    They are Android. Google makes source available and the tablet vendors do too. There is no requirement to ship the source.

  • Re:Ship Source? (Score:4, Informative)

    by mjg59 (864833) on Friday December 31, 2010 @03:49AM (#34719828) Homepage

    The Google reference kernel code doesn't contain the driver code for any of these tablets, and the vast majority of them are based on SoC platforms that don't exist at all in the Google code. The tablet vendors can't simply point at the Google repositories, they're obliged to either ship the source with the devices or provide a written offer to provide the source to any third party on request.

  • Re:Ship Source? (Score:2, Informative)

    by icebike (68054) on Friday December 31, 2010 @03:51AM (#34719844)

    For that to work the company earning profits from Android must contribute to hosting the source code. If that don't do that the version of android used on the tablet might not be available when needed.

    The GPL makes no requirements as to who hosts the source code.

  • by mjg59 (864833) on Friday December 31, 2010 @04:02AM (#34719900) Homepage

    Quoting from the GPL v2 section 3(b):

    "Accompany it with a written offer, valid for at least three
    years, to give any third party, for a charge no more than your
    cost of physically performing source distribution, a complete
    machine-readable copy of the corresponding source code, to be
    distributed under the terms of Sections 1 and 2 above on a medium
    customarily used for software interchange"

    You don't have to choose that option - you can use 3(a) instead, but that means that the source has to be with the device when you sell it.

  • Re:Ship Source? (Score:5, Informative)

    by MichaelSmith (789609) on Friday December 31, 2010 @04:06AM (#34719926) Homepage Journal

    6. Conveying Non-Source Forms.

        You may convey a covered work in object code form under the terms
    of sections 4 and 5, provided that you also convey the
    machine-readable Corresponding Source under the terms of this License,
    in one of these ways:

            a) Convey the object code in, or embodied in, a physical product
            (including a physical distribution medium), accompanied by the
            Corresponding Source fixed on a durable physical medium
            customarily used for software interchange.

            b) Convey the object code in, or embodied in, a physical product
            (including a physical distribution medium), accompanied by a
            written offer, valid for at least three years and valid for as
            long as you offer spare parts or customer support for that product
            model, to give anyone who possesses the object code either (1) a
            copy of the Corresponding Source for all the software in the
            prodwuct that is covered by this License, on a durable physical
            medium customarily used for software interchange, for a price no
            more than your reasonable cost of physically performing this
            conveying of source, or (2) access to copy the
            Corresponding Source from a network server at no charge.

            c) Convey individual copies of the object code with a copy of the
            written offer to provide the Corresponding Source. This
            alternative is allowed only occasionally and noncommercially, and
            only if you received the object code with such an offer, in accord
            with subsection 6b.

            d) Convey the object code by offering access from a designated
            place (gratis or for a charge), and offer equivalent access to the
            Corresponding Source in the same way through the same place at no
            further charge. You need not require recipients to copy the
            Corresponding Source along with the object code. If the place to
            copy the object code is a network server, the Corresponding Source
            may be on a different server (operated by you or a third party)
            that supports equivalent copying facilities, provided you maintain
            clear directions next to the object code saying where to find the
            Corresponding Source. Regardless of what server hosts the
            Corresponding Source, you remain obligated to ensure that it is
            available for as long as needed to satisfy these requirements.

            e) Convey the object code using peer-to-peer transmission, provided
            you inform other peers where the object code and Corresponding
            Source of the work are being offered to the general public at no
            charge under subsection 6d.

    So say windows 8 turns out to be red hat linux with a new label on the box. For source code MSFT points back to red hat. The red hat servers melt from too much traffic and red hat restricts downloads to their own customers.

    For MSFT to satisfy the GPL they must have control over the infrastructure which delivers the source code. Otherwise they are not in compliance. They could do this by paying red hat to do it for them. They could do it themselves. Maybe google provides this service for Android. I don't know.

    Come on. We have been over this 1000 times.

  • Re:Ship Source? (Score:4, Informative)

    by julesh (229690) on Friday December 31, 2010 @04:22AM (#34719992)

    Err... that is the part that requires source code to be distributed. Read it. It specifies 4 ways that you can distribute source code:

    - on a disk supplied with the device you're shipping
    - with a written offer supplied with the device you're shipping
    - forwarding a written offer provided by somebody else (only available for noncommercial distributors)
    - providing a download *from the same location the customer downloaded the binaries*.

  • Re:Ship Source? (Score:4, Informative)

    by Anonymous Coward on Friday December 31, 2010 @04:24AM (#34720004)

    Come on, the GPL isn't the new kid on the block that nobody knows.

    From the GNU GPLv2: [gnu.org]

    3. You may copy and distribute the Program (or a work based on it,
        under Section 2) in object code or executable form under the terms of
        Sections 1 and 2 above provided that you also do one of the following:

            a) Accompany it with the complete corresponding machine-readable
                  source code, which must be distributed under the terms of
                  Sections 1 and 2 above on a medium customarily used for software
                  interchange; or,
            b) Accompany it with a written offer, valid for at least three years,
                  to give any third party, for a charge no more than your cost of
                  physically performing source distribution, a complete machine-
                  readable copy of the corresponding source code, to be distributed
                  under the terms of Sections 1 and 2 above on a medium customarily
                  used for software interchange; or,
            c) Accompany it with the information you received as to the offer to
                  distribute corresponding source code. (This alternative is
                  allowed only for noncommercial distribution and only if you
                  received the program in object code or executable form with such
                  an offer, in accord with Subsection b above.)

  • by dido (9125) <dido@@@imperium...ph> on Friday December 31, 2010 @05:24AM (#34720244)

    Ask Eben Moglen, chief legal counsel for the Free Software Foundation, how the GPL has been enforced [gnu.org] all these years.

    In approximately a decade of enforcing the GPL, I have never insisted on payment of damages to the Foundation for violation of the license, and I have rarely required public admission of wrongdoing. Our position has always been that compliance with the license, and security for future good behavior, are the most important goals. We have done everything to make it easy for violators to comply, and we have offered oblivion with respect to past faults.

    Enforcing the GPL, for the Free Software Foundation anyway, has never been about punishing the violators, as it tends to be with other copyright-related litigation, but more about getting people to comply with the license. In another speech [gnu.org], Moglen explains why there has never been a court test of the GPL, which is what you seem to be looking for:

    ...In order to defend yourself in a case in which you are infringing the freedom of free software, you have to be prepared to meet a call that I make reasonably often with my colleagues at the Foundation who are here tonight. That telephone call goes like this: "Mr. Potential Defendant, you are distributing my client's copyrighted work without permission. Please stop. And if you want to continue to distribute it, we'll help you to get back your distribution rights, which have terminated by your infringement, but you are going to have to do it the right way."

    At the moment that I make that call, the potential defendant's lawyer now has a choice. He can cooperate with us, or he can fight with us. And if he goes to court and fights with us, he will have a second choice before him. We will say to the judge, "Judge, Mr. Defendant has used our copyrighted work, copied it, modified it and distributed it without permission. Please make him stop."

    One thing that the defendant can say is, "You're right. I have no license." Defendants do not want to say that, because if they say that they lose. So defendants, when they envision to themselves what they will say in court, realize that what they will say is, "But Judge, I do have a license. It's this here document, the GNU GPL. General Public License," at which point, because I know the license reasonably well, and I'm aware in what respect he is breaking it, I will say, "Well, Judge, he had that license but he violated its terms and under Section 4 of it, when he violated its terms, it stopped working for him."

    But notice that in order to survive moment one in a lawsuit over free software, it is the defendant who must wave the GPL. It is his permission, his master key to a lawsuit that lasts longer than a nanosecond. This, quite simply, is the reason...that there has never been a court test of the GPL.

    Given this kind of legal bind, most defendants when pressed by competent GPL plaintiffs would rather comply with the license like they are supposed to than fight it out in court under those terms.

  • by TeknoHog (164938) on Friday December 31, 2010 @08:27AM (#34720776) Homepage Journal
    However, Android uses the Linux kernel, which is under GPL v2.
  • by jonbryce (703250) on Friday December 31, 2010 @08:43AM (#34720838) Homepage

    There have been tests of the GPL in court. Two I'm aware of are MySQL ab v Progress Software Corp and Busybox v Westinghouse Digital Electronics. In both cases, it was held that the GPL does work as advertised.

  • Re:Ship Source? (Score:4, Informative)

    by TheRaven64 (641858) on Friday December 31, 2010 @08:52AM (#34720890) Journal

    Some insist anything linked against the kernel libraries (making calls to the kernel) must be make source code available. But I do not believe this is the general consensus.

    It's more complex than that. Drivers do not have to be GPL'd, unless they are a derived work of the kernel. If they are not (e.g. the nVidia blob drivers), then they may be distributed under any license that you wish.

    The kernel, however, requires that anything linked to it be distributed under a GPL-compatible license. Any Linux kernel that links against things under a license that the GPL is incompatible with, is in violation of the GPL. The GPL, however, makes it clear that you do not require any license to use the code, so end users may download the Linux kernel and the nVidia drivers, link them together, and still be allowed to use the code.

    What they can't do is distribute the result. If you distribute the Linux kernel along with a GPL-incompatible driver, then you are in violation of the GPL. This means that you have no valid license to distribute the Linux kernel (unless you acquire one from all of the Linux copyright holders), and so every time you copy the kernel you are committing copyright infringement. Shipping a device with binary-only drivers and a Linux kernel is almost certainly wilful infringement, and carries a statutory penalty of up to $150K in the USA. It's probably cheaper to use FreeBSD...

  • by Fnkmaster (89084) on Friday December 31, 2010 @11:36AM (#34721828)

    Speaking as one of the Viewsonic G Tablet kernel hackers who helped push for VS to release source and has since identified and helped fix several of the critical kernel bugs, it was a non-trivial business problem to get the code.

    Malata, the hardware OEM, is Chinese and thus not subject to US or European IP law regarding things like the GPL. Viewsonic did not develop the software in house, they contracted the whole Android packaging and UI job out to a startup called Tap N Tap based in Cambridge, MA. Tap N Tap was then constrained by the confidentiality agreements they had with Viewsonic. Viewsonic didn't really have any software team on board who understood the legal issues involved and their marketing guys had to help push everything through legal with the help of the Tap N Tap guys. Furthermore, the G Tablet is apparently distributed by a company called US Worldwide under a distribution agreement of some sort with Viewsonic - so not clear that Viewsonic ever even took delivery of a single tablet themselves.

    We used Twitter to nag Viewsonic about not having released the kernel source and keep the issue in the public eye. Once they got clearance, they got the source from Tap N Tap, and posted it on the website.

    This all just happened on December 24th. So Viewsonic is still most likely working on legal compliance issues for other tablets. I'm sure if people make formal requests for source and send some nagging reminders like we did for the G Tablet, they'll release any GPLed source too - they are making an effort at least, unlike many companies.

    But it did take about a month long organized effort from the XDA Developers forums, involving call-ins to customer service, emails to top executives, and twitter posts. Much of that was simply education of people at several layers of the company about their obligations - again, their company never even touched the source code so this probably never went through their own legal people until we pushed it to them.

    The result is we were able to merge up a bunch of critical kernel bug fixes from the main NVidia Tegra 2 source tree and we now have custom kernels that support a crap-ton of new features, along with custom ROMs. And we've gotten source for basically all the drivers too and we've started improving some of them.

    No, we don't have the full source for the Tap N Tap UI stuff since Android's UI layer is Apache licensed and there's no obligation for Tap N Tap to release that code, but it doesn't affect us too much. We have the full AOSP source, the NVidia source tree, and there are so many custom launchers and stuff to work with out there that we've got several awesome ROMs released now.

    I suspect there may be similar legal/logistical issues with the other Viewsonic tablets' source code. I don't know if enough people have even bought those tablets to care enough to request source code though - if you own one, make a request to Viewsonic. Heck, their Marketing VP has an account on the XDA Developer forums now, you can PM him there.

    Also - that list is a bit misleading. Since we have the Viewsonic G Tablet kernel source, we basically have all the drivers and kernel code for all the Malata devices now, including the ZPad. In fact, Viewsonic released some of the ZPad drivers that aren't even used in the G Tablet (like the first gen ZPad resistive touchscreen driver).

    Additionally, Advent has stated that they are working to release source code for the Vega which is apparently assembled by BYD but as far as we can tell, uses most of the same components and a very similar design to the Malata ZPad. I suspect we have nearly all the drivers and patches for that in our Viewsonic release too, but I'm sure their official kernel source will be out within a few weeks regardless.

    So yeah, there are still some legal issues, but at least with the Tegra 2 devices and with most of the mainstream Western vendors, they are working their way to compliance currently.

Top Ten Things Overheard At The ANSI C Draft Committee Meetings: (2) Thank you for your generous donation, Mr. Wirth.

Working...