On Wednesday 13 June 2007 15:11, Krzysztof Halasa wrote: > > The GPLv2 however is very clear how the end user gets the license: from > > the original author. > > I'd be surprised if it's for GPL to decide. If you choose the GPL as license, the text of the GPL are the conditions. Otherwise, the GPL would be pure nonsense (as would be any other license). > > Not from the man in the middle, from a distributor or > > kernel maintainer, who can neither add nor drop > > restrictions/permissions (and thus the special rights of a compilation > > editor are void). The author can only speak for himself, not by behalf > > of somebody else, as well as the compilation editor. > > How about derived works? > Am I free to get BSD source, incorporate it in GPL project, and release > the whole under GPL? > Sure, the original source stays BSD but I don't distribute it. Derivated work is a product of several authors, therefore each author may put different conditions on his part of the work - as long as they are compatible, it's ok. A derivated work originally under BSD, now with a patch under GPL can only be distributed under GPL, but not under BSD (because GPL requires redistribution under GPL, whereas BSD doesn't care). If you take out the patch, and revert the work to the BSD one, you are free to redistribute it under BSD. There's no point of discussing that the Linux kernel *as a whole* (as compilation) currently is under GPLv2 only, since it sais so, and a few files also explicitely say so. The whole combination is GPLv2 only, but most parts aren't. > > That's why the FSF is so strict about having each > > author stating copyright and the license conditions on the top of the > > file - nobody else can. > > I'm not sure the copyright laws define "files". Copyright law defines "work", and in terms of computer programs, source code "work" goes into files. Or patches, but patches end up distributed over several files. The nice thing about this is that you can make automatic checks about the license you actually have to fulfill. E.g. if you compile a hypothetical Linux 2.8.15.3 without ZFS and dtrace in 2009, you may end up with compiling only GPLv2-compatible code, and therefore can tivoize your system (unless you sell it to Germany, where the GPLv2 outlaws tivoizing by intent), but if you add either ZFS or dtrace, you can't. > > So my conclusion is: If you, as contributor to the Linux kernel, want > > to make clear that your work really is GPLv2 only, you have to do that > > yourself, you have to add a notice like above to files where you > > exclusively own copyright. > > I don't think the law works like that. > By default you have no rights to someone's work (file or project). > The only licence I can find with Linux is GPL v2, isn't it? Yes, and the GPLv2 sais "if the FSF releases a new version of the GPL, you may update" (section 9): " 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation." This is normal contract law (you have to say "yes" to a new M$ EULA every few months or so if you are an unlucky Windows user, and like to use their patches), contracts can change over time. The FSF is rather nice here, they say users and contributors can make choices to which contract they use. Given that the license you find with Linux is GPLv2, anyway, the comment from Linus seems to be superfluous. The license already says which version it is. But it has this upgrade option, and one possible interpretation of Linus' comment is "no, it doesn't have this update option". > And even > that wasn't stated explicite until that 2.4.0something (though there > is a consensus that the COPYING file was indeed a licence for the > whole kernel). > > Then you may have additional rights, such as those given in various > source files. > > > The rest (the majority) did not > > choose to say anything, which under the GPL regime means "any"; > > What exactly is the "GPL regime" and how is it defined by copyright > law and/or the GPL licence itself (or will of copyright holders etc.)? If I use GPL as license, I'm under "GPL regime", i.e. the terms of the GPL apply. The GPL requires that I need to speak up explicitely if I want to limit the choice of licenses - if I don't say anything, it defaults to "any GPL". This is a restriction that goes from author to user, sinde the GPL cuts away all middle-men (restrictions applied by middle-men can be reverted). If I decide to build my own compilation of Linux kernel patches* (i.e. a -bp kernel, like the -mm kernel is a different compilation of Linux kernel patches as the mainline kernel), I'm free to choose under which conditions I redistribute it, given that it's compatible with the conditions the original authors have chosen. Most of them have said nothing (other than implicitely that it's ok for them to put it under GPL, as they haven't opposed to inclusion into the Linux kernel), some have said GPLv2 or later, some say GPLv1.1 or later (e.g. the parport driver) and a few have said "GPLv2 only". Now, I may rewrite those few "GPLv2 only" files, and then I have a GPLv2-or later compatible linux-some.version-bp kernel. And into this kernel, I can add code under GPLv3 (once the GPLv3 is ready and there's code worth to add under GPLv3), which limits me to redistribute the whole thing under GPLv3. -- Bernd Paysan "If you want it done right, you have to do it yourself" http://www.jwdt.com/~paysan/