PDA

View Full Version : Please Explain GPL



bongski55
05-08-2004, 05:32 AM
Let's say I modified or copied Redhat/Fedora and redistribute it with another name but refuse to give source code or details about changes I made. am I in violation of GPL?

DuckDodgers
05-08-2004, 06:18 AM
Does the GPL require that source code of modified versions be posted to the public? (http://www.gnu.org/licenses/gpl-faq.html#GPLRequireSourcePostedPublic)

The GPL does not require you to release your modified version. You are free to make modifications and use them privately, without ever releasing them. This applies to organizations (including companies), too; an organization can make a modified version and use it internally without ever releasing it outside the organization.

But if you release the modified version to the public in some way, the GPL requires you to make the modified source code available to the program's users, under the GPL.

Thus, the GPL gives permission to release the modified program in certain ways, and not in other ways; but the decision of whether to release it is up to you.

More information can be found here (http://www.gnu.org/copyleft/gpl.html#SEC3).

garyng
05-08-2004, 02:27 PM
I believe it is something like "anyone received the binary given by you has the right to access the source in order to produce it or modify it".

However, there is a grey area that I don't quite understand. Take KNOPPIX as an example, it seems that the author of it must make the source of every distribution available, even if not all of them is created by the author. Is that true ?

DuckDodgers
05-08-2004, 05:37 PM
However, there is a grey area that I don't quite understand. Take KNOPPIX as an example, it seems that the author of it must make the source of every distribution available, even if not all of them is created by the author. Is that true ?
garyng,
Do you mean the source of other distros based on knoppix like morphix, kanotix, etc.?

garyng
05-08-2004, 06:40 PM
No, I mean any distribution that include GPL codes. Say for example, if I use apt-get and build my own distribution(and I made no changes to those source that needs to be compiled). If I give this distribution to someone else, that someone else will have the right to ask me for ALL the sources that lead to that distribution.

What puzzle me is that I cannot simply tell him that 'now go to debian.org, all the source is there' but I have to keep a full set of source for all the binary packages in it because if there is anything happens to debian, the burden is on me to provide the source. That is what I read on some of the mailing list, at least.

Durand Hicks
05-08-2004, 07:58 PM
Yikes! And here I was considering to release a couple of modified patches to be applied to the mainline 2.4.26 kernel. If I have to maintain all of the sources, including the original source code as well as the modified code, that would be a major drawback as I don't have a web server and I don't know how to set up and maintain web pages/servers. I guess I'll just keep the patches to myself, but I wanted to contribute back to the kernel maintainers and have them host the modifications on their servers. Right now, the patches are in a nice small tarball, and I can email it to whomever wants it if they are willing to take full credit for the modifications and host them under the GPL license. Included is a note that details where I got the sources from and what was modified and how were they applied.

As for what these patches are, they are described as the following: the lck patchset with rmap, cpufreq, supermount, ntfs 2.1.6a and thinkpad sources integrated, and the optional asyncronous i/o patches (separated and integrated with the above so you have a choice to apply it with or without aio as you need to get an compile the libaio binaries to make use of it). I was doing this because 2.6 still feels buggy (it's not without it's problems with apm/acpi as I really must have suspend to ram on my laptop).

DuckDodgers
05-08-2004, 11:43 PM
No, I mean any distribution that include GPL codes. Say for example, if I use apt-get and build my own distribution(and I made no changes to those source that needs to be compiled). If I give this distribution to someone else, that someone else will have the right to ask me for ALL the sources that lead to that distribution.

What puzzle me is that I cannot simply tell him that 'now go to debian.org, all the source is there' but I have to keep a full set of source for all the binary packages in it because if there is anything happens to debian, the burden is on me to provide the source. That is what I read on some of the mailing list, at least.
garyng,
I have read through the GPL (http://www.fsf.org/copyleft/gpl.html#SEC1) several times and, if I understand it correctly, section 3 subsection c will be enough to satisfy requirements, as long as you distribute non commercially. I am a little confused regarding the last paragraph of section 3. I am not certain if "offering access to copy from a designated place" means the same place you obtained the source code. If I have this all wrong, oops. :oops:

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.)

The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.

garyng
05-09-2004, 05:46 AM
So it seems that if I distribute something non-commercially and it contains nothing that I compiled, I can do a "please refer to debian.org" kind of thing, according to 3c.

If I do any patches and recompile(say replace the kernel with vanilla one + patches), I need to either provide source or an offer to make the source available(for 3 years validity) meaning I need to keep the patched source for at least 3 years.

DuckDodgers
05-09-2004, 04:21 PM
So it seems that if I distribute something non-commercially and it contains nothing that I compiled, I can do a "please refer to debian.org" kind of thing, according to 3c.

If I do any patches and recompile(say replace the kernel with vanilla one + patches), I need to either provide source or an offer to make the source available(for 3 years validity) meaning I need to keep the patched source for at least 3 years.

I took the Free Software licensing quiz (http://www.gnu.org/cgi-bin/license-quiz.cgi) after reading the GPL several times and only got 2 correct. :oops:
I will definitely need to read the FAQ more closely. In light of failing the quiz so miserably, you may want to disregard my previous post. It may be best to contact gnu@gnu.org for any questions you may have regarding GPL restrictions.

garyng
05-10-2004, 05:06 AM
Thanks for the link and I seem to get the idea behind GPL(only failed the LGPL one) :-P

It pretty much confirm my worry in terms of practicing when release any modified stuff. I am the one who is obliged to provide the FULL SOURCE, not just the patch. In fact, LGPL allows me to do it that way, just the change I have made, not the original source.

So anyone interested in releasing patched work should take note, you need to keep every single source package that has been released as it can bit you if you are being asked for it, within a 3 years period from date of release.

An example, I can ask for Klaus for the full source of any particular KNOPPIX distribution that has ever come to the public(ISO images).