We are creating a repository of resources so that people can build software or create videos or artwork using our material as their basis. We are making a virtual Moon colony and a website of related material, and inviting others to use that to make games or shows that take place in the colony, use our library to create objects or events that are placed within our hosted version of the colony as a 3d environment, write stories that draw on our material, et cetera. To facilitate that, all our libraries are open source and copy left. Currently they use GPL-3.

However, people who go to the effort to make things using our libraries are likely going to want to hold copyright on the derivative work, including making the source code closed. I would like to make it a license condition that they add models, textures, animations, and other similar component pieces they make to our libraries. But I am fine with it if they want to put a different license on their work as a whole so they can charge for it. I seriously doubt we will have many takers using our libraries otherwise.

It seems that if we change the license on the one folder in our GitHub repo that has 3d content, the one called 'blenderstuff', this might be achievable. I am the sole copyleft holder on all that material so I can make that change easily right now.

The project is at an early stage and I know very little about this realm. I just want to help people make cool stuff and educate the public about space. When it comes to legalities, I need a lot of help navigating it all.

  • Should they have to submit their pieces to your project, or should they have to license their pieces in a certain way (without necessarily having to submit them to you)?
    – unor
    Aug 14, 2017 at 21:44
  • @unor The library needs to be a central resource that everyone uses to continue to make things based on Moonwards material. They need to put the pieces that apply into our library.
    – kim holder
    Aug 14, 2017 at 21:45
  • I don’t think there can be a FSF-/OSI-approved license that requires such a submission to the parent project (the Desert Island Test gives a reason why it would be problematic).
    – unor
    Aug 14, 2017 at 21:52
  • Hm. In that case, it would seem to be a matter of creating a license agreement for that class of material, and that will need to be drawn up separately.
    – kim holder
    Aug 14, 2017 at 21:59
  • Any permissive license will allow derivative works to be closed source, but not to require anything back to you. Aug 15, 2017 at 7:55

1 Answer 1


You can dual-license your project under a GPL3 license and a non-free license. Or you can add an exception to the GPL3 license as per section 7 (Additional terms) of the license (the two solutions would achieve the same result).

The non-free license / additional exception to GPL3 would contain language to indicate that "using the library in closed-source works is allowed provided that new models, textures and animations are contributed back through pull requests on [URL of your repo]" (don't say "and similar" because this would only create juridical uncertainty and this is bad for users of your library).

Side note: Of course this means that people could still use your library and not contribute back new textures if they chose to keep the resulting work GPL3. Moreover, if they do so, you couldn't take their new textures (even if they share them publicly) and add them to your repository because you wouldn't be able to grant a similar exception on these new textures. But this is only a small risk as most people who value free and open source software are generally happy to send their contributions to the original repository, under the original terms.

  • This sounds good to me. If a resulting work was GPL3, presumably we could link to their libraries. It would mean their work couldn't be put into apps that help people create new items, and the libraries would be less easy to use and less fully functional, so hopefully that won't come up much.
    – kim holder
    Aug 16, 2017 at 22:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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