Hi,
I'd like to clarify a few questions regarding GPL and LinuxSampler.
The GPL implicitly prohibits third parties from selling a computer program licensed under the terms of GPL, by only allowing the following, quoting GPL:
"...if you distribute copies of such a program, whether gratis or for a fee..."
"... You may charge a fee for the physical act of transferring a copy..."
"You must cause 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."
Basically:
1. selling a computer program licensed under the terms of GPL and
2. charging a fee for distribution of a computer program licensed under the terms of GPL / charging for a physical act of transferring a copy
are 2 entirely different things.
When you sell a computer program you are charging for the costs(human resources - developers, designers; technical resources - computers etc) you have put into *developing a computer program* plus you are charging an adittional fee based on your estimation of value that your product would have on the market(offer/demand stuff)
When you distribute a computer program or charge a fee for physical act of transferring a copy you are charging for the costs you have put into *distribution of a computer program* plus you are charging an additional fee based on your estimation of value that your *distribution service* would have on the market.
This means that:
1. usage of a computer program licensed under the terms of GPL in a hardware product, whether modified or not, is not a distribution of a computer program licensed under the terms of GPL, and is thus prohibited by GPL.
2. usage of a computer program licensed under the terms of GPL, whether modified or not, in a software product, the intention of which is not to distribute a computer program licensed under the terms of GPL, is not a distribution of a computer program licensed under the terms of GPL, and is thus prohibited by GPL.
No.1 of course has an exception, you would have to sell a computer that has a computer program licensed under the terms of GPL installed on it as a part of distribution, for the purpose of selling the computer(for example with preinstalled Linux distribution)
No.2 has several scenarios:
a) a distribution is an obvious case where a given computer program licensed under the terms of GPL is a part of a bigger software product, the sole purpose of which is to distribute, thus a distribution is fully GPL compliant whether made available for transfer at no charge, or selled as a package in stores.
b) a scenario where computer program must not be modified in order to become part of another comuter program "...thus forming a work based on the Program..." This means that if a computer program as a whole, whether modified or not, becomes part of another computer program at *source-code* level, then the terms of GPL apply to such derived work.
You can derive a work from another at source code level(by modifying the original, by adding code to it while not modifying the original, or both) but you can also derive a work at binary level. And if fact, the GPL doesn't differentiate between source-code and binary level derived works:
"...any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof..."
So suppose a software developer goes on developing a cool GUI for a computer program licensed under the terms of GPL which he intends to sell.
The GUI talks to the GPLed computer program via some kind of IPC.
He can claim that he's charging for his own program and distributing the GPLed computer program along with it, since the two are in fact 2 separate applications that communicate through IPC.
This might be true, but consider the following - the GPLed computer program is capable of functioning as a standalone application, whereas the GUI application is practically useless without the GPLed computer program, ans is thus a derived work at *binary-level*.
The GPL states, that "...in whole or in part contains or is derived from the Program...", which means, whether at source code level or binary level.
This has the following consequences:
A proprietary computer program that is not capable of functioning as a standalone computer program, and is communicating with a computer program licensed under the terms of GPL, in order to ensure its purpose and proper functioning, is a derived work under the terms of GPL, thus the terms of GPL apply to such work, and a software developer of such proprietary computer program is *also* violating the terms of GPL by not distributing the computer program licensed under the terms of GPL for the sole purpose of distributing it.
So to summarize that with respect to LinuxSampler, the exception "LinuxSampler is licensed under the GNU GPL with the exception that USAGE of the source code, libraries and applications FOR COMMERCIAL HARDWARE OR SOFTWARE PRODUCTS IS NOT ALLOWED" is in fact no exception at all, and is already covered by GPL.
If someone finds such interpretation too vague for his own taste, he can simply make an amendment to the GPL license, stating that you can only charge for distribution of Program for the sole purpose of distributing it, but not for the actual Program, which would basically equal to the above mentioned exception.
Also note that this only applies to *third parties*, not the actual copyright holder. He can issue another license if someone finds GPL too restrictive for his needs, and charge for it.
So LinuxSampler is basically a pure GPLed computer program.
Marek