3 ms·
Dual licensing is a very fine method to make code available as open source and keep it a commercial product too. The GPL is a license which has worked for this,
by _ph_ 6y ago
Dual licensing is a very fine method to make code available as open source and keep it a commercial product too. The GPL is a license which has worked for this, QT is a good example. This works best, when the dual-licensed software is the large part of your product.
When using the GPL, it comes at one huge disadvantage: you cannot accept community patches to the GPL software and use them for your closed-source branch. This is the incentive for companies, to use a more permissive license for some of the software. They can reintegrate community contributions into their closed software product. Of course, this only works out, if the closed software product adds significant value over the open sourced part, or no one would buy it.
- doomlaser 6y agoWhat do you think would be the ideal license for the open source part of this dual license model?
- _ph_ 6y agoI think, and I tried to express that with my post, there is no one ideal license. It completely depends on the situation. If, like QT, the library is your whole product and you do not depend on the community for contributions, then GPL is great. It forces vendors of non-GPL software to acquire a commercial license, while open source projects can use your product without restrictions. If it is not your core product and you want to encourage community contributions, BSD and MIT might be the license of your choice. You cannot prevent other companies from using the software, but neither are you prohibited of using any community contributions in your product.
- auggierose 6y agoHow about making your own contributions GPL, and the contributions of others either under a CLA, or under MIT license otherwise?
- matkoniecz 6y agoMany people are unwilling to sign CLA. I wanted to submit patch fixing blatant and ugly typo in README. After I got notification about requirement to sign pages of legalese I switched to doing something else and decided to never contribute to this project in any way.
- kemitchell 6y ago> you cannot accept community patches to the GPL software and use them for your closed-source branch. You can if the community developers give you permission (licenses) to keep offering the whole project under both open and commercial terms. Happens all the time. Many companies use contributor license agreements for this. Others simply ask that community contributors make their work available under permissive terms like Apache, MIT, or BSD.