gnu-misc-discuss
[Top][All Lists]
Advanced

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

Re: GNU License, Again


From: mike3
Subject: Re: GNU License, Again
Date: 23 May 2007 22:34:58 -0700
User-agent: G2/1.0

On May 22, 7:01 am, address@hidden(none) (Byron Jeff) wrote:
> In article <address@hidden>,
>
>
>
>
>
> mike3  <address@hidden> wrote:
> >----- Original Message -----
> >From: "David Kastrup" <address@hidden>
> >> mike3 <address@hidden> writes:
> >> > So then if I do NOT own the GPL program, but make it a vital unique-
> >> > functionality component, however I do NOT distribute it (the GPL
> >> > program, not the non-GPL one) in a non-GPL way and only distribute
> >> > the NON-GPL components of the program (ie. the ORIGINAL) ones in the
> >> > non-GPL way (since I own it I can do whatever the heck I please),
> >> > then it is still OK, since I'm still not trying to take over or
> >> > restrict the GPL program and the GPL program is still being
> >> > distributed for free.
> >> That's not the letter of the GPL you are obeying, but some fuzzy
> >> notion of yours.  The problem here is contributory infringement: the
> >> infringement is _planned_ and _prepared_ by you with the end-assembly
> >> to be done in a mechanical way by the customer as your agent.
> >How is there the infringement when the GPL part is still distributed
> >under the GPL?
>
> Asked and answered. Your code does not function without the GPL code in
> this scenario. Therefore it's a derivative of the GPL code. So your code
> must also be distributed under the GPL.
>
> The disconnect that happens in this discussion everytime it comes up
> (which BTW is about every other day) is thinking that if you add
> something to the existing collective of code, that somehow that it's not
> a part of that collective.
>

But it seems that some GNUtians just keep saying "it only keeps
stuff that was already free, free", even though it does not -- it
makes _more_ code free.

> Let's put some concrete numbers to it to clarify. Say you start with a
> 100,000 LOC GPL fully functioning system. You write a 10 line extension
> to it. Should that 10 line extension be GPLed?
>
> I'll presume that you'll agree that it should. Feel free to argue why it
> should not if you like.
>

Perhaps, but, what about a 100,000 LOC *NON*-GPL fully
functioning system that we put a 10-line extension of *GPL*
code into? That's the scenario I'm asking about. Even if it
could do without those 10 lines of GPL code.

> Now here's your question in that context: If I distribute my 10 LOC
> extension separately from the 100,000 LOC GPL system, does my 10 LOC
> extension need to be GPLed if I distrubute the 100,000 LOC GPL system
> separately under the GPL?
>
> Separation doesn't matter. your 10 LOC system doesn't function without
> the 100,000 LOC GPL system. So it's a derivative.
>

So then why must it too be free, why must the license
require that to be free?

> So now what's the difference if you start changing the numbers? What if
> the GPL code is 1000 LOC and your system is 10,000 LOC?
>
> Note that the separation of the two really doesn't matter in either
> case. It's not relevant. The relevant issue is whether or not your code
> can function as a system independant from the GPL code. If it cannot,
> then it's derivative and it's still exactly the same as the 100,000/10
> line example given above.
>
> There is actually a lower limit specified somewhere (David, do you know
> where that is?) I'm pretty sure that I read that 10 LOC and below of GPL
> code is considered to be incidental. I think it would be an interesting
> question if a certain 10 LOC was both vital and not easily duplicated.
>
> >> It does not matter _where_ the customer will get his GPL source to do
> >> this step.  _If_ the customer manages to get a copy from the copyright
> >> holder under a more permissive license, there actually will not even
> >> be an infringement.
> >He would get the GPL source UNDER THE GPL. It's only the *NON-
> >GPL* program that does not get distributed under the GPL.
>
> You're still missing the point. The other code cannot be NON-GPLed
> because it's dependant on the GPL code. So it must also be GPLed.
>
> The customer is creating an infringing system on your behalf.
>

But what is the RATIONALE? I want to know if my understanding of
this as being a way to make additional code free is correct.

> >The non- GPL program requires the GPL program, but not the other way
> >around.
>
> BINGO! Since the new code requires the GPL code, it must be GPLed.
>
> Point. Set. Match.
>

See above. Am I right in thinking this is a mechanism to generate
additional free code?

> >> Can you explain plausibly to the court that you could reasonably have
> >> expected the customer to bargain for a copy of the GPLed software
> >> under a different license?
> >He would not have to "bargain" for any copy of the GPL program.
>
> Yes he would. You're pretty steadfast in your belief that the new code
> doesn't need to be GPLed, when in fact that it does. That's the code
> that David is talking about bargining for.
>

Maybe it does, but I am questioning the _reasoning_ behind the
license.

> >And it (the GPL program) would not have a different license -- the
> >only thing that has a different license is the non-GPL program.
>
> But it cannot have that different license. That's the problem.
>

I thought he was referring to releasing the GPL program.

> >> If you can, you are off the hook, and only your customer may be in a
> >> mess (depending on just what he did with the combined code).
>
> >> > If this is still not permitted, why not? What would be the rationale
> >> > for making the license that way? It does not seem to be to preserve
> >> > the freeness of the GPLed code, since the above scenario would still
> >> > keep it free, after all.
>
> >> The GPL is intended to guarantee the freedom of the code itself _and_
> >> descendants.
> >And the non-GPL code suddenly then becomes a "descendant" of the
> >GPL code the instant it is made dependent on the GPL code in
> >_any_ way, shape, or form?
>
> Exactly. Now you understand. Congratulations! BTW it's not suddenly.
> It's a derivative of the GPL code as long as it's dependant on it.
> To make it non dependant, you'd have to duplicate the functionality of
> the GPL code. Good luck with that endeavor.
>

Well, that's probably a trivial endeavor when said GPL code is only
like
10 lines out of a 100,000 line program.

> If making GPL code non-GPL was as simple as physically separating it
> from the GPL code, then the GPL would be totally neutered for its
> intented purpose.
>

Aha! So we've hit on the purpose then -- to CAUSE MORE CODE TO
BE FREE. Thank you. I am vindicated in my understanding then!

> Mike, you're missing the point that the GPL intends to make it trivial
> for you to make your derivative code GPL and to make any other avenue
> exceedingly difficult.
>

It's only as "difficult" as the author would choose to make it. And
"difficult" is far from the same thing as "impossible". It could be
"exceedingly" difficult, it could not be -- it depends on the author
and how lenient they are in negotiating a different license term.
And that is totally unpredictable and varies considerably from
author to author.

> There's always the simple solution of not using GPL code. It is what it
> is. No one is really asking developers who want to create non free
> solutions with free GPL code to like it.
>

Of course.

> BAJ



reply via email to

[Prev in Thread] Current Thread [Next in Thread]