1
0
mirror of https://github.com/github/choosealicense.com synced 2024-12-22 12:50:24 +01:00

Merge branch 'gh-pages' into functional-descriptions

This commit is contained in:
Mike Linksvayer 2016-06-01 09:01:10 -07:00
commit d6f7e196ca
36 changed files with 151 additions and 36 deletions

View File

@ -39,7 +39,8 @@ Licenses sit in the `/_licenses` folder. Each license has YAML front matter desc
#### Required fields #### Required fields
* `title` - The SPDX-compliant, human-readable license name * `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 * `source` - The URL to the license source text
* `description` - A human-readable description of the license * `description` - A human-readable description of the license
* `how` - Instructions on how to implement the license * `how` - Instructions on how to implement the license
@ -50,10 +51,10 @@ Licenses sit in the `/_licenses` folder. Each license has YAML front matter desc
#### Optional fields #### Optional fields
* `featured` - Whether the license should be featured on the main page (defaults to false) * `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 * `note` - Additional information about the licenses
* `using` - A list of notable projects using the license in the form of `project_name: "url"` * `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 * `redirect_from` - Relative path(s) to redirect to the license from, to prevent breaking old URLs
* `nickname` - A shorter, human-readable license name where the SPDX license name (`title` above) is long
### Auto-populated fields ### Auto-populated fields
@ -92,7 +93,7 @@ The license properties (rules) are stored as a bulleted list within the licenses
#### Limitations #### Limitations
* `trademark-use` - While this may be implicitly true of all licenses, this license explicitly states that it does NOT grant you any rights in the trademarks or other marks of contributors. * `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. * `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. * `patent-use` - This license explicitly states that it does NOT grant you any rights in the patents of contributors.

View File

@ -2,9 +2,13 @@
# The available fields are: # The available fields are:
- name: title - name: title
description: The SPDX-compliant, human-readable license name description: The license full name specified by http://spdx.org/licenses/
required: true required: true
- name: spdx-id
description: Short identifier specified by http://spdx.org/licenses/
required: required
- name: source - name: source
description: The URL to the license source text description: The URL to the license source text
required: true required: true
@ -35,6 +39,10 @@
description: Whether the license should be featured on the main page (defaults to false) description: Whether the license should be featured on the main page (defaults to false)
required: false required: false
- name: nickname
description: Customary short name if applicable (e.g, GPLv3)
required: false
- name: note - name: note
description: Additional information about the licenses description: Additional information about the licenses
required: false required: false
@ -46,7 +54,3 @@
- name: redirect_from - name: redirect_from
description: Relative path(s) to redirect to the license from, to prevent breaking old URLs description: Relative path(s) to redirect to the license from, to prevent breaking old URLs
required: false required: false
- name: nickname
description: A shorter, human-readable license name where the SPDX license name (`title` above) is long
required: false

View File

@ -33,7 +33,7 @@ permissions:
tag: patent-use tag: patent-use
limitations: limitations:
- description: While this may be implicitly true of all licenses, this license explicitly states that it does NOT grant you any rights in the trademarks or other marks of contributors. - description: 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.
label: Trademark Use label: Trademark Use
tag: trademark-use tag: trademark-use
- description: Software is provided without warranty and the software author/license owner cannot be held liable for damages. - description: Software is provided without warranty and the software author/license owner cannot be held liable for damages.

View File

@ -1,5 +1,6 @@
--- ---
title: Academic Free License v3.0 title: Academic Free License v3.0
spdx-id: AFL-3.0
source: http://opensource.org/licenses/afl-3.0 source: http://opensource.org/licenses/afl-3.0
description: The Academic Free License is a variant of the Open Software License that does not require that the source code of derivative works be disclosed. It contains explicit copyright and patent grants and reserves trademark rights in the author. description: The Academic Free License is a variant of the Open Software License that does not require that the source code of derivative works be disclosed. It contains explicit copyright and patent grants and reserves trademark rights in the author.

View File

@ -1,5 +1,6 @@
--- ---
title: GNU Affero General Public License v3.0 title: GNU Affero General Public License v3.0
spdx-id: AGPL-3.0
nickname: GNU AGPLv3 nickname: GNU AGPLv3
redirect_from: /licenses/agpl/ redirect_from: /licenses/agpl/
source: http://www.gnu.org/licenses/agpl-3.0.txt source: http://www.gnu.org/licenses/agpl-3.0.txt

View File

@ -1,5 +1,6 @@
--- ---
title: Apache License 2.0 title: Apache License 2.0
spdx-id: Apache-2.0
redirect_from: /licenses/apache/ redirect_from: /licenses/apache/
source: http://www.apache.org/licenses/LICENSE-2.0.html source: http://www.apache.org/licenses/LICENSE-2.0.html
featured: true featured: true

View File

@ -1,5 +1,6 @@
--- ---
title: Artistic License 2.0 title: Artistic License 2.0
spdx-id: Artistic-2.0
redirect_from: /licenses/artistic/ redirect_from: /licenses/artistic/
source: http://www.perlfoundation.org/attachment/legal/artistic-2_0.txt source: http://www.perlfoundation.org/attachment/legal/artistic-2_0.txt

View File

@ -1,6 +1,6 @@
--- ---
title: BSD 2-clause "Simplified" License title: BSD 2-clause "Simplified" License
nickname: BSD 2-Clause spdx-id: BSD-2-Clause
redirect_from: /licenses/bsd/ redirect_from: /licenses/bsd/
source: http://opensource.org/licenses/BSD-2-Clause source: http://opensource.org/licenses/BSD-2-Clause

View File

@ -1,5 +1,6 @@
--- ---
title: BSD 3-clause Clear License title: BSD 3-clause Clear License
spdx-id: BSD-3-Clause-Clear
description: A variant of the <a href="/licenses/bsd-3-clause/">BSD 3-Clause License</a> that explicitly does not grant any patent rights. description: A variant of the <a href="/licenses/bsd-3-clause/">BSD 3-Clause License</a> that explicitly does not grant any patent rights.
@ -37,7 +38,7 @@ below) provided that the following conditions are met:
this list of conditions and the following disclaimer in the documentation this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution. and/or other materials provided with the distribution.
* Neither the name of [project] nor the names of its contributors may be used * Neither the name of the copyright holder nor the names of its contributors may be used
to endorse or promote products derived from this software without specific to endorse or promote products derived from this software without specific
prior written permission. prior written permission.

View File

@ -1,6 +1,6 @@
--- ---
title: BSD 3-clause "New" or "Revised" License title: BSD 3-clause "New" or "Revised" License
nickname: BSD 3-Clause spdx-id: BSD-3-Clause
source: http://opensource.org/licenses/BSD-3-Clause source: http://opensource.org/licenses/BSD-3-Clause
description: A permissive license similar to the <a href="/licenses/bsd-2-clause/">BSD 2-Clause License</a>, but with a 3rd clause that prohibits others from using the name of the project or its contributors to promote derived products without written consent. description: A permissive license similar to the <a href="/licenses/bsd-2-clause/">BSD 2-Clause License</a>, but with a 3rd clause that prohibits others from using the name of the project or its contributors to promote derived products without written consent.
@ -35,7 +35,7 @@ modification, are permitted provided that the following conditions are met:
this list of conditions and the following disclaimer in the documentation this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution. and/or other materials provided with the distribution.
* Neither the name of [project] nor the names of its * Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from contributors may be used to endorse or promote products derived from
this software without specific prior written permission. this software without specific prior written permission.

View File

@ -1,6 +1,6 @@
--- ---
title: Creative Commons Attribution 4.0 title: Creative Commons Attribution 4.0
nickname: CC-BY-4.0 spdx-id: CC-BY-4.0
source: https://creativecommons.org/licenses/by/4.0/legalcode.txt source: https://creativecommons.org/licenses/by/4.0/legalcode.txt
description: Permits almost any use subject to providing credit and license notice. Frequently used for media assets and educational materials. The most common license for Open Access scientific publications. Not recommended for software. description: Permits almost any use subject to providing credit and license notice. Frequently used for media assets and educational materials. The most common license for Open Access scientific publications. Not recommended for software.

View File

@ -1,6 +1,6 @@
--- ---
title: Creative Commons Attribution Share Alike 4.0 title: Creative Commons Attribution Share Alike 4.0
nickname: CC-BY-SA-4.0 spdx-id: CC-BY-SA-4.0
source: https://creativecommons.org/licenses/by-sa/4.0/legalcode.txt source: https://creativecommons.org/licenses/by-sa/4.0/legalcode.txt
description: Similar to <a href='/licenses/cc-by-4.0/'>CC-BY-4.0</a> but requires derivatives be distributed under the same or a similar, <a href="https://creativecommons.org/compatiblelicenses/">compatible</a> license. Frequently used for media assets and educational materials. A previous version is the default license for Wikipedia and other Wikimedia projects. Not recommended for software. description: Similar to <a href='/licenses/cc-by-4.0/'>CC-BY-4.0</a> but requires derivatives be distributed under the same or a similar, <a href="https://creativecommons.org/compatiblelicenses/">compatible</a> license. Frequently used for media assets and educational materials. A previous version is the default license for Wikipedia and other Wikimedia projects. Not recommended for software.

View File

@ -1,6 +1,6 @@
--- ---
title: Creative Commons Zero v1.0 Universal title: Creative Commons Zero v1.0 Universal
nickname: CC0 1.0 Universal spdx-id: CC0-1.0
redirect_from: /licenses/cc0/ redirect_from: /licenses/cc0/
source: http://creativecommons.org/publicdomain/zero/1.0/ source: http://creativecommons.org/publicdomain/zero/1.0/

View File

@ -1,5 +1,6 @@
--- ---
title: Eclipse Public License 1.0 title: Eclipse Public License 1.0
spdx-id: EPL-1.0
redirect_from: /licenses/eclipse/ redirect_from: /licenses/eclipse/
source: https://www.eclipse.org/legal/epl-v10.html source: https://www.eclipse.org/legal/epl-v10.html

View File

@ -1,6 +1,6 @@
--- ---
title: European Union Public License 1.1 title: European Union Public License 1.1
nickname: EUPL-1.1 spdx-id: EUPL-1.1
redirect_from: /licenses/eupl-v1.1/ redirect_from: /licenses/eupl-v1.1/
source: https://joinup.ec.europa.eu/community/eupl/og_page/european-union-public-licence-eupl-v11 source: https://joinup.ec.europa.eu/community/eupl/og_page/european-union-public-licence-eupl-v11

View File

@ -1,5 +1,6 @@
--- ---
title: GNU General Public License v2.0 title: GNU General Public License v2.0
spdx-id: GPL-2.0
nickname: GNU GPLv2 nickname: GNU GPLv2
redirect_from: /licenses/gpl-v2/ redirect_from: /licenses/gpl-v2/
source: http://www.gnu.org/licenses/gpl-2.0.txt source: http://www.gnu.org/licenses/gpl-2.0.txt

View File

@ -1,5 +1,6 @@
--- ---
title: GNU General Public License v3.0 title: GNU General Public License v3.0
spdx-id: GPL-3.0
nickname: GNU GPLv3 nickname: GNU GPLv3
redirect_from: /licenses/gpl-v3/ redirect_from: /licenses/gpl-v3/
source: http://www.gnu.org/licenses/gpl-3.0.txt source: http://www.gnu.org/licenses/gpl-3.0.txt

View File

@ -1,5 +1,6 @@
--- ---
title: ISC License title: ISC License
spdx-id: ISC
source: http://opensource.org/licenses/isc-license source: http://opensource.org/licenses/isc-license
description: A permissive license lets people do anything with your code with proper attribution and without warranty. The ISC license is functionally equivalent to the <a href="/licenses/bsd-2-clause/">BSD 2-Clause</a> and <a href="/licenses/mit/">MIT</a> licenses, removing some language that is no longer necessary. description: A permissive license lets people do anything with your code with proper attribution and without warranty. The ISC license is functionally equivalent to the <a href="/licenses/bsd-2-clause/">BSD 2-Clause</a> and <a href="/licenses/mit/">MIT</a> licenses, removing some language that is no longer necessary.

View File

@ -1,5 +1,6 @@
--- ---
title: GNU Lesser General Public License v2.1 title: GNU Lesser General Public License v2.1
spdx-id: LGPL-2.1
nickname: GNU LGPLv2.1 nickname: GNU LGPLv2.1
redirect_from: /licenses/lgpl-v2.1/ redirect_from: /licenses/lgpl-v2.1/
source: http://www.gnu.org/licenses/lgpl-2.1.txt source: http://www.gnu.org/licenses/lgpl-2.1.txt

View File

@ -1,5 +1,6 @@
--- ---
title: GNU Lesser General Public License v3.0 title: GNU Lesser General Public License v3.0
spdx-id: LGPL-3.0
nickname: GNU LGPLv3 nickname: GNU LGPLv3
redirect_from: /licenses/lgpl-v3/ redirect_from: /licenses/lgpl-v3/
source: http://www.gnu.org/licenses/lgpl-3.0.txt source: http://www.gnu.org/licenses/lgpl-3.0.txt

View File

@ -1,6 +1,6 @@
--- ---
title: LaTeX Project Public License v1.3c title: LaTeX Project Public License v1.3c
nickname: LPPL-1.3c spdx-id: LPPL-1.3c
source: https://latex-project.org/lppl/lppl-1-3c.html source: https://latex-project.org/lppl/lppl-1-3c.html
description: The LaTeX Project Public License (LPPL) is the primary license under which the LaTeX kernel and the base LaTeX packages are distributed. description: The LaTeX Project Public License (LPPL) is the primary license under which the LaTeX kernel and the base LaTeX packages are distributed.

View File

@ -1,5 +1,6 @@
--- ---
title: MIT License title: MIT License
spdx-id: MIT
source: https://opensource.org/licenses/MIT source: https://opensource.org/licenses/MIT
featured: true featured: true

View File

@ -1,5 +1,6 @@
--- ---
title: Mozilla Public License 2.0 title: Mozilla Public License 2.0
spdx-id: MPL-2.0
redirect_from: /licenses/mozilla/ redirect_from: /licenses/mozilla/
source: https://www.mozilla.org/media/MPL/2.0/index.txt source: https://www.mozilla.org/media/MPL/2.0/index.txt

View File

@ -1,5 +1,6 @@
--- ---
title: Microsoft Public License title: Microsoft Public License
spdx-id: MS-PL
source: http://opensource.org/licenses/ms-pl source: http://opensource.org/licenses/ms-pl

View File

@ -1,5 +1,6 @@
--- ---
title: Microsoft Reciprocal License title: Microsoft Reciprocal License
spdx-id: MS-RL
source: http://opensource.org/licenses/ms-pl source: http://opensource.org/licenses/ms-pl

View File

@ -1,5 +1,6 @@
--- ---
title: SIL Open Font License 1.1 title: SIL Open Font License 1.1
spdx-id: OFL-1.1
redirect_from: /licenses/ofl/ redirect_from: /licenses/ofl/
source: http://scripts.sil.org/OFL_web source: http://scripts.sil.org/OFL_web

View File

@ -1,5 +1,6 @@
--- ---
title: Open Software License 3.0 title: Open Software License 3.0
spdx-id: OSL-3.0
source: http://opensource.org/licenses/OSL-3.0 source: http://opensource.org/licenses/OSL-3.0
description: OSL 3.0 is a copyleft license that does not require reciprocal licensing on linked works. It also provides an express grant of patent rights from contributors to users, with a termination clause triggered if a user files a patent infringement lawsuit. description: OSL 3.0 is a copyleft license that does not require reciprocal licensing on linked works. It also provides an express grant of patent rights from contributors to users, with a termination clause triggered if a user files a patent infringement lawsuit.

View File

@ -1,5 +1,6 @@
--- ---
title: The Unlicense title: The Unlicense
spdx-id: Unlicense
source: http://unlicense.org/UNLICENSE source: http://unlicense.org/UNLICENSE
description: A license with no conditions whatsoever which dedicates works to the public domain. Unlicensed works, modifications, and larger works may be distributed under different terms and without source code. description: A license with no conditions whatsoever which dedicates works to the public domain. Unlicensed works, modifications, and larger works may be distributed under different terms and without source code.

View File

@ -1,5 +1,6 @@
--- ---
title: "Do What The F*ck You Want To Public License" title: "Do What The F*ck You Want To Public License"
spdx-id: WTFPL
source: http://www.wtfpl.net/ source: http://www.wtfpl.net/
description: The easiest licence out there. It gives the user permissions to do whatever they want with your code. description: The easiest licence out there. It gives the user permissions to do whatever they want with your code.

View File

@ -10,7 +10,9 @@ If you already know what you're doing and have a license you prefer to use, that
## Not comprehensive ## Not comprehensive
This site is not a comprehensive directory of open source licenses. We think there are too many options, which adds to the confusion. On the homepage, we break it down into just three licenses. The vast majority of projects will likely be fine choosing from one of these three. Just in case you have specific needs not covered by those three, we also highlight a [few other licenses to consider](/licenses/). This site is not a comprehensive directory of open source licenses. We think there are too many options, which adds to the confusion. On the [homepage](/), we break it down into just three licenses. The vast majority of projects will likely be fine choosing from one of these three. Just in case you have specific needs not covered by those three, we also highlight a [few other licenses to consider](/licenses/), and have a page about [licenses for non-software projects](/non-software/).
See our [appendix](/appendix) for a table of all of the licenses cataloged in the choosealicense.com repository and the links below for *even more licenses* that you **do not** need to learn about when choosing a license for your project.
### Additional resources ### Additional resources
@ -18,6 +20,7 @@ This site is not a comprehensive directory of open source licenses. We think the
* Open Source Initiative's [list of licenses](https://opensource.org/licenses/) approved as conforming to the [Open Source Definition](https://opensource.org/osd) * Open Source Initiative's [list of licenses](https://opensource.org/licenses/) approved as conforming to the [Open Source Definition](https://opensource.org/osd)
* Free Software Foundation's [comments on various licenses](http://www.gnu.org/licenses/license-list.html) * Free Software Foundation's [comments on various licenses](http://www.gnu.org/licenses/license-list.html)
* Linux Foundation's [SPDX License List](https://spdx.org/licenses/)
* [Comparison of free and open-source software licenses](https://en.wikipedia.org/wiki/Comparison_of_free_and_open-source_software_licenses) on English Wikipedia * [Comparison of free and open-source software licenses](https://en.wikipedia.org/wiki/Comparison_of_free_and_open-source_software_licenses) on English Wikipedia
* [License differentiator](http://www.oss-watch.ac.uk/apps/licdiff/) ([source](https://github.com/ox-it/licdiff)) from [OSS Watch](http://www.oss-watch.ac.uk/) * [License differentiator](http://www.oss-watch.ac.uk/apps/licdiff/) ([source](https://github.com/ox-it/licdiff)) from [OSS Watch](http://www.oss-watch.ac.uk/)
* [Free/Libre/Open Source license selection wizard](http://home.ccil.org/~cowan/floss/) by John Cowan * [Free/Libre/Open Source license selection wizard](http://home.ccil.org/~cowan/floss/) by John Cowan

85
appendix.md Normal file
View File

@ -0,0 +1,85 @@
---
layout: default
permalink: /appendix/
title: Appendix
class: license-types
---
All licenses described in the choosealicense.com [repository](https://github.com/github/choosealicense.com), in a table.
<table border style="font-size: xx-small">
{% assign types = "permissions|conditions|limitations" | split: "|" %}
<tr>
<th scope="col" style="text-align: center">License</th>
{% assign seen_tags = '' %}
{% for type in types %}
{% assign rules = site.data.rules[type] | sort: "label" %}
{% for rule_obj in rules %}
{% if seen_tags contains rule_obj.tag %}
{% continue %}
{% endif %}
{% capture seen_tags %}{{ seen_tags | append:rule_obj.tag }}{% endcapture %}
<th scope="col" style="text-align: center; width:7%"><a href="#{{ rule_obj.tag }}">{{ rule_obj.label }}</a></th>
{% endfor %}
{% endfor %}
</tr>
{% for license in site.licenses | sort: 'path' %}
<tr style="height: 3em"><th scope="row"><a href="{{ license.id }}">{{ license.title }}</a></th>
{% assign seen_tags = '' %}
{% for type in types %}
{% assign rules = site.data.rules[type] | sort: "label" %}
{% for rule_obj in rules %}
{% assign req = rule_obj.tag %}
{% if seen_tags contains req %}
{% continue %}
{% endif %}
{% capture seen_tags %}{{ seen_tags | append:req }}{% endcapture %}
{% assign seen_req = false %}
{% for t in types %}
{% if license[t] contains req %}
<td class="license-{{ t }}" style="text-align:center">
<span class="{{ req }}">
<span class="license-sprite {{ req }}"></span>
</span>
</td>
{% assign seen_req = true %}
{% endif %}
{% endfor %}
{% unless seen_req %}
<td></td>
{% endunless %}
{% endfor %}
{% endfor %}
</tr>
{% endfor %}
</table>
## Legend
<p>Open source licenses grant to the public <b>permissions</b> (<span class="license-permissions"><span class="license-sprite"></span></span>) to do things with licensed works copyright or other "intellectual property" laws might otherwise disallow.</p>
<p>Most open source licenses' grants of permissions are subject to compliance with <b>conditions</b> (<span class="license-conditions"><span class="license-sprite"></span></span>).</p>
<p>Most open source licenses also have <b>limitations</b> (<span class="license-limitations"><span class="license-sprite"></span></span>) that usually disclaim warranty and liability and sometimes expressly exclude patent or trademark from licenses' grants.</p>
<dl>
{% assign seen_tags = '' %}
{% for type in types %}
{% assign rules = site.data.rules[type] | sort: "label" %}
{% for rule_obj in rules %}
{% assign req = rule_obj.tag %}
{% if seen_tags contains req %}
{% continue %}
{% endif %}
<dt id="{{ req }}">{{ rule_obj.label }}</dt>
{% capture seen_tags %}{{ seen_tags | append:req }}{% endcapture %}
{% for t in types %}
{% for r in site.data.rules[t] | sort: "label" %}
{% if r.tag == req %}
<dd class="license-{{t}}"><span class="license-sprite"></span> {{ r.description }}</dd>
{% endif %}
{% endfor %}
{% endfor %}
{% endfor %}
{% endfor %}
</dl>

View File

@ -38,11 +38,11 @@ class Choosealicense
# Dynamically add annotations as title attribute to rule list items # Dynamically add annotations as title attribute to rule list items
for ruletype, rules of window.annotations for ruletype, rules of window.annotations
for rule in rules for rule in rules
$(".license-rules ul.license-#{ruletype} li.#{rule["tag"]}").attr "title", rule["description"] $(".license-#{ruletype} .#{rule["tag"]}").attr "title", rule["description"]
# Init tooltips on all rule list items # Init tooltips on all rule list items
for ruletype, label of @ruletypes for ruletype, label of @ruletypes
$(".license-#{ruletype} li").qtip $(".license-#{ruletype} li, .license-#{ruletype} .license-sprite").qtip
content: content:
text: false text: false
title: title:

View File

@ -20,11 +20,13 @@ You don't have to do anything to not offer a license, though including a copyrig
Disallowing use of your code might not be what you intend by "no license." An [open-source license](/) allows reuse of your code while retaining copyright. If your goal is to completely opt-out of copyright restrictions, try a [public domain dedication](/licenses/#unlicense). Disallowing use of your code might not be what you intend by "no license." An [open-source license](/) allows reuse of your code while retaining copyright. If your goal is to completely opt-out of copyright restrictions, try a [public domain dedication](/licenses/#unlicense).
Even in the absence of a license file, you may grant some rights in cases where you publish your source code to a site that requires accepting terms of service. For example, if you publish your source code in a public repository on GitHub, you have accepted the [Terms of Service](https://help.github.com/articles/github-terms-of-service) by which you allow others to view and fork your repository. Even in the absence of a license file, you may grant some rights in cases where you publish your source code to a site that requires accepting terms of service. For example, if you publish your source code in a public repository on GitHub, you have accepted the [Terms of Service](https://help.github.com/articles/github-terms-of-service), by which you allow others to view and fork your repository; but this alone does not allow for the kinds of collaboration that people usually seek on a public code host, such as experimentation, modification, and sharing as fostered by an open source license.
## For users ## For users
If you find software that doesn't have a license, that generally means you have no permission from the creators of the software to use, modify, or share the software. Your options: If you find software that doesn't have a license, that generally means you have no permission from the creators of the software to use, modify, or share the software. Although a code host such as GitHub may allow you to download or fork the code, this does not imply that you are permitted to use, modify, or share the software for any purpose.
Your options:
**Ask the maintainers nicely to add a license.** Unless the software includes strong indications to the contrary, lack of a license is probably an oversight. If the software is hosted on a site like GitHub, open an issue requesting a license and include a link to this site, or if you're bold and it's fairly obvious what license is most appropriate, open a pull request to add a license. **Ask the maintainers nicely to add a license.** Unless the software includes strong indications to the contrary, lack of a license is probably an oversight. If the software is hosted on a site like GitHub, open an issue requesting a license and include a link to this site, or if you're bold and it's fairly obvious what license is most appropriate, open a pull request to add a license.

View File

@ -3,7 +3,7 @@ require 'spec_helper'
describe 'license meta' do describe 'license meta' do
licenses.each do |license| licenses.each do |license|
# Manually load the raw license so we don't get the defaults # Manually load the raw license so we don't get the defaults
raw_fields = SafeYAML.load_file("_licenses/#{license['id']}.txt") raw_fields = SafeYAML.load_file("_licenses/#{license['spdx-lcase']}.txt")
context "The #{license['title']} license" do context "The #{license['title']} license" do
it 'should only contain supported meta fields' do it 'should only contain supported meta fields' do

View File

@ -7,21 +7,26 @@ describe 'licenses' do
licenses.each do |license| licenses.each do |license|
context "The #{license['title']} license" do context "The #{license['title']} license" do
let(:id) { license['id'] } let(:spdx_lcase) { license['spdx-lcase'] }
let(:spdx_id) { license['spdx-id'] }
it 'has an SPDX ID' do it 'has an SPDX ID' do
expect(spdx_ids).to include(id) expect(spdx_ids).to include(spdx_id)
end
it 'has an ID that is downcased SPDX ID' do
expect(spdx_id.casecmp(spdx_lcase).zero?)
end end
it 'uses its SPDX name' do it 'uses its SPDX name' do
spdx = find_spdx(id) spdx = find_spdx(spdx_id)
expect(spdx).to_not be_nil expect(spdx).to_not be_nil
expect(spdx[1]['name'].gsub(/ only$/, '')).to eql(license['title']) expect(spdx[1]['name'].gsub(/ only$/, '')).to eql(license['title'])
end end
context 'industry approval' do context 'industry approval' do
it 'should be approved by OSI or FSF or OD' do it 'should be approved by OSI or FSF or OD' do
expect(approved_licenses).to include(id), 'See https://git.io/vzCTV.' expect(approved_licenses).to include(spdx_lcase), 'See https://git.io/vzCTV.'
end end
end end

View File

@ -34,16 +34,12 @@ end
def licenses def licenses
SpecHelper.licenses ||= begin SpecHelper.licenses ||= begin
site.collections['licenses'].docs.map do |license| site.collections['licenses'].docs.map do |license|
id = File.basename(license.basename, '.txt') spdx_lcase = File.basename(license.basename, '.txt')
license.to_liquid.merge('id' => id) license.to_liquid.merge('spdx-lcase' => spdx_lcase)
end end
end end
end end
def license_ids
licenses.map { |l| l['id'] }
end
def site def site
SpecHelper.site ||= begin SpecHelper.site ||= begin
site = Jekyll::Site.new(config) site = Jekyll::Site.new(config)
@ -75,11 +71,11 @@ def spdx_list
end end
def spdx_ids def spdx_ids
spdx_list.map { |name, _properties| name.downcase } spdx_list.map { |name, _properties| name }
end end
def find_spdx(license) def find_spdx(license)
spdx_list.find { |name, _properties| name.casecmp(license).zero? } spdx_list.find { |name, _properties| name == license }
end end
def osi_approved_licenses def osi_approved_licenses