Jump to content

License Selection Guide


Majiir

Recommended Posts

I've made a couple of images to illustrate license compatibility. License compatibility basically consists of two questions. If we find something nifty that we like and want to use it (or base something on it) in our own work, what licenses do its license constrain us to choose? Alternatively, if we release our work under a particular license, what kinds of projects are allowed to make use of it? The FSF has a nice chart illustrating which licenses are compatible with various versions of their GPL and LGPL licenses, and I've made something like it but a little less specific by basing it on classes of licenses (though not all licenses follow these trends exactly, so be a little careful). I made it to be a visual guide to help people see what various licenses permit, so that they can get a clearer idea of what they want and pick the appropriate license. This is mostly targeted at people looking to make custom plugins (i.e. DLLs), though I intend for my advice to be sound for people just looking to make, say, a parts pack. Also, stick around after the charts to read my more detailed (much more detailed) thoughts on various license options.

Spoiler

oi1EuZ7.png

4pjTDEs.png

License Classification

Broadly speaking, licenses can be classified into several categories. For each, I've included some licenses in that category, some KSP addons which use licenses from that category, and my thoughts.

Permissive or "lax"

Example licenses of this kind: Public domain, Apache 2.0, some (but not all) BSD-like licenses, Creative Commons-Attribution, Attribution-NonCommercial (not quite as lax as the others), and CC0 (CC-BY, CC-BY-NC, CC0, current version: 4.0 International).

Example KSP addons which use this kind of license: Kerbal Alarm Clock, TweakableEverything.

There may be some stipulations about crediting the original author(s), or disclaiming any liability on the author's part, but broadly speaking, this stuff can be incorporated into just about anything. That's pretty cool. Unfortunately, it can also be used in stuff that doesn't guarantee freedom back to the community.

Strict copyright

Example licenses of this kind: All Rights Reserved, Creative Commons Attribution-NoDerivatives, and Attribution-NonCommercial-NoDerivatives (CC-BY-ND, CC-BY-NC-ND, current version: 4.0 International).

Example KSP addons which use this kind of license: Kerbal Attachment System, Universal Storage.

End of the line -- we can ask the owner of the copyright for an exception, but unless we get one, the only thing we can do with this stuff is use it as-is. If the author vanishes, it can mean the death of the work, as nobody's allowed to extend it or build on it. A mod released to the forum as "All Rights Reserved" is Open Source (by the forum rules), but not Free Software. This is why the terms are not synonymous.

Copyleft

The central idea behind copyleft is sometimes stated as "all rights reversed" or "free as in speech (or freedom)" (that is, "libre" instead of "gratis"/"free-as-in-beer") -- it's intentionally chosen as a reversal of the usual restrictions of copyright. A work released under a copyleft license is free ("liberated", one might say) for all to use, modify, redistribute, etc. for any purpose, but anything based on that work must be released under the same license. We can think of this as a sort of contractually-obligated "paying it forward". The advantage of copyleft over permissive licenses is that copylefted works are immune to a strategy known as "embrace-extend-extinguish". The name comes from an internal Microsoft email describing the practice, in which Microsoft (and other entities which do this) would embrace a product by making their stuff compatible with it, extend their version of that product to grow their market share, and then extinguish the competition once they had market dominance by making their version incompatible with the original. Nobody can do that to a copylefted project, because any modifications or extensions of the work must be released under the same license, so the original project (and the entire free-software community) can use those extensions, thus keeping the community's work out of the "graveyard" of restrictive copyright. There are sub-classes of copyleft licenses:

Strong copyleft

Example licenses of this kind: GNU General Public License (GPL, current version: 3.0), GNU Free Documentation License (FDL, current version: 1.3, 2.0 in progress), Creative Commons-Attribution-ShareAlike (CC-BY-SA, current version: 4.0 International).

Example KSP addons which use this kind of license: Mission Controller 2 (GPL v3), KSP Addon Version Checker (GPL v3 or later)

Exactly as stated above. The GPL is sometimes called a "viral license" by people who don't like it, but the only freedom it restricts is the "freedom" to restrict the downstream freedoms of others. GPL software can be "talked to" by external software without requiring that software to be licensed under the GPL, but the line between "talking to" and "being compiled with and incorporating" can be tricky to find.

Weak copyleft

Example licenses of this kind: GNU Lesser General Public License (LGPL, current version: 3.0).

Example KSP addons which use this kind of license: I'm not aware of any. If you know of any, please let me know so I can update this!

It's basically the GPL with an exception: any derivatives of the work itself must be released under the same license, but works that simply "use" it, e.g. including it as a software library, may be released under any license. It was developed for libraries (and in fact the first "L" originally stood for "Library") which are competing with closed-source alternatives (basically, removing one "obstacle" to corporate users who are using or considering using the strictly copyrighted competitor). That's not really the case in the KSP community, so I don't see much use for this license for KSP addons (and the FSF does not recommend it for general use).

Non-Free "Copyleft"

Example licenses of this kind: Creative Commons Attibution-NonCommercial-ShareAlike (CC-BY-NC-SA, current version: 4.0 International).

Example KSP addons which use this kind of license: Lots -- too many, in my opinion! A couple of the big ones: some members of the USI family (e.g. Karbonite), Firespitter.

I suppose Richard Stallman might argue that Non-Free copyleft isn't really copyleft at all (and I would agree), but this license includes clauses protecting some of downstream users' rights, so I'm classifying it here as copyleft-ish. I call it "Non-Free" because it restricts the freedom to use software (or other works) for any purpose, including commercial ones. I think a lot of KSP addon creators use this license because they like the idea of forbidding others from making money off of something they're not making money from, but (a) this license isn't compatible with proper software licenses like the GPL and (b) if we're giving this stuff away for no cost, how can someone else make money off of it? To answer my own question, the only way for someone to make money competing with a gratis product is to add something else. Check out companies like Red Hat, who create a version of Linux which is Free and Open Source but costs money. Paying customers get dedicated support and professional software developers making fixes and improvements -- and because of the GPL, those improvements can be used by the entire Free Software community! Paid support is probably not viable for KSP addons (especially since we community members support each other for free), but closer to home, people can get paid for making videos or articles about KSP and KSP addons. I see all of these things as good for the community, so I haven't and won't use non-commercial restrictive licenses in anything I make (unless I'm reserving all rights, of course), and I'll argue against them to anyone who will listen.

Why CC Licenses Should Not Be Used For Software

Well, the first reason is that Creative Commons itself says they shouldn't! Here's my distillation of their advice, and some extra thoughts of my own:

I see a lot of people here using CC licenses for software -- largely because of the -NC versions, I suspect. However, in addition to my reservations about -NC restrictions, CC licenses are written with artistic works in mind, and so they include terms like "performance" which are unclear in the context of software, and they don't touch on important software-specific topics like patents and the distinction between and relationship between source code and compiled binaries. The GPL, on the other hand, was written with exactly this in mind. It's not enough to say "here's a binary blob, and you're free to modify it" -- the only way to modify software is to "use the source, Luke," and so the GPL applies to not only the program but the source code used to make it. An author releasing a piece of software under a CC license could conceivably declare that it applies to the compiled DLL but not the source code. I know that this sort of thing has actually happened before -- not irreparably or permanently so, to my knowledge, but addons which are excellent, important, and Non-Free are serious single-points-of-failure for the KSP addon community.

Choosing A License

If you've read this far, you've probably gathered that I'm a fan of copyleft, and when it comes to KSP addons, you are correct. I like the GPL and how it turns the usual "thou shalt not" structure of software licensing on its head. However, the choice of license is a big one for a project, and no single solution is perfect for all cases. The Free Software Foundation has a set of guidelines for choosing licenses, and they generally advise using a permissive license, like the Apache 2.0, for short works (why go to the trouble of using a license longer than the source code itself?), and use copyleft licenses for bigger projects, especially "infrastructure" and libraries. On the other hand, I'm glad that at least a few substantial mods, like TriggerAu's Transfer Window Planner, Alternate Resource Panel, and Kerbal Alarm Clock, and toadicus's AntennaRange, AdaptiveDockingNode, and TweakableEverything, are released under permissive licenses. I think it's healthy for the community to have code which is available to learn from and extend with minimal strings attached. There is even a time and place for restrictive copyright licenses. For instance, it's extremely reasonable to reserve all rights to a project's logos (and many real Free Software projects do exactly this) to ensure that a program's and author's "identity" is clear to users. (The GPL also allows authors to add provisions requiring derivative projects to use a different name from the original.) The FSF's essays are mostly licensed under the CC-BY-ND 3.0 for this reason. They want people to be free to distribute their essays, but only in their original form.

My Final Recommendation

Only you can decide what license is right for your project, but since you've made it this far, here's what I suggest (and do):

Use something simple and permissive where it feels impractical to do otherwise, use copyleft licenses for substantial stuff (especially if you want to let other people build on it -- that way it all stays available for the whole community), and consider keeping any identifying marks, logos, and other such material strictly licensed. I would suggest avoiding CC licenses, especially for software, because (except for CC0) they're incompatible with just about everything but themselves. The GPL applies just fine to non-software stuff, but CC-BY-SA is not a bad copyleft license, especially for artwork that isn't intended to be used as an integral part of software (I wouldn't recommend using a CC license for, say, data textures). It is also possible to release the software bits of a project under one license and art bits under another, or even offer the same project under multiple licenses (many Free Software projects are released under "GPL version [whatever] or any later version"). Be sure to have a clear idea of what you want to accomplish when making your decision, and whatever you decide, lay it out clearly in READMEs, project homepages, and thread OPs. Please don't make users (or moderators) hunt for the license!

Further Reading

In case you feel the urge to read even more about copyright, copyleft, and licenses. There's loads more to be had online, but here are some essays and information pages that I think will be most helpful (I've linked to "How to choose a license for your own work", "What is Copyleft", and "Why you shouldn't use the Lesser GPL for your next library" in the essay already):

Free Software Foundation

Frequently Asked Questions about the GNU Licenses: https://www.gnu.org/licenses/gpl-faq.html

How to choose a license for your own work: https://www.gnu.org/licenses/license-recommendations.html

Various Licenses and Comments about Them: https://www.gnu.org/licenses/license-list.html

What is Copyleft: https://www.gnu.org/copyleft/copyleft.html

Why you shouldn't use the Lesser GPL for your next library: https://www.gnu.org/licenses/why-not-lgpl.html

Creative Commons

Considerations for licensors and licensees: https://wiki.creativecommons.org/Considerations_for_licensors_and_licensees

 


Phew. Thanks for reading!

Edited by Kerbas_ad_astra
Fixed the album for the forum update.
Link to comment
Share on other sites

  • 2 months later...

For CC licenses, yes. They all include a provision that says, say, a CC-BY 2.0 can be used under CC-BY 3, 4, or whatever.

GPL (and probably LGPL) can be like that, but only if the author, copyright holder, or designated proxy explicitly says so. The license in the code header will say something like "released under the GPL 3.0 (or any later version)" in that case.

Link to comment
Share on other sites

  • 3 months later...

I have a question, where does this go?:

<a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/80x15.png" /></a><br /><span xmlns:dct="http://purl.org/dc/terms/" property="dct:title">Astrofox's Mod</span> by <span xmlns:cc="http://creativecommons.org/ns#" property="cc:attributionName">Astrofox</span> is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.

Link to comment
Share on other sites

I have a question, where does this go?:

That's intended for regular websites, if you want to set up something like below, you'll need to convert it to BBCode for use on the forum.

88x31.png

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

[URL="http://creativecommons.org/licenses/by-nc-sa/4.0/"][img=https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png][/URL]
This work is licensed under a [URL="http://creativecommons.org/licenses/by-nc-sa/4.0/"]Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License[/URL].

You can use that as a template and slot in the required bits for your chosen license.

Link to comment
Share on other sites

  • 7 months later...
  • 2 months later...
On 5.8.2013 at 11:29 PM, Majiir said:

I don't care. Do whatever you want!

...or use it to develop nuclear weaponsâ€â€all without giving you any credit!...

Do you realy want the credit, for the help of developing nuklear weapons? :P

(a nuke with a big "developed with help of  Majiir" .... )

or you can upload it without a lizenz...
http://250bpm.com/blog:82
(like 80% of the repositoris on github...)

Edited by Sereneti
Link to comment
Share on other sites

  • 1 month later...

Would this be acceptable for a license?

 

Licensed under creative commons Attribution Sharealike 4.0 international license, Modified with permission

Original work: http://forum.kerbalspaceprogram.com/index.php?/topic/95573-090-odysseus-planet-pack-for-old-kopernicus-v12-eve-planetshine-jan-10-2015/

 

EDIT: also, are these licenses free?

Edited by Kepler68
Link to comment
Share on other sites

  • 3 months later...
On 28/06/2016 at 6:13 PM, Kepler68 said:

Would this be acceptable for a license?

 

Licensed under creative commons Attribution Sharealike 4.0 international license, Modified with permission

Original work: http://forum.kerbalspaceprogram.com/index.php?/topic/95573-090-odysseus-planet-pack-for-old-kopernicus-v12-eve-planetshine-jan-10-2015/

 

EDIT: also, are these licenses free?

yep https://creativecommons.org/choose/

Link to comment
Share on other sites

  • 9 months later...

Is there any well-known or well-accepted "dead man switch" conditional license out there?  Basically, the purpose would be to prevent abandonware, and the "death" of a mod.  The way it would work would be as follows:

1. Whatever the current license is, is what is enforced.  If its ARR, then that's what it is. 

2. After a verifiable and validated "trigger event", the software and other works change to a different license, which would allow the addon to be continues by others.

3. If the original author later wishes to return to developing/maintaining the app and reassert previous copyright, they are free to do so with the original as the basis, but none of the forks or changes can be incorporated unless the base license is changed to match that of the changes.

As an example:
 

Quote

I release a "War of the Worlds" Martian Invasion Addon.  I mark it as all rights reserved. I also place the "dead man switch" license on it, stating:

if ALL the following conditions are met
1. I do not update the software repository/distribution site (GitHub or Stardock, etc) for more than 60 days since the last KSP update/upgrade
2. I do not the release thread here on the forums for more than 60 days since the last KSP update/upgrade
3. I either have not logged in on the official KSP forums for more than 60 days since the last KSP update/upgrade OR I have indicated I am no longer maintaining the addon
THEN:
The software license is changed to GPL, and the artwork and other non-software items (blender files, etc) become CC-By-NC-SA.

Life gets busy, and KSP3.6 comes out, and I can't be arsed to fiddle with it since I'm taking Elon Musks's shuttle to Mars. But the KSP community, after 60 days, can fork and continue the mod so the community gets to have an updated version, which @linuxgurugamer promptly does after checking the conditions have been met, and posts a "Martian Invasions Continued" with GPL and CC-BY-NC-SA notifications for the software.


Is there such a standardized license where all you have to do is post the "abandon" conditions along with the license notice?  Or are there any licenses with standard "abandonware" clauses in them which will "liberate" the works upon common and accepted legal criteria?

 

Link to comment
Share on other sites

  • 8 months later...

Calling all licensing gurus...

I'm working on something which will include modified textures of stock parts. In some cases the changes will be minimal, others maybe not so much. Since Squad will presumably still have the ultimate copyright as they are derivatives what do people think would be suitable? I'm inclined to suspect it would need to include some sort of non commercial stipulation.

Link to comment
Share on other sites

  • 11 months later...

Here is a wonderful guide to creative commons licenses from someone at Northeastern University's IT service.
https://www.northeastern.edu/ats/teaching-technology/e-learning-resources/copyright-fair-use-and-crediting-creative-commons-media/

While primarily for attributing research, it also applies to licensing materials.  (Research or otherwise).

Like they say in this, in EVERYTHING, you should always give credit to third party resources used unless the author explicitly says they don't want credit, then simply give a note implying that you have a source, what the sources qualifications are, and that the source wanted to be anonymous.  (Common slang for this is "a little birdie told me".)

In the case of KSP it would be "A nice member of the KSP Community" for anonymously donated assets and fixes.

Handles are perfectly good attributions as well and referring to changelogs and other things on the pages for info for the tons of community donations a project recieves is considered industry standard and entirely appropriate.

Edited by Ruedii
Forgot the link!
Link to comment
Share on other sites

On 4/26/2018 at 3:39 AM, Manwith Noname said:

Calling all licensing gurus...

I'm working on something which will include modified textures of stock parts. In some cases the changes will be minimal, others maybe not so much. Since Squad will presumably still have the ultimate copyright as they are derivatives what do people think would be suitable? I'm inclined to suspect it would need to include some sort of non commercial stipulation.

You can't relicense what you don't own.

Unless specified otherwise, Squad's assets are ARR. You need to get a formal permission from them, or just state "some assets (c) Squad/TTI2 used on the claims of Fair Use" or something [and hope it sticks], I need to check exactly the best way to state this.

Prepare your package to be still usable in the case you have to withdraw the assets. You can license your own assets (create from scratch) the way that fits you better.

Edited by Lisias
a small warning
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...