1
0
mirror of https://github.com/github/choosealicense.com synced 2024-12-22 04:40:09 +01:00
Mike Linksvayer 4aa540f154 Add existing project situation, leave 1 permissive, 1 copyleft choice
This is a **draft**, probably will be controversial, definitely needs
wordsmithing.

Fixes #380 "No clear message on why to choose an open source license"
-- added line under heading

Fixes #335 "Feedback from John Sullivan talk on license choosers"
-- remaining items were (roughly) to not surface patents at this
level, and to surface choice between allowing proprirary/closed
source or not

Fixes #239 "Consider discussing ecosystems with an already predominant
license" (well, it doesn't *discuss* but there's a page for that,
unlinked til now) and makes the default recommendation of just about
everyone -- use exisitng project/community's license if applicable
-- prominent on the site

Closes #48 "Proposed modified workflow: make permissive/copyleft
and patents orthogonal" though probably not in way submitter would
favor. I could be convinced that Apache-2.0 should be featured
rather than MIT because of the former's express patent grant, but
as it stands I'm not sure the complexity of Apache-2.0 (and for a
weak grant, relative to GPLv3) is worth it relative to MIT. There's
some value in the first license a user looks at being really easy
to understand. The continued popularity of MIT and simialar ISC and
BSD-2/3 seems to indicate people want that simplicity. And where
are the holdups based on patents supposedly infringed by open source
projects under licenses without an express patent grant that could
not have happened had those projects been under Apache-2.0? Please
educate me! :)

Any and all feedback most welcome.
2016-06-06 18:31:14 -07:00
2016-06-02 12:17:20 -07:00
2016-04-27 15:55:34 -07:00
2016-02-09 12:23:45 -05:00
2016-02-09 10:44:19 -05:00
2015-03-07 12:52:01 -05:00
2016-05-26 12:09:58 -06:00
2016-02-20 08:46:11 -08:00
2016-04-20 21:18:03 -07:00
2012-09-12 15:20:27 -04:00
2016-03-17 17:30:47 -07:00
2015-04-27 15:53:07 +02:00
2016-03-17 17:30:47 -07:00
2014-12-20 13:55:53 +02:00

Choosealicense.com

Build Status

Like a Choose Your Own Adventure site, but only much less interesting.

Intro

A lot of repositories on GitHub.com don't have a license. GitHub provides a license chooser, but if you don't know anything about licenses, how are you supposed to make an informed decision?

ChooseALicense.com is designed to help people make an informed decision about licenses by demystifying license choices through non-judgmental guidance.

Immediate Goals

  • Non-judgmental. Our goal is to help you find a license that meets your goals.
  • Well designed, but that goes without saying.
  • The homepage should have just enough to help 99% of folks make a decision.
  • For the 1%, the site will contain a list of licenses common to specific communities and situations.
  • Not comprehensive. Seems like an odd goal, but there are a bajillion licenses out there. We're going to have to filter that down to a small list of those that matter.

Run It On Your Machine

git clone https://github.com/github/choosealicense.com.git
cd choosealicense.com
script/bootstrap
script/server

Open http://localhost:4000 in your favorite browser.

Adding a license

For information on adding a license, see the CONTRIBUTING file.

License metadata

Licenses sit in the /_licenses folder. Each license has YAML front matter describing the license's properties. The body of the file contains the text of the license in plain text. The available metadata fields are:

Required fields

  • title - The license full name specified by http://spdx.org/licenses/
  • spdx-id - Short identifier specified by http://spdx.org/licenses/
  • source - The URL to the license source text
  • description - A human-readable description of the license
  • how - Instructions on how to implement the license
  • permissions - Bulleted list of permission rules
  • conditions - Bulleted list of condition rules
  • limitations - Bulleted list of limitation rules

Optional fields

  • featured - Whether the license should be featured on the main page (defaults to false)
  • nickname - Customary short name if applicable (e.g, GPLv3)
  • note - Additional information about the licenses
  • using - A list of notable projects using the license in the form of project_name: "url"
  • redirect_from - Relative path(s) to redirect to the license from, to prevent breaking old URLs

Auto-populated fields

The licenses on choosealicense.com are regularly imported to GitHub.com to be used as the list of licenses available when creating a repository. When we create a repository, we will replace certain strings in the license with variables from the repository. These can be used to create accurate copyright notices. The available variables are:

Fields

  • fullname - The full name or username of the repository owner
  • login - The repository owner's username
  • email - The repository owner's primary email address
  • project - The repository name
  • description - The description of the repository
  • year - The current year

License properties

The license properties (rules) are stored as a bulleted list within the licenses YAML front matter. Each rule has a name e.g., include-copyright, a human-readable label, e.g., Copyright inclusion, and a description Include the original copyright with the code. To add a new rule, simply add it to _data/rules.yml and reference it in the appropriate license.

Rules

Permissions

  • commercial-use - This software and derivatives may be used for commercial purposes.
  • modifications - This software may be modified.
  • distribution - You may distribute this software.
  • private-use - You may use and modify the software without distributing it.
  • patent-use - This license provides an express grant of patent rights from the contributor to the recipient.

Conditions

  • include-copyright - Include a copy of the license and copyright notice with the code.
  • document-changes - Indicate changes made to the code.
  • disclose-source - Source code must be made available when distributing the software.
  • network-use-disclose - Users who interact with the software via network are given the right to receive a copy of the corresponding source code.
  • same-license - Modifications must be released under the same license when distributing the software. In some cases a similar or related license may be used.

Limitations

  • trademark-use - This license explicitly states that it does NOT grant you trademark rights, even though licenses without such a statement probably do not grant you any implicit trademark rights.
  • no-liability - Software is provided without warranty and the software author/license owner cannot be held liable for damages.
  • patent-use - This license explicitly states that it does NOT grant you any rights in the patents of contributors.

License

The content of this project itself is licensed under the Creative Commons Attribution 3.0 license, and the underlying source code used to format and display that content is licensed under the MIT license.

Description
No description provided
Readme
Languages
Ruby 33.3%
HTML 26.3%
SCSS 20.3%
CoffeeScript 12.3%
CSS 7%
Other 0.8%