no more commercial components for Joomla 1.5?

*IF* you want to share your opinion on the GPL issue, this is the place for you.
erickendrick
Joomla! Apprentice
Joomla! Apprentice
Posts: 38
Joined: Wed Sep 14, 2005 2:55 pm
Location: Cheshire, UK
Contact:

re: no more commercial components for Joomla 1.5?

Post by erickendrick » Mon Jul 23, 2007 1:02 pm

@MMMedia: A great few points. While a LGPL API is the solution, it needs to avoid indirectly calling the GPL code. See below - you'll need an architecture closer to the lower image than the upper one.

Image

@Asphyx:
1. I never said use equaled derivative. I'm keeping it as simple as possible but not simpler. To solve the issue we need to solve all aspects of it, but we don't need to communicate all aspects of the issue when summarising it.

2. A GPL compatible license needs to be free (as in freedom). Any license that restricts competitors is not free and will obviously never get approval by the FSF. I'd avoid suggesting there is an imaginary third category of license, one that is neither GPL compatible nor GPL incompatible. It would be highly inadvisable to pass off your license as GPL compatible if you are not confident it will be approved and are not willing to do whatever the FSF demand in order for it to be approved.

3. My analogy is fairly accurate though - most people know the difference between right and wrong. Just because there isn't enforcement doesn't make wrong things right. The Joomla announcement is along the lines of saying that they won't be sitting just behind the new speed limit sign with speed cameras, catching offenders. It's a fair announcement, but don't read into it things that aren't there.

4. "NEVER" is quite a definitive statement, please maintain perspective here. The standard response of the Linux kernel team is, if there is infringing code, we will take it out and replace it - not that it is impossible.

User avatar
Jenny
Joomla! Champion
Joomla! Champion
Posts: 6238
Joined: Sun Aug 21, 2005 2:25 pm
Contact:

Re: no more commercial components for Joomla 1.5?

Post by Jenny » Mon Jul 23, 2007 1:35 pm

Erick thanks for explaining how I see a solution much better than I ever could.  Thanks for the visual too.  I know it isn't an easy solution because complicated code is never easy.  I do think it is a very workable solution, and a solution that in the long run will be good for everyone.
Co-author of the Official Joomla! Book http://officialjoomlabook.com
Marpo Multimedia http://marpomultimedia.com

AmyStephen
Joomla! Champion
Joomla! Champion
Posts: 7056
Joined: Wed Nov 22, 2006 3:35 pm
Location: Nebraska
Contact:

re: no more commercial components for Joomla 1.5?

Post by AmyStephen » Mon Jul 23, 2007 1:40 pm

Eric -

I had a huge sigh of relief when I read your statement: "While a LGPL API is the solution, it needs to avoid indirectly calling the GPL code." and provided that graphic. I have been worried that the point you are making was not clear. That is also my understanding: extending the Joomla! CMS invokes the GPL; utilizing the Joomla! framework (presuming it gets volunteers to help build it) could take advantage of the LGPL.

Thank you very, very much for articulating (and illustrating) this clearly. Great work!

Amy :)

Asphyx
Joomla! Hero
Joomla! Hero
Posts: 2454
Joined: Sun Aug 28, 2005 5:03 pm

re: no more commercial components for Joomla 1.5?

Post by Asphyx » Mon Jul 23, 2007 2:07 pm

in regards to your illustration: The API of Joomla if LGPLed would seperate many of the interactions extentions need from the GPL parts. In a sense both the GPL and Proprietary parts could be considered derivative of the LGPL library if done correctly. This would offer the license flexability needed to protect proprietary developers. But only if the Proprietary extention limits it's linkage to the API and doesn't link to the GPL parts directly. So your correct just LGPLing the API doesn't solve ALL proprietary problems as it is still possible for some proprietary programs to attempt to link to parts of the GPL program that have not been transferred to the LGPL API yet.
1. I never said use equaled derivative. I'm keeping it as simple as possible but not simpler. To solve the issue we need to solve all aspects of it, but we don't need to communicate all aspects of the issue when summarising it.
Summary is fine as long as the summary does not generalize too much and covers every point correctly. It is wrong to say must use GPL when the tuth is GPL compatible is also allowed. We want to keep options open not limit them so much that people will say it is just impossible to solve given the limitations and give up. If we hope to find solutions we need to stay focused on the issues to be solved and not gloss over them. Summary will be quite useful once a solution is found but not during the proccess of trying to find those solutions. We need to be precise and accurate to stop the wrong impressions from being twisted and used as the basis for further FUD. It's a complex problem and simplification of any kind will cause key aspects of the solution to be missed.
2. A GPL compatible license needs to be free (as in freedom). Any license that restricts competitors is not free and will obviously never get approval by the FSF. I'd avoid suggesting there is an imaginary third category of license, one that is neither GPL compatible nor GPL incompatible. It would be highly inadvisable to pass off your license as GPL compatible if you are not confident it will be approved and are not willing to do whatever the FSF demand in order for it to be approved.
That sounds awfully defeatist of you ask me. Same type of attitude that has some developers looking to move to another CMS or shut down their projects because they feel the goal is unattainable.
I however follow the the motto, Can't means won't... and I will! If an attempt was made to create a new license that gave the freedom without the beer then if and when a court got involved in the case of license violation the first step would be to determine if this new license is compatible with the GPL. FSF would be called to describe what they hope to achieve and why they insist on verbatim distribution. They would have to make the case that verbatim distribution is needed to get that freedom and if your license. If you could show that your license gives this same freedom they are striving for you have a very good chance of having the court deem your license compatible with the GPL and the issue will be over... We will have a new compatible license that will allow some modicum of commercial model but still give you all the freedom of the GPL.
3. My analogy is fairly accurate though - most people know the difference between right and wrong. Just because there isn't enforcement doesn't make wrong things right. The Joomla announcement is along the lines of saying that they won't be sitting just behind the new speed limit sign with speed cameras, catching offenders. It's a fair announcement, but don't read into it things that aren't there.
My problem is with the notion that there is new enforcement. there is NO NEW ENFORCEMENT!
There to date has been no enforcement at all. To say there is is misleading and being used as a scare tactic to chastize and put the blame for no proprietary work being done on Joomla when the reason is that they simply want to take their ball and go home! Joomla's official statement said there would be no lawsuits. That is the message they want to get out! Lets not usurp that message by scaring developers into believing they WILL and ARE being prosecuted when not one has been prosecuted yet. Stay on the point of mesage that Joomla is trying to get out instead of making contrary statements and confusing even more people...we need clarity and unity of message in regrds to how Joomla is handling this. Let them decide on their own if the prosecution is imminent or not, but I do not want the official announcement from Joomla/OSM to be lost or minimized because someone else leaves the opposite impression. We should not be trying to scare developers that action is imminent on the part of Joomla. This is totally untrue!
By saying something that is untrue it gives someone ammo to incite more FUD by sending emails saying Joomla is now enforcing their license...Nothing of the sort is happening!
4. "NEVER" is quite a definitive statement, please maintain perspective here. The standard response of the Linux kernel team is, if there is infringing code, we will take it out and replace it - not that it is impossible.
The infringement you speak to is in regards to patented or proprietary licenses being used and in violation of those proprietary licenses...not the GPL!
You can not violate the license of any GPLed code by using a GPL license. That is the whole point of the GPL! FREEDOM to use that software in any way you see fit provided you release under the GPL license!
So Never is quite the correct statement here! a GPL program can NEVER violate a GPL license except when the copyright notices in the code have been removed or tampered with to hide the original author's credit.

User avatar
aoirthoir
Joomla! Explorer
Joomla! Explorer
Posts: 267
Joined: Wed May 02, 2007 1:18 pm
Location: Cleveland, Ohio

Re: no more commercial components for Joomla 1.5?

Post by aoirthoir » Mon Jul 23, 2007 2:09 pm

Most of them just say "commercial license" and sometimes on their site it says something about that you have to get 2 licensenses if you want to use the extension twice on one domain.
Precisely why I avoid proprietary software if I can. This is a side comment not specifically related to your thread. But, for those that think the GNU GPL is restrictive, I hope this illustrates how restrictive proprietary licenses can be, and the benefits to us all of the GNU GPL.

As I mentioned some of the team members believe that if your extension can run entirely without Joomla! it is not a derivative. While I do not think that is definitive just yet, I think that those whose products are stand alone programs, are probably safer to release their software under non-compatible licenses. If it ties into Joomla! as much as you suggest, you are definitely safe if you release it with the GNU GPL. If you wish not to, this is where your own lawyer would be helpful.

I do understand your desire to have the team examine your situation and make recommendations. I hope you understand though that there are many others that desire the same thing from the teams. Even if they were able to conclude for themselves what is and is not a derivative in specific cases, other copyright holders might disagree. In addition, the workload for them, to determine all of these cases would bring Joomla! development to a stop. If your lawyer determines that you indeed are not creating derivative programs, she may contact the lawyers for the Joomla! teams, and come to a complete and accurate conclusion, and thus make an appropriate recommendation to you.

Eric, thanks for the suggestions:)
Joseph James Frantz

User avatar
mcsmom
Joomla! Exemplar
Joomla! Exemplar
Posts: 7985
Joined: Thu Aug 18, 2005 8:43 pm
Location: New York
Contact:

Re: no more commercial components for Joomla 1.5?

Post by mcsmom » Mon Jul 23, 2007 3:18 pm

@mcsmom
in this tread you say
Quote
Am I allowed to sell extensions?
Yes. The only limitation is that these extensions should be licensed under GNU GPL or a compatible license.
this suggests only GNU GPL license is allowed.

I'm not sure which thread you are quoting, but I have a feeling that the context mattered.

If an extension is derivative, then yes it does need to be licensed under gpl.
The debate we have been having is over which extensions are or are not derivative.
So we must fix our vision not merely on the negative expulsion of war, but upon the positive affirmation of peace. MLK 1964.
http://officialjoomlabook.com Get it at http://www.joomla.org/joomla-press-official-books.html Buy a book, support Joomla!.

erickendrick
Joomla! Apprentice
Joomla! Apprentice
Posts: 38
Joined: Wed Sep 14, 2005 2:55 pm
Location: Cheshire, UK
Contact:

re: no more commercial components for Joomla 1.5?

Post by erickendrick » Mon Jul 23, 2007 5:29 pm

@Asphyx: What *are* you on?

1. Illustration. I'm struggling parsing this to get any meaning. Closest I can get is: "In a sense both the GPL and Proprietary parts could be considered not derivative of the LGPL library if done correctly"

2. "...have not been transferred to the LGPL API yet..." - when the job is not complete, the job is not yet done. If a proprietary extension directly references GPL code then we don't have compliance.

3. "GPL Compatible". Erm - I've never said use equaled derivative and I never said you must use GPL. I agree constructive discussion can't take place if we don't consider our words carefully, and don't carefully read the words of others.

4. Defeatist attitude? Not really. In my opinion its not an area that can bear productive results. By all means investigate this area, but at the end of the day the FSF don't have to prove your license is incompatible in a court of law - the burden is on you to comply with the GPL as nothing else gives you the right to use GPL code. Our goal is to come up with a solution that avoids having to resort to the courts.

5. "Enforcement". Sorry, I'm not been sensationalist or fear-mongering here. You're the one drawing analogies with earthquakes flattening whole cities! Joomla are in a difficult position and have put out the only statement they could - they cannot condone violating the GPL license.

6. "enfringement". Please read what you yourself wrote - in the same paragraph where you state that GPL code can "NEVER" infringe you provide two examples of how it can infringe GPL and non-GPL licensed code!

Asphyx
Joomla! Hero
Joomla! Hero
Posts: 2454
Joined: Sun Aug 28, 2005 5:03 pm

re: no more commercial components for Joomla 1.5?

Post by Asphyx » Tue Jul 24, 2007 4:22 am

@Asphyx: What *are* you on?
Another Level you can't seem to grasp apparently.
1. Illustration. I'm struggling parsing this to get any meaning. Closest I can get is: "In a sense both the GPL and Proprietary parts could be considered not derivative of the LGPL library if done correctly"
I'll try to explain this in a term you can understand...
If all of the core functions of Joomla are placed in an API Library that is LGPL then those functions would do all of the communications between the library and the rest of GPL Joomla. an Extention making a call to that function would not talk to the GPL parts directly it would only talk to the Library and that Library would be the only program directly talking to GPL code. Therefore it is quite possible for this methoid to work to allow proprietary programs to work under Joomla API without violating any of the GPL parts.
2. "...have not been transferred to the LGPL API yet..." - when the job is not complete, the job is not yet done. If a proprietary extension directly references GPL code then we don't have compliance.
There is no reason why a P3PD can't make their own LGPL library to do the same thing for the functions they need in their extentions! I thought you were the one looking towards the future or are you really just interested in 15 minutes ago?
3. "GPL Compatible". Erm - I've never said use equaled derivative and I never said you must use GPL. I agree constructive discussion can't take place if we don't consider our words carefully, and don't carefully read the words of others.
Oh really?
I do agree that if he wants to release sooner and without controversy, he should release the extension under the GPL.
4. Defeatist attitude? Not really. In my opinion its not an area that can bear productive results. By all means investigate this area, but at the end of the day the FSF don't have to prove your license is incompatible in a court of law
First order of business in a court would be is the license compatible with the GPL. If it is not then they move onto the issue of does it have to be!
When you sue someone the burden of proof to show a violation is on the person suing. You can't just take someone to court for making a derivative code unless you first establish that the derivative must be released under a GPL compatible license and somone will have to explain why it isn't or the case will be thrown out! If you can't prove the license is incompatible with GPL then you can't prove violation of license...If you knew anything about Law you would know you can't just make accusations you have to offer evidence of your position.
5. "Enforcement". Sorry, I'm not been sensationalist or fear-mongering here. You're the one drawing analogies with earthquakes flattening whole cities! Joomla are in a difficult position and have put out the only statement they could - they cannot condone violating the GPL license.
Your the one saying there is somthing where nothing exists. That scares people whether you know it or not. People are moving to other CMS' because they feel safe from being prosecuted there. Not because Mambo's flavor of GPL is any more permissive than Joomlas is. There is no enforcement on the part of Joomla/OSM To get that message out will allow an intelligent discussion of solutions rather than a discussion of where the nearest bomb shelter is! You  may not think it significant but the single impression that someone is being taken to court over this can cause deep fear and panic because that BAD IMPRESSION gets spread much faster than the actual facts!
6. "enfringement". Please read what you yourself wrote - in the same paragraph where you state that GPL code can "NEVER" infringe you provide two examples of how it can infringe GPL and non-GPL licensed code!
Look I corrected your hazy and wishy washy attempt to say even GPL code needs to consult a lawyer to see that they don't violate any GPL license...
Thats just flat out wrong....
As for what I said I said it is VIRTUALLY IMPOSSIBLE.....I listed the two exceptions. I agreed with you and you argued with me for making a minor correction on something you said.

I don't know what it is you think I'm aurguing for...I am trying to get rid of the MISINFORMATION and keeping the message Joomla and OSM have tried to get out. Your trying to summarize a complex and detailed issue and I'm sorry of you get all bent out of shape when someone corrects you on a technical point. But those technical points are very important to have PRECISE as precise can be because one wrong statement or mis placed summary becomes next weeks disgruntled developer blog or scare tactic email.

Do you want to get to the right solution calmly or keep on arguing with me for pointing out discrepancies. I don't know exactly what it is your after here.
Now I'm done arguing with you...Cause it's obvious to me that your not interested in precision more interested in keeping things nice and ill defined. Which is not what this situation really needs!

User avatar
Jenny
Joomla! Champion
Joomla! Champion
Posts: 6238
Joined: Sun Aug 21, 2005 2:25 pm
Contact:

Re: no more commercial components for Joomla 1.5?

Post by Jenny » Tue Jul 24, 2007 11:48 am

Erick and Asphyx you both have good ideas. 

Erick your idea of working with the LGPL layer I think is a winner for everyone all round.  There is a lot of work involved in it, and for the best of everyone, 3PDs are going to have to work together on it. I think that is the difficult part of that idea.  I hope 3PDs are listening and looking at the future ready to step up.

Asphyx your idea of coming up with a license that could perhaps be adopted by the FSF as a GPL compliant license that only allows distribution if the code has been modified is a good idea, but I wonder who decides what/where that line is that says yes this has been modified "enough".  I think that would be a hard sticking point and make the license very complicated. 

There is no wrong or right when it comes to coming up with solutions.  Arguing back and forth over it won't change the fact that both of you have ideas.  You don't have to agree, but going back and forth like this is counter productive to getting the ideas behind solutions worked into actual real working solutions. 

As a community all ideas for solutions are good, that helps everyone because it gives people more choices.
Co-author of the Official Joomla! Book http://officialjoomlabook.com
Marpo Multimedia http://marpomultimedia.com

User avatar
aoirthoir
Joomla! Explorer
Joomla! Explorer
Posts: 267
Joined: Wed May 02, 2007 1:18 pm
Location: Cleveland, Ohio

Re: no more commercial components for Joomla 1.5?

Post by aoirthoir » Tue Jul 24, 2007 2:00 pm

MMedia, Asphyx,

Regarding a license that allows distribution only if the program has been changed, the FSF has covered this topic. I do not have the link to it and I will look it up when I have time. However I will provide the crux of the argument here.

We can understand the following whether the license only prevents exact verbatim distribution, or if it forbids distribution unless a certain percentage of the code is changed.

A developer distributes program A. It cannot be distributed unless modified.

A user modifies it and creates program B. Now they may distribute.

Another user modifies program B removing certain elements creating program C. However, program C is similar or identical to program A (with or without the users knowledge.).

It is for this reason that such a model will not be accepted by the FSF.


--
Also, regarding the LGPL solution, I am not sure that I believe it offers a solution. The issue with the GPL is that the whole program must be compatible. The LGPL is compatible, but a proprietary program of course is not. So when you combine all three, GPL + LGPL + Proprietary into one whole program, you arrive at a program that is not distributable under the terms of the GNU GPL. Again the whole program may have further restrictions, like the restriction from using the program in any manner you want (on any domain you want for instance), or that restricts you from distributing your changes.

This same concept applies when we think about a complete program that runs entirely on its own without the use of a GPL program. The GPL program is its own program. The proprietary program is its own program. Yet, when they are combined, they form a new whole program. So this whole program would be prevented from distribution under the terms of the proprietary license, and the GPL. This is why percentages of use do not matter. Does the proprietary program account for 75% of the new whole program? Or does it account for 2%? In both cases the proprietary copyright holder would prevent the distribution of the whole program. Is the proprietary program just a new method of logging in? Or is it a complete accounting system? Again in these cases the proprietary license prevents distribution of the whole work.

So at what point then is one a derivative and another not? There is a great difficulty in adjudicating this, because should one be declared not a derivative, another developer might be convinced that her program is no different than the other program so declared. Ultimately I am convinced that the whole program is a derivative of both the GPL licensed program, and the proprietary licensed program. If a proprietary program contains no instructions, no extra libraries, no method of interfacing to the GPL program then I see no issue. It is left to the user to accomplish on their own.

For those that object to this, it is not without precedent that proprietary licenses can even restrict patches. We know it is clear that distribution of a proprietary licensed program is restricted. Thus one user cannot make modifications to the program and distribute it. However, in many cases, the user is forbidden even from making her modifications, detailing the changes and where they must go, then publishing these details.

So the two programs are entirely copyrighted by their respective developers, and each may be distributed on its own. But, it is the distribution of the  combination of these that the proprietary or GPL license prevents. Sometimes that distribution is accomplished by a download from one location. Other times it is from multiple locations. Yet other times it is accomplished via patches or bridges. If we accept that patches can be forbidden by proprietary copyright holders, then we can also accept the same from copyright holders that use the GNU GPL. Thus the issue does not occur when someone creates some fantastic program. Certainly, their program is complete in itself. The issue occurs when they then attempt to combine their program with a GPL program, create a new whole work. Whether that link is via changes within one or the other program, or additions of additional files, the result is the same.

Which is why I state again, were I to distribute proprietary programs, I would not link to GPL programs at all. In the case of PHP programs, I would not interact with them, except if I were able to do so via some other method than include/require.

Please note, these are my musings and opinions. Some of the opinions just mentioned are different from statements made on these forums already by members of the core team. So these are not to be taken as Joomla! opinions. Just JJF opinions.

Now despite all that I just said, if the copyright holders feel that a bridge or an LGPL library solves the issue, then it solves it. Why? Because my opinions in this regard don't matter, since none of the code is mine.
Joseph James Frantz

User avatar
Jenny
Joomla! Champion
Joomla! Champion
Posts: 6238
Joined: Sun Aug 21, 2005 2:25 pm
Contact:

Re: no more commercial components for Joomla 1.5?

Post by Jenny » Tue Jul 24, 2007 2:44 pm

The issue is if a person isn't distributing Joomla! and the Library and the non-compatibly licensed extention all together in a combination then the viral nature of the GPL does not pertain.  An enduser that gets Joomla! and the Library separately can combine them to their hearts content then add extentions with any licenses they wish to.

If the LGPL layer (library) is incorporated into the Core of Joomla! with the intent that it is a library, people are free to use that library to connect to and license as they wish to.  Isn't that the point behind LGPL libraries that they are to be used and they allow more freedom in the licenseing of the software using them?

That is at least how I understand it.  I may be wrong, and frequently I most likely am wrong.  Someone clarify for me if I am way off base.
Co-author of the Official Joomla! Book http://officialjoomlabook.com
Marpo Multimedia http://marpomultimedia.com

User avatar
aoirthoir
Joomla! Explorer
Joomla! Explorer
Posts: 267
Joined: Wed May 02, 2007 1:18 pm
Location: Cleveland, Ohio

Re: no more commercial components for Joomla 1.5?

Post by aoirthoir » Tue Jul 24, 2007 3:23 pm

MMMedia,

This is actually a belief that many people have about the GPL. To understand it, we have to understand that we are creating a whole work. For the moment we will put aside the idea of very complex programs like an accounting program that connects to something like Joomla!, since this is for many a grey area. Instead I wish to concentrate on more obvious examples of things that are clearly libraries.

So I create a math library. My math library is unknown. But your program uses it because you find it very useful. So you must distribute my math library (unchanged) along with your program. In fact you have to because your program will not fulfill its functions without my library, or it will be crippled without it. In addition you are required to make an offer for the source for my library for three year to any third party, since you are distributing the binary. Since your program uses my library, your program must be GPL. So all of the just mentioned terms also apply to your program. Were my library using the Lesser GPL, then your program could be under any license.

Now time goes on and my library becomes very popular. So it is installed by default on many systems. Thus you no longer need to distribute it along with your program, since you can reasonably count on it being on most systems that use your program. However, the 'viral' nature of the GPL in this case has not changed. Your program still requires my library. In addition, if the user does not have the library on their system for any reason, you are technically supposed to offer it to them.

It is for this reason that the LGPL was created. Specifically because the GPL requires the whole work to be GPL (or at least GPL compliant).

Now as to my musings above...this is where it begins to be complicated. I can see both sides of the issue. That is, I can see how some would view an LGPL bridge as a possibility between a proprietary program and a gpl program. Personally I have a tendency to conclude, that if the programs are in any way using include/require, then the whole work has to be compatible (that is gpl+lgpl+proprietary). In the case of my programs, that is most probably the position I will take. Though we are going to be going with the GNU AGPLv3 when it is release (it is why we are waiting to do any releasing). So I am more restrictive in this case than the Joomla! team. And thus the reason I've stated a couple of times, my positions or opinions in these matters don't matter because the code is not mine.
Joseph James Frantz

User avatar
Jenny
Joomla! Champion
Joomla! Champion
Posts: 6238
Joined: Sun Aug 21, 2005 2:25 pm
Contact:

Re: no more commercial components for Joomla 1.5?

Post by Jenny » Tue Jul 24, 2007 4:09 pm

That is why I was stating that the library would have to be LGPL, not GPL because the LGPL allows for freedom in licensing.  It does mean more work for 3PDs but they are the ones wanting to license as they choose to, so the work should be theirs.

http://www.gnu.org/copyleft/lesser.html

Now debate can go on and on as to when combining occurs, how it occurs, if it occurs......and if that combining then creates a whole work. 

Somewhere in all of this a decision has to be made regarding whether people are going to work together for a solution that works the best it can for everyone involved, or whether the debate is going to go on and on and on, without resolution.  I hope people go with solving issues as amicably and fairly as possible.
Co-author of the Official Joomla! Book http://officialjoomlabook.com
Marpo Multimedia http://marpomultimedia.com

User avatar
aoirthoir
Joomla! Explorer
Joomla! Explorer
Posts: 267
Joined: Wed May 02, 2007 1:18 pm
Location: Cleveland, Ohio

Re: no more commercial components for Joomla 1.5?

Post by aoirthoir » Tue Jul 24, 2007 4:32 pm

MMMedia,

Exactly. In fact that's why I like to emphasize I have no say in the matter with Joomla!:)
Joseph James Frantz

Asphyx
Joomla! Hero
Joomla! Hero
Posts: 2454
Joined: Sun Aug 28, 2005 5:03 pm

re: no more commercial components for Joomla 1.5?

Post by Asphyx » Tue Jul 24, 2007 5:08 pm

Regarding a license that allows distribution only if the program has been changed, the FSF has covered this topic. I do not have the link to it and I will look it up when I have time. However I will provide the crux of the argument here.
Yes the FSF has covered this topic. But it has yet to be addressed in a court. What the FSF interprets as compatible with the GPL is really not all that much different than what Joomla interprets as a derivative. That interpretation will have to be made and adopted by a court before the burden of proof is made in a license violation suit. Is it a solution? we don't know yet for the same reasons we don't know if Product A is actually a derivative or seperate work. The only ones who can say with any certainty have not spoken to the point yet. (Judges and courts)

As for your example of A to B to C=A....

C would still be in violation of A's license and it does not matter that he started off with B as opposed to the original A. You see just as the GPL states that any modifications must be noted clearly in the code and copyrights of work you did not modify must remain, so too would this new RGPL (restricted GPL) license have such an article. This would stop someone from creating Version A/C again because they would see clearly that they are only removing past modifications to another work. They could however change the modifications to parts of A and parts of the modified sections of B and create C. That would comply with the original license.

So if the license is written correctly there would be no chance of someone recreating A by modifying B. the modification stipulation would automatically require you to add something and note it or change something (note the change and add your name to the copyright of what you changed). If you did not then you would be in violation of that license should you ever distribute your version. Use as in GPL would be unrestricted.
Think of the GPL license with the word copy and verbaitm removed from every article.

FSF would be hard pressed to say that such a license harms their license. IT merely harms the ability to distribute a GPL product with that RGPL product.  FSF would argue that it restricts verbatim distribution but they would then have to prove to a court why that is important and how that restriction on a seperate work would impact the rights to distribute the original GPL product verbatim. I don't think they could make that case easily to a US court. Maybe they could be successful in other countries, but in the US you have to show that you are being harmed in some manner before you can win. Since the extentions would give all the rights (except one) that the GPL does FSF would have to make a very strong case for verbatim distribution. And they have yet to ever make that case to anyone that I know of.
Thier answer is ideological not legal. Courts don't care much for ideology only law.

As to the point of how much modification is needed to comply, well how much modification is needed to a GPL program before you can say it is a different project? GPL actually says NONE so My license could be as little as one line of code which is far more fair than none! In any case a court would decide based on the same terms they would for any copyright work. It's not defined in the law and would be determined on a case by case basis. The point of this is to ensure that any modifications would mean that the stability of the original code has changed. This gives the original author some exclusivity to his stability of version. And while it may start off only seperated by a single line of code the original author can continue to add to his version and the modifier will have to either pay for that new version or code it himself. to avoid this the license would have to include a clause to rename (in the same way a fork is done) to distinguish the two products. The orginal Author will also have exclusivity to the reputation and marketing of his version. This is almost as important to their sales as the actual code is!

So when you combine all three, GPL + LGPL + Proprietary into one whole program, you arrive at a program that is not distributable under the terms of the GNU GPL.
It is distributable...just not as a single distribution. All three must be distributed seperatly and in the case of JoomlaGPL/API LGPL a dual license.
Where I think the confusion comes from is it is being considered that all 3 parts are combined together. But they really are not. GPL A is combined with LGPL B as a single combination then Proprietary C is combined with LGPL B seperatly. the GNU C Library is a very good example of this. Any program no matter if it is GPL or Prorietary can use the GNU C Libraries (LGPL) The fact that two seperate programs both use those libraries and can communicate through that library does not mean all three become one program. In that case what is actually happening is that the library creates data that both can use. the functions of GPL A are not being called to by Proprietary C instead the Data created by a call to LGPL B is being sent to GPL A via a call to LGPL B.

User clicks
GPL - Call to LGPL, call function Component?+parameter and wait for data from JDisplay...
LGPL - Run Prop A?+Parameter
Prop A - Do custum work using any functions in LGPL if needed.
Prop A - Call to LGPL, Make data and send to function JDisplay in LGPL
LGPL - create the data output via JDisplay
GPL - Get data from JDisplay ann proceed.

The proprietary program could only be derivative of the LGPL library not that GPL core since it doesn't link or use any functions of the GPL work
the Core itself would have a lot of it's functionality inside the LGPL API. In a sense it would be derivative too!
But both are really not derivative in the sense the GPL puts that term. They would be more along the lines of a programming language (Like PHP) in the fact that the API would define new language constructs that any other program could use.

The only issue I see with the LGPL method is does Joomla/OSM really wish to put all of their magic into a file that anyone could create a competing (and Proprietary) CMS with? I can't answer that and I suspect there may be some disagreement on this topic among the Devs. But I do NOT want to put words into their mouth. Jinx said it was a possibility and no one has really come out against that statement so maybe I'm wrong or maybe it just hasn't been addressed as a group yet.
Yet, when they are combined, they form a new whole program. So this whole program would be prevented from distribution under the terms of the proprietary license, and the GPL
My contention is this. What is so important about being able to distrubute a PACKAGE of programs and why is it important that they follow the not restrictive GPL as opposed to some other license? If I wanted to create a package of Windows and several other applications (some Free Some proprietary) I should not be forced to distribute for Free all the proprietary stuff simply because I have one free program in the package. that is license hijacking and I do not believe that would hold up in any couirt of law. As an agregator I am allowed to distribute a GPL program for cost. In a sense I CAN distribute Proprietary programs at cost as well. I can buy a license for a client and give them that license and add a charge for my cost. Provided no one is harmed in that transaction. that practice does not stop or harm the availablity of the free project at all. So why must the whole package be distributed under the terms of that one license when there are many licenses included in that package? This is the real reason why GPL has such a contentious interpretation. I believe it DOES overstep it's bounds. In my package model I am giving a verbatim distribution of the GPL product so why should it now extend itself to other licenses in the package? This is why the LGPL method solves the derivation issue and once that is solved the license issue can largely go away. This concept is fine if you modify the actual GPL code and attempt tp proprietize the result but it should not apply to any program that is actually not derivative and installed, only those modified directly into the code.
So at what point then is one a derivative and another not? There is a great difficulty in adjudicating this, because should one be declared not a derivative, another developer might be convinced that her program is no different than the other program so declared. Ultimately I am convinced that the whole program is a derivative of both the GPL licensed program, and the proprietary licensed program. If a proprietary program contains no instructions, no extra libraries, no method of interfacing to the GPL program then I see no issue. It is left to the user to accomplish on their own.
As has been stated time and again. J1.0X extentions are considered derivative of Joomla AND Mambo. Joomla 1.0X itself is essentially derivative at this point. If I release a mambo extention I could not be fairly accused of making a program derivative of Joomla. Lets use your original A-B-C=A...

there is CMS A
I write Extention C for CMS A
someone takes and forks CMS A and makes CMS B
How can I be sued for making a derivative of a program I made before the program I supposedly derived from existed?
I derive from CMS A and face 10 lawsuits from CMS B,D,E,F G,H etc?
all of which were made after I wrote my code?

This is why I say derivation is not the whole issue here. Most GPL code is derived from other GPL code. Part of why the GPL selection of programs is so full.
So this whole it is derived and therefore must be GPL is not a slam dunk or really signifcant item in the license violation.

the part that is really significant is the last bit in the GPL about incorporating GPL into proprietary work. Incorporating talks to physical use inside the code either as a copy and paste operation or linkage to function. the LGPL will solve that part of the controversy because the GPL specifically states it does.
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.
If there is any problem with that method it would be in regards to the fact that not all functions needed were actually placed under the LGPL library and some extention might still need to call to that function to get work done. If the LGPL is not all inclusive of all functions a 3rd party program needs then it will fail. But if the job is done correctly and all of the functions an extention needs are placed in LGPL then the LGPL will solve just about every problem we have with restrictive licensing.

Some GPL ideologists (not accusing anyone of this mind you) would hate to see this happen. they want free software and I certainly don't blame them for wanting that since it has gotten us this far with Joomla. But if we truly want to allow proprietary works to be used in conjunction with Joomla then some sacrifices will have to be made. I personally would hate to see some great new technology owned by say IBM be denied to Joomla users because the people who want free software feel if you let one proprietary technology to be used all technology will become proprietary. I hardly feel this is the case!
Look at the extentions directory and you can clearly see less than 20% of the projects in there are Commercial and maybe 10% of those are actually proprietary. Of that 10% maybe a handful are actually worth using or do something that hasn't be done just as well under GPL.

But while their numbers may be small their functionality opens Joomla use up to many people it would not be a viable option for if we restricted those technologies from being used.

I think you know my views well enough Aoithor to know Is support the current strict interpretations of GPL. and even much of the ideology that interpretation is meant to foster. But the ideology is not as important as the growth and versatility of Joomla and fairness towards sharing a free idea on your own terms as opposed to FSF's terms. This is why I suggested the new license as one method. It would create a new way to share FREE IDEAS without all the drunken fights caused by all the Free beer that is created trying to share those ideas. FSF and GPL says it is all about Free Ideas not Free Beer, but the license does a hell of a lot more to create Free Beer than it does to promote free ideas!
It is all this free beer that ruins all the Commercial GPL busines models. There would be no issue using a Commercial GPL business model if the Free Beer was not involved.

This is not an issue that Joomla can address. Must be done by the FSF or the courts. Court won't see it till it is challenged and so far I have not seen anyone use a lcense that could be used to make that challenge. I am merly suggesting someone does. As far as Joomla today is concerned it is GPL as it always has been and the risks P3PDs face today is no greater than the risk they faced a year ago when they released a Proprietary product for J1.0X.
So they really don't have any reason to whine. That said Joomla/OSM could hold the key to solving their problems via a LGPLing of the API. Do they want to? If I read Jinx's statement correctly, they are open to that. Can't do it for 1.5 but then again asking them to would be like asking them to do it for 1.0X too. too late in the day to do that right now. Instead of focusing on how many ways and solutions could fail we should look more towards how many solutions there are that could succeed. LGPL can succeed. Sure it can fail but not because it can't succeed only because we didn't do enough to make it work.

We need to stop trying to poke holes into potential solutions and dismiss them. Poking holes is fine provided the reason for the poking is to test the stability and to reenforce the weakness that allows the hole to be created.

If we want a positive solution we must work and trouble shoot with a positive attitude so that when negatives are found they can positively be solved!


Post Reply

Return to “GPL Discussion”