Dual licencing and Squeak ENH policy

Lothar Schenk lothar.schenk at gmx.de
Tue Jan 20 12:04:48 UTC 2004


Samir Saidani wrote:

> I'm about to release new packages on squeakmap and these packages need
> to modify some squeak base classes (hence in Squeak-L) in order to
> work properly.

I am not a lawyer, either, so I reserve the right of being wrong with anything 
I tell you. ;-)

> So if they modify this classes, I guess I have to
> release all the packages under the Squeak-L, but I don't want, mainly
> because of the exportation clause.

The first distinction I think that needs to be made in the Squeak-L is between 
what is called there "Apple Software", what is called "Modified Software" and 
what is not covered there explicitly and what may be called "Third Party 
Software".

The term "Apple Software" is defined in Paragraph 1 as "the software, 
documentation and any fonts which you will receive by downloading this 
software". Of course, calling it "Apple Software" only makes sense in 
relation to software owned by apple. This is clearly the case with the 
original contributions by Apple.

The term "Modified Software" is introduced in Paragraph 2, where it says "You 
may modify and create derivative works of the Apple Software" and this is 
then called "Modified Software". A derivative work in copyright law is any 
work that incorporates pieces of another copyrighted work, for example a 
screen play based on a novel. It has to be substantially different to be 
considered a work that's copyrightable by itself. What is substantially 
different is open to question and lastly determined authoritatively only in a 
court of law on a case by case basis. I think what the Squeak-L calls a 
"modification" of the Apple Software is a work that cannot be considered to 
be substantially different to be called a derivative work.

Now, as to this "Modified Software", which includes, it should be kept in 
mind, any derivative work, it is said in Paragraph 2 that: "If the Modified 
Software contains modifications, overwrites, replacements, deletions, 
additions, or ports to new platforms of: (1) the methods of existing class 
objects or their existing relationships, or (2) any part of the virtual 
machine, then for so long as the Modified Software is distributed or 
sublicensed to others, such modified, overwritten, replaced, deleted, added 
and ported portions of the Modified Software must be made publicly available 
... at no charge under the terms set forth in Exhibit A below.

To me, there are several conclusions from that:

(1) If you make a derivative work and keep it privately to yourself (i.e. do 
not distribute or sublicense it) you need not make anything of it available, 
not even the modified portions.

(2) Not all portions of a derivative work need to be made publicly available. 
Only if your work contains modifications etc. of either the virtual machine 
or the methods of existing class objects or their relationships. And only the 
modified portions need to be made available.

(3) If your work does not modify anything in the existing VM or image, you 
need not make anything publicly available.

It is interesting to note that the terms of Exhibit A, under which you have to 
release modified portions do not refer to the export clause, indemnification 
of Apple etc. as does Squeak-L itself.

Note also, that all these clauses refer specifically to "Apple Software" and 
not "Modified Software".

What I CANNOT tell you, however, is, if "Apple Software" is to be seen as 
inclusive or exclusive of "Modified Software". I think, Andrew Greenberg 
could clear this up, for sure.

If it were inclusive, all of these clauses would still pertain to modified 
portions (but not to your own portions if you chose differently). If it were 
exclusive, they wouldn't and only Exhibit A would be pertinent.

So, Andrew, if you have the time, can you confirm or reject my understanding 
of these matters and also clarify the status of "Apple Software" vs. 
"Modified Software"?

Regards, Lothar




More information about the Squeak-dev mailing list