Search Unity

License to make source code available, but not grant right to sell

Discussion in 'General Discussion' started by Peter77, Feb 9, 2019.

  1. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,619
    I would like to make the Heap Explorer source code available, but as the same time, I want to prevent people to just compile and sell it as a (new) tool.

    I want that people can use the tool for hobby/indie/commercial purposes in their projects, modify it as they like, etc... but forbid to sell it as just the tool.

    Common Clause seems to be created for exactly this purpose. As I understand Common Clause, I could release the source code under MIT, but with a Common Clause condition. Does this sound right to you?
     
  2. I wouldn't bother. But if you want to hinder any commercialization of the project, throw it out under GPL. Best way to neuter any project. :D
     
  3. snacktime

    snacktime

    Joined:
    Apr 15, 2013
    Posts:
    3,356
    It would be confusing at best because they directly contradict each other. A court would likely uphold what you want, but really in your case it's never going to court most likely, you want well known and easy to understand.

    I concur GPL will almost surely have the intended effect, while being better known and more acceptable.
     
  4. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,203
    The simplest solution is to just release it for free on the Asset Store. The Asset Store EULA prevents third party developers from selling it by itself or as part of another asset but at the same time permits people to download and make use of it and the source code for their game.

    I don't recommend using an open source license (other than MIT, zlib, etc) unless the asset is intended to be used outside of Unity as that just creates additional headache for a developer (ie will the license be compatible for their use case) and will often lead to people just giving the asset a pass (eg many people automatically ignore all GPLed assets).
     
    Last edited: Feb 9, 2019
    Lurking-Ninja, Socrates and Kiwasi like this.
  5. GoesTo11

    GoesTo11

    Joined:
    Jul 22, 2014
    Posts:
    604
    Using GPL wouldn't stop people from compiling and selling it (although they would need to provide source code). The GPL is also incompatible with Unity which may or may no be an issue depending on how your program works.
     
  6. Wrong. If you don't release your tool on the Asset Store, you can use GPL. Anyone, who uses your tool does whatever they want on their own systems. Since this is a debug tool, no one will ship it with their games.
    If they want to sell the tool itself, they need to release the source code AND they cannot release it on the Asset Store, because of the GPL is not compatible with the Asset Store licensing. So they can sell it on their own website alongside with their source code. Well, not the greatest business of all times...

    So GPL can be a solution this time. Unless @Peter77 wants to publish on the AS, but since with that it's a given that others cannot sell it, it's unlikely.
     
  7. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,203
    An editor extension is compiled and then dynamically linked to the editor when it runs. We don't own the editor and can't alter the license of it ourselves, and since linking to GPLed code would require changing the license per the terms of the GPL, it's considered to be incompatible.

    https://www.gnu.org/licenses/gpl-faq.en.html#GPLStaticVsDynamic
     
    Last edited: Feb 10, 2019
  8. snacktime

    snacktime

    Joined:
    Apr 15, 2013
    Posts:
    3,356
    That is in regards to distribution. Most of the GPL is really about distribution. Don't distribute you can do whatever you want.
     
  9. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,203
    Accidents happen. That this is an editor extension makes it less likely, but it's completely possible that someone could use it in a project, forget that it was released under an incompatible license, bring some of the code from it into the game code, and release. I know I tend to forget little details like that past a certain point unless I'm regularly using an asset.
     
  10. snacktime

    snacktime

    Joined:
    Apr 15, 2013
    Posts:
    3,356
    Being the copywrite owner he could dual license it also, AS and outside of that GPL.
     
    Ryiah likes this.
  11. snacktime

    snacktime

    Joined:
    Apr 15, 2013
    Posts:
    3,356
    Worst case you would just get a request to stop distributing it.
     
  12. Yeah. And I can accidentally release some proprietary code as well. Of course. But we're not talking about accidents. People behind closed doors do whatever they want until they don't release things to someone else. It's not the software provider's job to make you safe in case you mess up and release something you should not.
     
  13. nxrighthere

    nxrighthere

    Joined:
    Mar 2, 2014
    Posts:
    567
    The rule is simple, if you don't want to let somebody sell your creation in one or another form, don't release it publicly or sell it yourself.

    In one or another way the result will be the same: you bring a useful tool to people and make this world a little bit better if they will use it as intended or sell it. Both things benefit people which means that your work was not in vain.
     
    Lurking-Ninja likes this.
  14. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,619
    (L)GPL is no option for me. It comes with too many restrictions or "musts", for example to make every modification available.

    This is an interesting idea. If only the asset store wouldn't have such an inconvenient way to release updates. I like the idea, it's indeed really simple, but the asset store workflow is such a turn-off that I'm afraid I don't want to release it there.

    This was more or less my thought with adding the Common Clause condition. Take a open-source license such as MIT and put Common Close on top (turn it from open-source to source-available). Keeps all the goodies of MIT, but cancel the "sell just the software".
     
  15. I have a different problem with the Asset Store. I could live with the weird release schedule. But I'm not willing to support a free tool other than sometimes I take a look if someone has a question. Whenever I feel like it and have time for that. The expectation that I need to maintain a separate website or connect page and support email and/or forum thread is a no-go for me. I don't have time all week to support a free tool. It's a shame that Unity does not allow the as-is release despite the fact that they are releasing the stuff as-is according to the license...
     
    Antypodish likes this.