Tuesday, September 05, 2006

GPL May Be Tested in Israeli Court

A GPL dispute appears to be headed towards the courts in Israel. The dispute is over a Java client for chess servers. The original author of the program Jin is challenging the use of their OSS software in the creation of IChessU, a for-profit entity.

From I can make out, Jin's creator Alexander Maryanovsky's problem with IChessU is that while IChessU has utilized Jin's code, they are not distributing Jin's entire source code. An A/V module in Jin is not being used by IChessU and therefore the source code is not included. Based on the available documentation, IChessU's Alexander Rabinovich appears to argue that they are distributing the IChessU derivative source code including the Jin code that was used.

It appears that Jin's creator feels that IChessU needs to distribute the entire Jin source code regardless of if all the code is used. From my non-legal interpretation, IChessU appears to be following the GPL license. I may not be understanding Jin's argument.

The GPL states that the derivative must be distributed with the entire source code of the derivative along with a copy of the license, which IChessU appears to be doing. The GPL also states "You may modify your copy or copies of the Program or any portion of it..."The GPL does not specify that the derivative has to distribute the entire source code of the original program.

The GPL is also clear that "any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License." A violation would occur if IChessU begins to charge for the code anything more than the cost of the physical distribution of the code. Sphere: Related Content

9 comments:

Anonymous said...

Eric,

I completely agree with you.
It seems like the GPL wasn't violated here and I think IchessU did publish the code( I downloaded it myself).

Joe Merwing

Anonymous said...

This is far more fundamental then plug-in or modules. The code IChessU distributes will not compile, portions of code required are missing. It's kind of hard to argue something is such removed that GPL doesn't apply when the code will not compile without it. But of course being the thorough person you are, I am sure you have already looked at the code.

Eric Schnell said...

Based on the documentation made publicly available, the assumption being made is the source code does not compiled because it does not contain all of the Jin components. The GPL arguement being made is that the entire Jin source code needs to be distributed even if only a potion of the code has been used. The only way to determine of IChessU has violated the GPL is to reverse engineer the client and prove it contains Jin source code than is not a part of the source being distributed, regardless if it compiles or not. That is the responsiblilty of Jin to prove, not the casual onlooker/blogger.

Anonymous said...

Well,
my company developed AV component for IChessU.
This component is a DLL with Audio/Video interfaces. JIN/IChessU client calls AV methods from DLL.
I am not quite sure if GPL should be applied for this case. Otherwise it is necessary to apply GPL for all Windows system components/DLL and other proprietary DLLs that can be implicitly called during execution of GPL program (skin modifiers, UI transformers, translators ,etc).

Anonymous said...

Eric, as I wrote to you in an email (and on Slashdot), you've got the whole thing backwards. The audio/video component is *not* in Jin - it is what IChessU added to Jin. They are not distributing the source code for the audio/video module and are thus in violation of the GPL.

To the anonymous person claiming to have written the audio/video component: you are wrong because the GPL explicitly excludes OS components:

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.


Alexander (aka Sasha) Maryanovsky.

Anonymous said...

Alexander,
as far as I understand AV component is not a mandatory part of JIN, right? And JIN successfully runs without AV component.
Moreover, I would say that AV component can be used in many other applications - not only in JIN.

What GPS says:

These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works.


Is AV component derived from existing code? No.
Is it a separate and independant module/component with interfaces that can be used by any other application?
Yes.
Then GPL statement above can't be applied.


But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.


Here is a possible weakness point as AV is distributed with GPL product.
This can resolved by separating AV component in a separate package and giving users a chance to download/use.


Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.


And here is clarification: the idea is not to publish source code for accompaning software but give a right to control the distribution and packaging of software.

I conclude that giving AV as a separate component (with separate link at webstie cleary saying that this is another component, not a partof JIN) can resolve the issue.
I also suppose that it is possible during installation process give a user visible notice/ask question regarding installation of AV component.

WBR

Anonymous said...

The question is not whether the A/V module is derived from Jin. It obviously isn't. The question is whether the IChessU Client as a whole is derived from Jin, which it is.

You seem to have misunderstood the GPL "clarification". It states that it is not meant to contest IChessU's rights to the A/V module, but to put restrictions on the distribution of the IChessU Client (which is a derivative work of Jin), namely that they are not allowed to distribute it without complying with the GPL (one of whose requirements is publishing the full source code under the GPL).

Whether putting the A/V module into a separate download or install option would "work around" the GPL, I don't know. Personally, I think it wouldn't, as the whole application is still the whole application, even when distributed by parts. Either way, it would be a violation of the spirit of the GPL, which is at best a morally bad thing to do.

That is irrelevant, however, because IChessU don't do that, and even if they start doing it now, it would not absolve them from months of knowingly infringing on my copyright.


Alexander (aka Sasha) Maryanovsky.

Eric Schnell said...

Wow. I guess I should feel flattered that my non-legal cursory overview of the issue has gained the attention of the participants.

Anonymous said...

Alex,

let me comment your post.

Whether putting the A/V module into a separate download or install option would "work around" the GPL, I don't know. Personally, I think it wouldn't, as the whole application is still the whole application, even when distributed by parts.


Well, IChessU client (and Java machine) uses different Windows components. RichEdit dialog, icons, standard Windows dialogs ("File Open"), etc. It also uses Java AWT classes (which are not GPL as you know). Following your logic it is necessary to ask for GPLing of all those components, right? Let be contineous - all mentioned above consist "whole application".


Either way, it would be a violation of the spirit of the GPL, which is at best a morally bad thing to do.


It is absolutly irrelevant to mention spirit and moral afetr goint to court. GPL text is the only document. No "moral" or "spirit" aspects will be regarded in the court.


That is irrelevant, however, because IChessU don't do that, and even if they start doing it now, it would not absolve them from months of knowingly infringing on my copyright.


If you are talking about giving of JIN source code - I would disagree with you. Can you prove in the court that somebody (except you as you have own interest) asked and didn't receive source code for the JIN?

I have more general question: why did you allow to run JIN at non-GPL Windows (or Sun) Java machine? Following GPL license Java machine is not a "system component" and there are lots of other GPL Java implementations. According to your logic every JIN uses non-GPL non-system components like RichEdit, Dialog boxes, Java classes of propriatary Java machine as well as AV component.
That actually means that you need to aware