Customization Licenses: Difference between revisions From Online Manual

Jump to: navigation, search
No edit summary
m (Added to Customising SMF category)
(8 intermediate revisions by 3 users not shown)
Line 1: Line 1:
'''NOTE:''' The following information does ''NOT'' constitute legal advice. If you need help, it is recommended to contact a lawyer that specializes in licensing.
'''Note: The following information does ''not'' constitute legal advice. If you need help, it is recommended to contact a lawyer who specializes in licensing.'''
{{TOCright}}
{{TOCright}}


Choosing a license is a vital step when releasing your work. Due to how copyright works, not choosing a license does not mean that there are no restrictions, but that all legal restrictions apply. This means that if you want others to use your code, you need to choose a license. SMF feels that helping mod/theme authors to understand what are their rights and obligations towards anything they create is a crucial part of keeping a mod community alive.
Choosing a license is a vital step when releasing your work. Owing to how copyright works, avoiding choosing a license does not mean that there are no restrictions; instead it means that all legal restrictions apply. As a result, if you want others to use your code, you need to choose a license. SMF feels that helping mod/theme authors to understand their rights and obligations toward anything they create is a crucial part of keeping a mod community alive.


Following are quick overviews of the most popular licenses in the Open Source community. Many others exist, so if none of the below seem to fit your situation, you're welcome to look through [http://opensource.org/licenses the list on opensource.org] or the [http://choosealicense.com choose a license] site.
Below is a list and brief overview of each of the most popular licenses in the Open Source community. Many others exist, so if none of these seem to fit your situation, you are welcome to look through [http://opensource.org/licenses the list on opensource.org] or the [http://choosealicense.com choose a license] site.


'''This is a basic approach''' in order to support your first step in choosing a license. After you find a license that "fits" your basic requirements, you need to "do your homework" and understand its full extent (eg: several licenses have different versions/clauses, which '''ARE''' (slightly) different)
'''This is a basic approach''' to support your first step in choosing a license. After you find a license that "fits" your basic requirements, you need to "do your homework" and understand its full extent, for example several licenses have different versions/clauses, which '''are''' (slightly) different.


----
----


===Apache Public License===
===[http://opensource.org/licenses/Apache-2.0 Apache Public License]===


This is a very open license. With it, you allow others to modify your work and redistribute both your work and their changes for free or paid. Anyone who changes the code must keep an acknowledgment of you as an author within the code. This license additionally has some terms relating to protection from patents that shouldn't affect most contributors.
This is a very open license. By choosing this, you allow others to modify your work and redistribute both your work and their changes for free or paid. Anyone who changes the code must keep an acknowledgement of you as an author within the code. This license additionally has some terms relating to protection from patents that should not affect most contributors.


* Code can be obfuscated or closed: yes
* Code can be obfuscated or closed: yes
* Code can be re-licensed: yes (original code is still under Apache Public License, new code may use a more restrictive license)
* Code can be re-licensed: yes (original code is still under Apache Public License; new code may use a more restrictive license)
* Credit must be retained: yes
* Credit must be retained: yes


===[http://opensource.org/licenses/BSD-2-Clause Simplified BSD]===


===Simplified BSD===
The Simplified BSD license is possibly the closest open source license to the public domain. It is very similar to the Apache Public License, but a lot shorter. If you have no concerns about how your code may be used, distributed, or sold, as long as you get credit, this is the ideal license.
 
The Simplified BSD license is possibly the closest open source license to the public domain. It is very similar to the Apache Public License, but a lot shorter. If you have no concerns about how your code may be used, distributed, or sold as long as you get credit, this is the ideal license.


* Code can be obfuscated or closed: yes
* Code can be obfuscated or closed: yes
* Code can be re-licensed: yes (original code is still under BSD License, new code may use a more restrictive license)
* Code can be re-licensed: yes (original code is still under BSD License; new code may use a more restrictive license)
* Credit must be retained: yes
* Credit must be retained: yes


===[http://opensource.org/licenses/gpl-license GNU Public License (GPL)]===


===GNU Public License (GPL)===
Possibly the most well-known open source license, owing to it being used by a number of very popular software products. This license has several restrictions on what others may do with your code. The source code can never be closed off and any changes must be distributed under the GPL. Owing to these restrictions, there are often issues when combined with code that has been licensed with incompatible restrictions. Version 3.0 of this license adds several controversial terms, so many projects still use version 2.0.
 
Possibly the most well-known open source license due to being used by a number of very popular software products. This license has several restrictions on what others may do with your code. The source code can never be closed off and any changes must be distributed under the GPL. Due to these restrictions, there are often issues when combined with code licensed with incompatible restrictions. Version 3.0 of this license adds several controversial terms, so many projects still use version 2.0.


* Code can be obfuscated or closed: no
* Code can be obfuscated or closed: no
Line 36: Line 34:
* Credit must be retained: yes
* Credit must be retained: yes


===[http://opensource.org/licenses/lgpl-license GNU Lesser Public License (LGPL)]===


===GNU Lesser Public License (LGPL)===
This license is very similar to the GPL. It has many of the same restrictions, but it can be combined more easily with code that has been licensed differently. Unless an overriding concern exists in requiring GPL-compatible licenses, the LGPL is preferred to the GPL.
 
Very similar to the GPL, this license has many of the same restrictions, but can be combined with code licensed differently easier. Unless an overriding concern exists in requiring GPL-compatible licenses, the LGPL is preferred over the GPL.


* Code can be obfuscated or closed: no
* Code can be obfuscated or closed: no
Line 45: Line 42:
* Credit must be retained: yes
* Credit must be retained: yes


 
===[http://unlicense.org Unlicense] ("Public Domain")===
===Unlicense ("Public Domain")===
If you don't have any concerns over what is done with your code, you can release it under [http://unlicense.org Unlicense]. This is similar, but not quite identical to "public domain". As the law in most countries specifies that all creative works are copyrighted, anything you do is automatically copyrighted from moment it is created. This creates a problem as public domain status is not a license ("public domain" applies when copyright has '''expired''' on an item) and, as such, holds no legal value. The next best thing is to use the Unlicense.
If you don't have any concerns over what is done with your code, you can release it under [http://unlicense.org UNLICENSE]. This is similar to, but not quite identical to "public domain". As law in most countries specifies that all creative works are copyrighted, anything you do is automatically copyrighted from moment it is created. This creates a problem as public domain status isn't a license ("public domain" applies when copyright has '''expired''' on an item) and, as such, holds no legal value. The next best thing is to use the Unlicense.


Please note that SMF Customization Team will require the use of this license if you are using code provided by others, such as that posted in our Tips and Tricks board.
Please note that SMF Customization Team will require the use of this license if you are using code provided by others, such as that posted in our Tips and Tricks board.
Line 55: Line 51:
* Credit must be retained: no
* Credit must be retained: no


===[http://choosealicense.com/no-license Closed/Restricted Licenses] ("NoLicense")===


===Closed/Restricted Licenses===
Since PHP code is not compiled, there is no reliable way to create "closed source". You can, however, use a license that restricts what others can do with your code. For example, you may not want others to change your code, or even to redistribute it.


Since PHP code isn't compiled, there isn't a reliable way to create "closed source". You can, however, use a license that restricts what others can do with your code. For example, you may not want others to change your code, or even redistribute it.
While you are free to choose such a license, it breaks the spirit of Open Source Software. For this reason, we encourage you to choose an open source license.


While you are free to choose such a license, it breaks the spirit of Open Source Software. For this reason, we encourage you to choose an open source license.
If you still wish to restrict your code usage and limit distribution, you can choose not to supply a license, which restricts all rights in your contributions. As we require a license statement for contributions, you should clearly note "All Rights Reserved" in your customization's description. As reserving all rights also restricts distribution, unless otherwise granted, by submitting to the SMF site, you grant the SMF site the right to distribute your contribution.


If you still wish to restrict your code usage and limit distribution, you can choose to not supply a license, which restricts all rights in your contributions. As we require a license statement for contributions, you should clearly note "All Rights Reserved" in your customization's description. As reserving all rights also restricts distribution unless otherwise granted, by submitting to the SMF site, you grant the SMF site the right to distribute your contribution.
[[Category:Customising SMF]]

Revision as of 20:52, 4 December 2016

Note: The following information does not constitute legal advice. If you need help, it is recommended to contact a lawyer who specializes in licensing.

Choosing a license is a vital step when releasing your work. Owing to how copyright works, avoiding choosing a license does not mean that there are no restrictions; instead it means that all legal restrictions apply. As a result, if you want others to use your code, you need to choose a license. SMF feels that helping mod/theme authors to understand their rights and obligations toward anything they create is a crucial part of keeping a mod community alive.

Below is a list and brief overview of each of the most popular licenses in the Open Source community. Many others exist, so if none of these seem to fit your situation, you are welcome to look through the list on opensource.org or the choose a license site.

This is a basic approach to support your first step in choosing a license. After you find a license that "fits" your basic requirements, you need to "do your homework" and understand its full extent, for example several licenses have different versions/clauses, which are (slightly) different.


Apache Public License

This is a very open license. By choosing this, you allow others to modify your work and redistribute both your work and their changes for free or paid. Anyone who changes the code must keep an acknowledgement of you as an author within the code. This license additionally has some terms relating to protection from patents that should not affect most contributors.

  • Code can be obfuscated or closed: yes
  • Code can be re-licensed: yes (original code is still under Apache Public License; new code may use a more restrictive license)
  • Credit must be retained: yes

Simplified BSD

The Simplified BSD license is possibly the closest open source license to the public domain. It is very similar to the Apache Public License, but a lot shorter. If you have no concerns about how your code may be used, distributed, or sold, as long as you get credit, this is the ideal license.

  • Code can be obfuscated or closed: yes
  • Code can be re-licensed: yes (original code is still under BSD License; new code may use a more restrictive license)
  • Credit must be retained: yes

GNU Public License (GPL)

Possibly the most well-known open source license, owing to it being used by a number of very popular software products. This license has several restrictions on what others may do with your code. The source code can never be closed off and any changes must be distributed under the GPL. Owing to these restrictions, there are often issues when combined with code that has been licensed with incompatible restrictions. Version 3.0 of this license adds several controversial terms, so many projects still use version 2.0.

  • Code can be obfuscated or closed: no
  • Code can be re-licensed: no
  • Credit must be retained: yes

GNU Lesser Public License (LGPL)

This license is very similar to the GPL. It has many of the same restrictions, but it can be combined more easily with code that has been licensed differently. Unless an overriding concern exists in requiring GPL-compatible licenses, the LGPL is preferred to the GPL.

  • Code can be obfuscated or closed: no
  • Code can be re-licensed: no
  • Credit must be retained: yes

Unlicense ("Public Domain")

If you don't have any concerns over what is done with your code, you can release it under Unlicense. This is similar, but not quite identical to "public domain". As the law in most countries specifies that all creative works are copyrighted, anything you do is automatically copyrighted from moment it is created. This creates a problem as public domain status is not a license ("public domain" applies when copyright has expired on an item) and, as such, holds no legal value. The next best thing is to use the Unlicense.

Please note that SMF Customization Team will require the use of this license if you are using code provided by others, such as that posted in our Tips and Tricks board.

  • Code can be obfuscated or closed: yes
  • Code can be re-licensed: yes
  • Credit must be retained: no

Closed/Restricted Licenses ("NoLicense")

Since PHP code is not compiled, there is no reliable way to create "closed source". You can, however, use a license that restricts what others can do with your code. For example, you may not want others to change your code, or even to redistribute it.

While you are free to choose such a license, it breaks the spirit of Open Source Software. For this reason, we encourage you to choose an open source license.

If you still wish to restrict your code usage and limit distribution, you can choose not to supply a license, which restricts all rights in your contributions. As we require a license statement for contributions, you should clearly note "All Rights Reserved" in your customization's description. As reserving all rights also restricts distribution, unless otherwise granted, by submitting to the SMF site, you grant the SMF site the right to distribute your contribution.



Advertisement: