Colt_45,
The definition of derivative works is a matter of copyright law. A person could make a statement that we should not break the speeding laws, yet not mention the speed limit. Since speed limits vary even within the same district depending on the road, time of day (as in school speed limits), weather conditions, we could not say, "Do not go over 50," since in some areas that would be incorrect.
The definition of derivative works varies quite a bit depending on the facts of the case, the local, even the judge. There is no set case law which has determined exactly what a derivative work is. Is it 2% change? 10%? In some places the answer to both might be yes. It is for this reason that the USA Copyright Office has stated that you are best if you *always* get permission from a copyright holder before you make user of their work. The chances are that your using another work creates a derivative.
Also derivatives are not a one stream path. So if I use 3 songs in a movie, wherein I wrote the script, the movie is derived from my script, and each of the three songs. I must have permission to use the songs in my movie. So too with a program that combines code you created, and Joomla!. The combined work is a derivative of your program and Joomla! So both licenses must be followed. The GPL has the die clause, which means that if its requirements cannot be met, then the work cannot be distributed.
I realize that you and others think if you are not actually distributing the original work, since the user has it already, then you are not distributing. However, you are distributing a part of a combined work. Assume you sold something to a user who was not experienced, they did not have Joomla!, now you have sold them a digital paperweight. So you must provide Joomla! as well. In all cases the combined program does not work without Joomla!, so it requires Joomla!. This even occurs in the cases of a bridge. Joomla! = standalone. Mygreatprog = Standalone. Joomla! + Bridge + Mygreatprog = combined work. So Mygreatprog typically does not have to be distributed using the GPL. And as long as it remains seperate from a GPL program it does not have to be. But the combined work of Joomla!+Bridge+MyGReatProg must follow the licenses of all three programs. If it cannot meet the terms of all three it cannot be distributed.
Regarding the comments with Mambo, so long as they own all of the copyrights to all of their code, and they make no use of any borrowed code, they may make such a statement. It has been told to me that they do. So be it then. However, if they borrow code from any other project, they are unable to offer such exceptions. Really, they should have released their program under the GNU LGPL which would have protected the core files, but allowed calls to their functions as a library. That's why we have these two licenses.
As far as policing the GPL, the team is doing anything but. Please reread the
announcement about this issue.Even if they were going to police we are probably talking a year or more away before and compliance issues would be 'forced'. Though this has been stated again and again they are not forcing compliance. In fact, the GPL has not had to have its compliance forced. Time and again the FSF has sought gentle compliance, and achieved it. Why?
Well lets look at the term you used earlier 'illegal'. Let's say I have a proprietary extension. Could my position of it be illegal? Could my running it be illegal? What if I run it on multiple websites, could this be illegal? What if it is encrypted and I try to decrypt it, could this likewise be illegal? The answer to all of these is a resounding yes. I cannot copy it from a friend, that is a crime, and I can face criminal penalties and fines. Since the license of many of these stipulate that I can run on one domain, the same applies. Running it of course is illegal if I have no purchased it, or if I have, if I run on multiple computers or domains. Decrypting is a violation of the DMCA. In all cases the developer of these extensions want people to follow her license. She has the weight of law to enforce this if she desires, even having the potential to cause people to go to jail and pay heavy fines.
Now compare that illegal scenario along with its penalties with the GNU GPL illegal scenario and its penalties. Can you give to a friend? Yes. No violation. Can you run it for anything? Yes, no violation. Can you run on multiple domains and websites and computers and from your kitchen, bathtub, on the top of your head while wearing pink frilly dresses singing Danny Boy? Yes, no violation. (Yes that's a bit silly, merely pointing out that unlike with proprietary software, the GPL does not restrict how you run it.) Can you disassemble, decrypt and reverse engineer? Yes, no violation, though typically since you have the code you shant need to do these things.
Ok so what about the penalties of the GPL? Simple, if you cant meet the terms do not distribute. That's all.
However, the core team hasnt even said that yet. They have taken no extensions off of the websites. As you read from their announcement they are going to get themselves into compliance first. This is a long process. I expect it might take as long as a year give or take. Thats my feeling, but I think it's reasonable. All they seek is voluntary gentle compliance. No pogroms, no calling devs evil, none of that. In fact any claim otherwise has come from parties other than the team, or those supporting them.
Also please remember these are not issues of commercial use. I am paid by my company to develop free software. The GPL is probably one of the most pro business licenses available. I realize others continue to argue this fact. It is pro business because it allows all businesses to compete on their own merits. Other licenses lock certain parties out of competition.
All in all this process is going to be a slow one. And you will find that lots of developers are already compliant and others are already coming into compliance without the misinformation that you might have read up to this point.
Though again I'd definitely recommend reading the posts in their full to gain a better understanding of all sides.