On 25 Oct 2003 at 18:36, Moritz Sinn wrote:
i've a question: lets say i write some software (e.g. with perl) that works web based (all you need to use that software is a proper webbrowser). now lets say i publish it under GPL. If now someone downloads the code and changes it and then puts it on his webserver so that everyone can use it there, does he have to publish the changes under GPL? I mean, its clear that if someone changes it and then pass the changed program on, he has to publish that version under GPL. but if he doesn't pass it on, if he just makes it useable, but it runs on his own webserver, is that the same? All he does is modifying the code and running that version on his public webserver.
Would be nice if someone could explain me why he has to publish it under GPL or why not.
As Ciaran has said, if his derived work does not leave the server then he isn't distributing it and thus doesn't need to release the source. I, unlike the FSF, don't see a problem with that as he couldn't give it to anyone else so there's no real risk for commercial exploitation.
If he is distributing it, he must distribute all parts of the software in source form and must attach GPL license notices unmodified etc etc. However, his extensions may not need to be also under the GPL depending on certain factors, but whatever license he does use must be compatible with GPL stipulations.
The GNU FAQ on the GPL is good on this, I'd only disagree with the GPL applying across a binary boundary (ie; I can't see why a commercial program can't use a GPL shared library).
Cheers, Niall
Niall Douglas wrote:
On 25 Oct 2003 at 18:36, Moritz Sinn wrote:
i've a question: lets say i write some software (e.g. with perl) that works web based (all you need to use that software is a proper webbrowser). now lets say i publish it under GPL. If now someone downloads the code and changes it and then puts it on his webserver so that everyone can use it there, does he have to publish the changes under GPL? I mean, its clear that if someone changes it and then pass the changed program on, he has to publish that version under GPL. but if he doesn't pass it on, if he just makes it useable, but it runs on his own webserver, is that the same? All he does is modifying the code and running that version on his public webserver.
Would be nice if someone could explain me why he has to publish it under GPL or why not.
As Ciaran has said, if his derived work does not leave the server then he isn't distributing it and thus doesn't need to release the source. I, unlike the FSF, don't see a problem with that as he couldn't give it to anyone else so there's no real risk for commercial exploitation.
If he is distributing it, he must distribute all parts of the software in source form and must attach GPL license notices unmodified etc etc. However, his extensions may not need to be also under the GPL depending on certain factors, but whatever license he does use must be compatible with GPL stipulations.
There's a license called the Affero General Public License which is basically the GPL with an added clause for distributed use, such as web scripts, which the FSF consider a free software license; as well as Apple's APSL. Debian, however, consider these licenses non-free, as the conditions are based on the use of the software, rather than redistribution.
Hi all,
Let me say that this email is quite pedantic. Treat this as a bit of diabolical advocacy.
Dé Domh, 2003-10-26 ag 00:12, scríobh Niall Douglas:
As Ciaran has said, if his derived work does not leave the server then he isn't distributing it and thus doesn't need to release the source. I, unlike the FSF, don't see a problem with that as he couldn't give it to anyone else so there's no real risk for commercial exploitation.
I don't think the FSF would see a problem with that either. What do you mean by "he couldn't give it to anyone else"?
If he is distributing it, he must distribute all parts of the software in source form and must attach GPL license notices unmodified etc etc. However, his extensions may not need to be also under the GPL depending on certain factors, but whatever license he does use must be compatible with GPL stipulations.
The GPL doesn't imply that "he must distribute all parts of the software in source form": it's perfectly fine to distribute binaries and make the source available on an FTP server somewhere, would you agree?
The original message said "someone downloads the code and changes it" so these modifications would have to be under the GPL. If the changes consisted of implementing a plug-in interface, it's possible that the same person might also write a plug-in library that would not be covered by the GPL.
Regards,
David
On 26 Oct 2003 at 12:13, David O'Callaghan wrote:
As Ciaran has said, if his derived work does not leave the server then he isn't distributing it and thus doesn't need to release the source. I, unlike the FSF, don't see a problem with that as he couldn't give it to anyone else so there's no real risk for commercial exploitation.
I don't think the FSF would see a problem with that either. What do you mean by "he couldn't give it to anyone else"?
The FSF can't have a /legal/ problem with it because the GPL permits it.
You can't distribute GPLed code without making its source available. That includes limited releases to your friends or a beta test group or anything else. It would be interesting however if the diffs from the public version were distributed alone - while it's against the spirit of the GPL and likely that diffs are a legally derived work under copyright, I don't know of a court case proving it one way or another (however, IANAL).
If he is distributing it, he must distribute all parts of the software in source form and must attach GPL license notices unmodified etc etc. However, his extensions may not need to be also under the GPL depending on certain factors, but whatever license he does use must be compatible with GPL stipulations.
The GPL doesn't imply that "he must distribute all parts of the software in source form": it's perfectly fine to distribute binaries and make the source available on an FTP server somewhere, would you agree?
Absolutely, I was speaking in general reality terms. Most Linux users I know download software in source form and build it themselves rather than rpms.
The original message said "someone downloads the code and changes it" so these modifications would have to be under the GPL. If the changes consisted of implementing a plug-in interface, it's possible that the same person might also write a plug-in library that would not be covered by the GPL.
Precisely. If you see Linus' comments on kernel modules and the long debate about whether a kernel module is a derived work or not, it's clear that an ABI boundary is considered a derivability boundary. I myself feel that a GPLed DLL can be used by a commercial program without problem - however while this gets members of the GPL cult[1] very riled, I have not met one who can point to any definitive test case history supporting that analysis. OTOH, I can't point to any either - it's yet to be decided.
Cheers, Niall
[1]: Some of you may find this term offensive. If you do, as per Ciaran's past request, don't reply to the group when telling me how wrong I am.
Niall Douglas wrote:
On 26 Oct 2003 at 12:13, David O'Callaghan wrote:
As Ciaran has said, if his derived work does not leave the server then he isn't distributing it and thus doesn't need to release the source. I, unlike the FSF, don't see a problem with that as he couldn't give it to anyone else so there's no real risk for commercial exploitation.
I don't think the FSF would see a problem with that either. What do you mean by "he couldn't give it to anyone else"?
The FSF can't have a /legal/ problem with it because the GPL permits it.
You can't distribute GPLed code without making its source available.
That's not strictly true; you can add a note offering to provide the source for anyone who requests it.
That includes limited releases to your friends or a beta test group or anything else. It would be interesting however if the diffs from the public version were distributed alone - while it's against the spirit of the GPL and likely that diffs are a legally derived work under copyright, I don't know of a court case proving it one way or another (however, IANAL).
Well, if you had a version of diff that included none of the original work in the .diff, you might be on to something.
The original message said "someone downloads the code and changes it" so these modifications would have to be under the GPL. If the changes consisted of implementing a plug-in interface, it's possible that the same person might also write a plug-in library that would not be covered by the GPL.
Precisely. If you see Linus' comments on kernel modules and the long debate about whether a kernel module is a derived work or not, it's clear that an ABI boundary is considered a derivability boundary. I myself feel that a GPLed DLL can be used by a commercial program without problem - however while this gets members of the GPL cult[1] very riled, I have not met one who can point to any definitive test case history supporting that analysis. OTOH, I can't point to any either - it's yet to be decided.
I doubt it will be tested; few companies would wish to bet their software on being proved right. Plug-ins are an unclear case; dlls in general though, I shouldn't think so - if a program can't function without a certain dll, I don't think any lawyer will have too much trouble in showing that the program is a derivative work. A lot of people try to toy with the definition of "derivative" to achieve their goals. If a program uses a library to perform a function, it, in other words, derives its ability to perform that function from the library, therefore the combined whole is a derivative of the library.
On 27 Oct 2003 at 2:34, Jimmy O'Regan wrote:
You can't distribute GPLed code without making its source available.
That's not strictly true; you can add a note offering to provide the source for anyone who requests it.
Indeed, and it was an anachronism even in 1991. Software should always come with source.
That includes limited releases to your friends or a beta test group or anything else. It would be interesting however if the diffs from the public version were distributed alone - while it's against the spirit of the GPL and likely that diffs are a legally derived work under copyright, I don't know of a court case proving it one way or another (however, IANAL).
Well, if you had a version of diff that included none of the original work in the .diff, you might be on to something.
Non-context diffs don't include the surrounding lines. However, it would be hard to prove a diff wasn't a derived work (not impossible, just hard).
I doubt it will be tested; few companies would wish to bet their software on being proved right. Plug-ins are an unclear case; dlls in general though, I shouldn't think so - if a program can't function without a certain dll, I don't think any lawyer will have too much trouble in showing that the program is a derivative work. A lot of people try to toy with the definition of "derivative" to achieve their goals. If a program uses a library to perform a function, it, in other words, derives its ability to perform that function from the library, therefore the combined whole is a derivative of the library.
Ah, but you are thinking too much in design ie; programmer's terms. Remember that a judge isn't a programmer, and while usually intelligent will not see why a program explained in terms of code using libraries is any different than that of executables running other executables.
To test this, describe precisely how linking to a shared library is any different from running an executable from the point of view of steps taken by the computer's processor.
You will find them virtually identical - from mapping disc-backed data into memory to the processor entering and exiting that binary repeatedly using defined API points.
Linking to a static library is clear - the original work ends up in the derived work and in a customised form (from the linker) to boot. A shared library however is packaged like an executable (in ELF terms, they are identical except for reloc info) and is not altered or customised by being used by multiple clients any more than an application executable image is. Most importantly, none one jot of the shared library code ends up in the client image on either Linux or Windows.
Therefore, when explaining to a judge, how can you claim an executable should be treated differently from a DLL? Any half decent lawyer would rip the opposition to shreds on this.
Of course, RMS has fixed this by making all code on a computer a derived work of the operating system (hence the OS exemption). However as Linus quite rightly points out, if someone writes a filing system for some other OS and ports it to Linux, how could it possibly be derived from Linux?
Furthermore, I think it's decidedly unhealthy for the industry for derivability to be too loose - it gets like software patents - which I personally think GNU would like if circumstances were a little different. And while I've heard rants from the GPL cult about commercial software using a GPLed DLL being equal to theft, I personally cannot see how a binary designed for general-purpose multi- client use is being stolen in this situation?
Cheers, Niall