[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How long is it acceptable to leave *undistributable* files in the kernel package?



@ 17/06/2004 15:14 : wrote Raul Miller :

On Thu, Jun 17, 2004 at 12:24:29PM -0300, Humberto Massa wrote:
No way. The clause #0 of the GPL is crystal clear: << a "work based on
the Program" means either the Program or any derivative work under
copyright law >> DERIVATIVE. Under copyright law.

_Not_ collective/compilation/anthology.

False dichotomy.

There's nothing preventing a collective work from being a
derivative work.

No, Raul. The law. USC17, BR copyright law, and probably every copyright law following the Geneva convention *does* such a distinction. BR copyright law specifically separates the rights of derivative works from the rights of a collective (anthology) work. I have said it before, but I will repeat:


The copyright for "the anthology" (the organization, selection and/or disposition of contents) _of_ _the_ _pristine_ kernel tree belongs to Linus Torvalds. The copyright for "the parts included in the anthology" belongs _only_ _to_ _their_ _authors_ except in the cases where some part is a derivative work of some other part.

This last case happens a lot, historically the first non-Linus patch is a derived work on the Linus-only kernel, so you have:

linux_v0 (last LinuS-only kernel) == (C) Linus Torvalds
patch_0 (first non-Linus patch) == (C) Kernel Contributor #0 + Linus Torvalds (it's a derivative work)

linux_v0p0 = linux_v0 + patch_0 [ IN THE LINUS FTP TREE ] ==>
  THE ANTHOLOGY CALLED Linux Kernel  == (C) Linus Torvalds
  THE PARTS == some parts (C) Linus Torvalds
     and other parts (C) Linus Torvalds + Kernel Contributor #0

now let's say this combined kernel accepts as-is a BSD LKM for ppp, p.ex. *and* that it's licensed GPL-compatible 2-clause-BSD/MIT/X. say Linus includes this in its kernel tree.

now we have:

linux_v0p0ppp == linux_v0 + patch_0 + ppp ===>
  THE ANTHOLOGY CALLED Linux Kernel  == (C) Linus Torvalds
  THE PARTS == some parts (C) Linus Torvalds,
     other parts (C) Regents of USC,
     and other parts (C) Linus Torvalds + Kernel Contributor #0

complicating a litlle bit more: Kernel Contributors #1, #2, and #3 patch respectively the kernel, patch_0, and ppp:

linux_v0p3ppp == linux_v0 + patch_0,1,2,3 + ppp ===>
  THE ANTHOLOGY CALLED Linux Kernel  == (C) Linus Torvalds
  THE PARTS == some parts (C) Linus Torvalds [1],
     other parts (C) Regents of USC [2],
     other parts (C) Regents of USC + Kernel Contributor #3 [3],
     other parts (C) Linus Torvalds + Kernel Contributor #2 +
        Kernel Contributor #0 [4],
     and other parts (C) Linus Torvalds + Kernel Contributor #1 [5]

[1] the untouched kernel parts
[2] the (untouched) ppp parts
[3] the patched by patch_3 ppp parts
[4] the patched by patch_0 and patch_2 kernel parts
[5] the patched by patch_1 kernel parts

Easy, huh? extrapolate for ten+ years of patching and aggregating and you'll get where we are today.

--
br,M



Reply to: