summaryrefslogtreecommitdiff
path: root/docs/license-recommendations.md
diff options
context:
space:
mode:
authorTong Hui <tonghuix@gmail.com>2016-03-25 16:52:03 +0800
committerTong Hui <tonghuix@gmail.com>2016-03-25 16:52:03 +0800
commit5d6f7b414de4b04ddc19629ac6d1f5e5f3cb42ac (patch)
treeb7d47d7d26bf9cd76ceeae138c71d4a99c7ac662 /docs/license-recommendations.md
downloadfsfs-zh-5d6f7b414de4b04ddc19629ac6d1f5e5f3cb42ac.tar.xz
first
Diffstat (limited to 'docs/license-recommendations.md')
-rw-r--r--docs/license-recommendations.md264
1 files changed, 264 insertions, 0 deletions
diff --git a/docs/license-recommendations.md b/docs/license-recommendations.md
new file mode 100644
index 0000000..a518396
--- /dev/null
+++ b/docs/license-recommendations.md
@@ -0,0 +1,264 @@
+---
+Generator: 'texi2html 1.82'
+description: Untitled Document
+distribution: global
+keywords: Untitled Document
+resource-type: document
+title: Untitled Document
+...
+
+1. How to Choose a License for Your Own Work {#how-to-choose-a-license-for-your-own-work .chapter}
+============================================
+
+### Introduction {#introduction .subheading}
+
+People often ask us what license we recommend they use for their
+project. We’ve written about this publicly before, but the information
+has been scattered around between different essays, FAQ entries, and
+license commentaries. This article collects all that information into a
+single source, to make it easier for people to follow and refer back to.
+
+These recommendations are for works designed to do practical jobs. Those
+include software, documentation, and some other things. Works of art,
+and works that state a point of view, are different issues; the GNU
+Project has no general stand about how they should be released, except
+that they should all be usable without nonfree software (in particular,
+without DRM[(1)](#FOOT1)). However, you might want to follow these
+recommendations for art works that go with a particular program.
+
+The recommendations apply to licensing a work that you create—whether
+that’s a modification of an existing work, or a new original work. They
+do not address the issue of combining existing material under different
+licenses. If you’re looking for help with that, please check our GPL
+FAQ.[(2)](#FOOT2)
+
+After you see what we recommend here, if you’d like advice, you can
+write to <licensing@gnu.org>. Note that it will probably take a few
+weeks for the licensing team to get back to you; if you get no response
+in a month, please write again.
+
+@firstcopyingnotice{{@footnoterule Copyright © 2011, 2013, 2014 Free
+Software Foundation, Inc.\
+ {This essay was first published on <http://gnu.org>, in 2011. This
+version of it is part of @fsfsthreecite}
+
+### Contributing to an Existing Project {#contributing-to-an-existing-project .subheading}
+
+When you contribute to an existing project, you should usually release
+your modified versions under the same license as the original work. It’s
+good to cooperate with the project’s maintainers, and using a different
+license for your modifications often makes that cooperation very
+difficult. You should only do that when there is a strong reason to
+justify it.
+
+One case where using a different license can be justified is when you
+make major changes to a work under a noncopyleft license. If the version
+you’ve created is considerably more useful than the original, then it’s
+worth copylefting your work, for all the same reasons we normally
+recommend copyleft. If you are in this situation, please follow the
+recommendations below for licensing a new project.
+
+If you choose to release your contributions under a different license
+for whatever reason, you must make sure that the original license allows
+use of the material under your chosen license. For honesty’s sake, show
+explicitly which parts of the work are under which license.
+
+### Software {#software .subheading}
+
+We recommend different licenses for different projects, depending mostly
+on the software’s purpose. In general, we recommend using the strongest
+copyleft license that doesn’t interfere with that purpose. Our essay
+“What is Copyleft?” (@pageref{Copyleft}) explains the concept of
+copyleft in more detail, and why it is generally the best licensing
+strategy.
+
+For most programs, we recommend that you use the most recent version of
+the GNU General Public License (GPL) (@pageref{GPL}) for your project.
+Its strong copyleft is appropriate for all kinds of software, and
+includes numerous protections for users’ freedom.
+
+Now for the exceptions.
+
+#### Small Programs {#small-programs .subsubheading}
+
+It is not worth the trouble to use copyleft for most small programs. We
+use 300 lines as our benchmark: when a software package’s source code is
+shorter than that, the benefits provided by copyleft are usually too
+small to justify the inconvenience of making sure a copy of the license
+always accompanies the software.
+
+For those programs, we recommend the Apache License 2.0.[(3)](#FOOT3)
+This is a pushover (noncopyleft) software license that has terms to
+prevent contributors and distributors from suing for patent
+infringement. This doesn’t make the software immune to threats from
+patents (a software license can’t do that), but it does prevent patent
+holders from setting up a “bait and switch” where they release the
+software under free terms then require recipients to agree to nonfree
+terms in a patent license.
+
+Among the lax pushover licenses, Apache 2.0 is best; so if you are going
+to use a lax pushover license, whatever the reason, we recommend using
+that one.
+
+#### Libraries {#libraries .subsubheading}
+
+For libraries, we distinguish three kind of cases.
+
+Some libraries implement free standards that are competing against
+restricted standards, such as Ogg Vorbis (which competes against MP3
+audio) and WebM (which competes against MPEG-4 video). For these
+projects, widespread use of the code is vital for advancing the cause of
+free software, and does more good than a copyleft on the project’s code
+would do.
+
+In these special situations, we recommend the Apache License 2.0.
+
+For all other libraries, we recommend some kind of copyleft. If
+developers are already using an established alternative library released
+under a nonfree license or a lax pushover license, then we recommend
+using the GNU Lesser General Public License (LGPL) (@pageref{LGPL}).
+
+Unlike the first case, where the library implements an ethically
+superior standard, here adoption for its own sake will not accomplish
+any special objective goal, so there’s no reason to avoid copyleft
+entirely. However, if you require developers who use your library to
+release their whole programs under copyleft, they’ll simply use one of
+the alternatives available, and that won’t advance our cause either. The
+Lesser GPL was designed to fill the middle ground between these cases,
+allowing proprietary software developers to use the covered library, but
+providing a weak copyleft that gives users freedom regarding the library
+code itself.
+
+For libraries that provide specialized facilities, and which do not face
+entrenched noncopylefted or nonfree competition, we recommend using the
+plain GNU GPL. For the reasons why, read “Why You Shouldn’t Use the
+Lesser GPL for Your Next Library,” at
+<http://gnu.org/licenses/why-not-lgpl.html>.
+
+#### Server Software {#server-software .subsubheading}
+
+If it is likely that others will make improved versions of your program
+to run on servers and not distribute their versions to anyone else, and
+you’re concerned that this will put your released version at a
+disadvantage, we recommend the GNU Affero General Public License
+(AGPL).[(4)](#FOOT4) The AGPL’s terms are almost identical to the GPL’s;
+the sole substantive difference is that it has an extra condition to
+ensure that people who use the software over a network will be able to
+get the source code for it.
+
+The AGPL’s requirement doesn’t address the problems that can arise *for
+users* when they entrust their computing or their data to someone else’s
+server. For instance, it won’t stop Service as a Software Substitute
+(SaaSS) from denying users’ freedom[(5)](#FOOT5)—but most servers don’t
+do SaaSS. For more about these issues, read “Why the Affero GPL,” at
+<http://gnu.org/licenses/why-affero-gpl.html>.
+
+### Documentation {#documentation .subheading}
+
+We recommend the GNU Free Documentation License (@pageref{FDL}) for
+tutorials, reference manuals and other large works of documentation.
+It’s a strong copyleft license for educational works, initially written
+for software manuals, and includes terms which specifically address
+common issues that arise when those works are distributed or modified.
+
+For short, secondary documentation works, such as a reference card, it
+is better to use the GNU all-permissive license,[(6)](#FOOT6) since a
+copy of the GFDL could hardly fit in a reference card. Don’t use CC-BY,
+since it is incompatible with the GFDL.
+
+For man pages, we recommend the GFDL if the page is long, and the GNU
+all-permissive license if it is short.
+
+Some documentation includes software source code. For instance, a manual
+for a programming language might include examples for readers to follow.
+You should both include these in the manual under the FDL’s terms, and
+release them under another license that’s appropriate for software.
+Doing so helps make it easy to use the code in other projects. We
+recommend that you dedicate small pieces of code to the public domain
+using CC0,[(7)](#FOOT7) and distribute larger pieces under the same
+license that the associated software project uses.
+
+### Other Data for Programs {#other-data-for-programs .subheading}
+
+This section discusses all other works for practical use that you might
+include with software. To give you some examples, this includes icons
+and other functional or useful graphics, fonts, and geographic data. You
+can also follow them for art, though we wouldn’t criticize if you don’t.
+
+If you are creating these works specifically for use with a software
+project, we generally recommend that you release your work under the
+same license as the software. There is no problem in doing so with the
+licenses we have recommended: GPLv3, LGPLv3, AGPLv3, and GPLv2 can all
+be applied to any kind of work—not just software—that is copyrightable
+and has a clear preferred form for modification. Using the same license
+as the software will help make compliance easier for distributors, and
+avoids any doubt about potential compatibility issues. Using a different
+free license may be appropriate if it provides some specific practical
+benefit, like better cooperation with other free projects.
+
+If your work is not being created for use with a particular software
+project, or if it wouldn’t be appropriate to use the same license as the
+project, then we only recommend that you choose a copyleft license
+that’s appropriate for your work. We have some of these listed on our
+license list.[(8)](#FOOT8) If no license seems especially appropriate,
+the Creative Commons Attribution-ShareAlike[(9)](#FOOT9) license is a
+copyleft that can be used for many different kinds of works.
+
+<div class="footnote">
+
+------------------------------------------------------------------------
+
+### Footnotes
+
+### [(1)](#DOCF1)
+
+@raggedright See our campaign against Digital Restrictions Management,
+at [DefectiveByDesign.org](DefectiveByDesign.org). @end raggedright
+
+### [(2)](#DOCF2)
+
+@raggedright At <http://gnu.org/licenses/gpl-faq.html>. @end raggedright
+
+### [(3)](#DOCF3)
+
+@raggedright See <http://apache.org/licenses/LICENSE-2.0> for the full
+text of the license. @end raggedright
+
+### [(4)](#DOCF4)
+
+@raggedright See <http://gnu.org/licenses/agpl.html> for the full text
+of the license. @end raggedright
+
+### [(5)](#DOCF5)
+
+@raggedright See “Who Does That Server Really Serve?” for more on the
+issue of SaaSS. @end raggedright
+
+### [(6)](#DOCF6)
+
+@raggedright See
+<http://gnu.org/licenses/license-list.html#GNUAllPermissive>. @end
+raggedright
+
+### [(7)](#DOCF7)
+
+@raggedright See <http://creativecommons.org/about/cc0> for more on the
+license. @end raggedright
+
+### [(8)](#DOCF8)
+
+@raggedright See
+<http://gnu.org/licenses/license-list.html#OtherLicenses>. @end
+raggedright
+
+### [(9)](#DOCF9)
+
+@raggedright See <http://gnu.org/licenses/license-list.html#ccbysa> for
+more on using this license. @end raggedright
+
+</div>
+
+------------------------------------------------------------------------
+
+This document was generated by *tonghuix* on *March 25, 2016* using
+[*texi2html 1.82*](http://www.nongnu.org/texi2html/).\