I'm looking for a good license-model. I am developing a framework. These key points should be considered:


  • modify
  • distribute
  • commercial and private use
  • sell it in modified/extended state


  • hold Liable
  • sell it in original state
  • sublicense


  • include Copyright
  • include License


  • send fixes/changes back to the author

My intention is to publish and offer a web framework. Everybody can use the framework and develop own websites. The websites can be sold. But the framework should be under the original license.

Does anybody know an existing license or can somebody help me to write a license? Do the key points fulfil the open source directives?

The best fitting license I found is this: https://tldrlegal.com/license/don%27t-be-a-dick-public-license. But it seems to be a bit unprofessional.


The hard criterion "cannot sell it in original state" conflicts with the open source definition, thus, by definition, you won't find any open source license that include this clause. Depending on what exactly you mean with "cannot sublicense", the same may go for that criterion:

Open source definition clause 1: Free redistribution

The license shall not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. The license shall not require a royalty or other fee for such sale.

The closest you can still get to your criteria is probably the Reciprocal Public License (RPL).

The RPL is a license that is similar to the GPL, but requires users who make changes to the software and do not publish the software to nevertheless make those changes available to the licensor: Clause 6 of the license reads (abridged)

[...] Any Extensions that You create or to which You contribute must be Deployed under the terms of this License. [...] You hereby grant to Licensor and all third parties a world-wide, non-exclusive, royalty-free license [...] to use, reproduce, display, perform, modify, create derivatives, sublicense, and distribute Licensed Software, in any form.

The OSI considers this license an open source license, but the FSF has designated it as non-free because of this obligation, and it's not GPL compatible.

If you're willing to move further from the reciprocity requirement, the GNU Public License (GPL) requires users who distribute software that is a derivative work of your work to also distribute it under the GPL. This means that they are only obliged to make the source code available to you if they distribute the software (to you).

  • What I mean with "not sell it in original state" is, that you can use the framework and develop new software. Now you can sell the Software with a Notice, that the framework is used. But you can't sell the framework in the original state without modification or additional software. – schnawel007 Oct 14 '15 at 10:37
  • What I mean with "cannot sublicense" is, that you can't "wrap" the Framework in a new name, give it a new license and sell it. You could sell the Service to install the framework and you can sell the Software which uses the framework, but you can't sell the Framework in the original state. – schnawel007 Oct 14 '15 at 10:40
  • @schnawel007 technically I suppose that the OSD allows for a hypothetical license that disallows sales of the software unless another program is distributed along side it, but I don't think such a term would make much sense. – Martijn Oct 14 '15 at 10:40
  • 1
    @RubberDuck both licenses are copyleft, in that they require derivative works to be licensed under the same license – Martijn Oct 15 '15 at 8:26
  • 3
    @schnawel007 It seems to me what you mean with "cannot sublicense" is actually "can not put under a different license". In that case a strong copyleft license like the GPL which doesn't allow to ever put it under a different license might be what you are looking for. When you want to allow it to be included with proprietary software, you seem to be looking for the LGPL. – Philipp Oct 15 '15 at 9:37

As pointed out by Martijn, any license which makes a difference between selling and giving away for free is not free or open source.

But looking at your comments, your intention seems to be that you do want your library to be used for building proprietary software, but don't want your library itself to become proprietary.

In that case you seem to be looking for the GNU LGPL (aka Lesser GPL or Library GPL). It is similar to the GPL, but allows people to use your library in a product under a different license, as long as your library is not changed. When your library is changed, those changes must also be made available under the LGPL. But this only applies to the library itself, not the software which uses it.

Your Answer

By clicking "Post Your Answer", you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.