diff --git a/Makefile b/Makefile index 9d1b40c9a4..4a4e34c624 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ # SPDX-License-Identifier: CC-BY-4.0 AND Apache-2.0 # # https://github.com/nexB/scancode-licensedb -# Copyright 2020 nexB Inc. and others. +# Copyright (c) nexB Inc. and others. # ScanCode is a trademark of nexB Inc. # # ScanCode LicenseDB data is licensed under the Creative Commons Attribution @@ -35,12 +35,13 @@ BLACK_ARGS=--exclude="docs" . conf: @echo "-> Configure the Python venv and install dependencies" - ${PYTHON_EXE} -m venv . - @${ACTIVATE} pip install scancode-toolkit + ${PYTHON_EXE} -m venv venv + @venv/bin/pip install --upgrade pip + @venv/bin/pip install scancode-toolkit upgrade: @echo "-> Configure the Python venv and install dependencies" - @${ACTIVATE} pip install --upgrade scancode-toolkit + @venv/bin/pip install --upgrade scancode-toolkit clean: # Remove the whole content of docs/ except for the CNAME file @@ -48,19 +49,19 @@ clean: isort: @echo "-> Apply isort changes to ensure proper imports ordering" - @${ACTIVATE} pip install isort==5.6.4 - bin/isort app.py + @venv/bin/pip install isort==5.6.4 + @venv/bin/isort app.py black: @echo "-> Apply black code formatter" - @${ACTIVATE} pip install black==20.8b1 isort - bin/black ${BLACK_ARGS} + @venv/bin/pip install black==20.8b1 isort + @venv/bin/black ${BLACK_ARGS} valid: isort black html: @echo "-> Generate the HTML content" - @bin/python app.py + @venv/bin/python app.py @echo "-> Copy the static assets" @cp -R static/ docs/static/ @echo "Available at docs/index.html" diff --git a/NOTICE b/NOTICE index 8f71feb639..c9a0daaeb7 100644 --- a/NOTICE +++ b/NOTICE @@ -1,7 +1,7 @@ SPDX-License-Identifier: CC-BY-4.0 AND Apache-2.0 https://github.com/nexB/scancode-licensedb -Copyright 2020 nexB Inc. and others. +Copyright (c) nexB Inc. and others. ScanCode is a trademark of nexB Inc. ScanCode LicenseDB data is licensed under the Creative Commons Attribution diff --git a/README.md b/README.md deleted file mode 100644 index ed6285d585..0000000000 --- a/README.md +++ /dev/null @@ -1,55 +0,0 @@ -ScanCode LicenseDB -================== - -Browse ------- - -https://scancode-licensedb.aboutcode.org/ - -Build ------ - -Generate the HTML content with: - - $ make build - -Upgrade -------- - -Upgrade the ScanCode-toolkit and generate the HTML content: - - $ make clean upgrade build publish - -License -------- - -SPDX-License-Identifier: CC-BY-4.0 AND Apache-2.0 - -https://github.com/nexB/scancode-licensedb -Copyright 2020 nexB Inc. and others. -ScanCode is a trademark of nexB Inc. - -ScanCode LicenseDB data is licensed under the Creative Commons Attribution -License 4.0 (CC-BY-4.0). -Some licenses, such as the GNU GENERAL PUBLIC LICENSE, are subject to other licenses. -See the corresponding license text for the specific license conditions. - -ScanCode LicenseDB software is licensed under the Apache License version 2.0. -You may not use this software except in compliance with the License. -You may obtain a copy of the License at: http://apache.org/licenses/LICENSE-2.0 -Unless required by applicable law or agreed to in writing, software distributed -under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR -CONDITIONS OF ANY KIND, either express or implied. See the License for the -specific language governing permissions and limitations under the License. - -ScanCode LicenseDB is generated with ScanCode Toolkit. The database and its contents -are provided on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, -either express or implied. -No content from ScanCode LicenseDB should be considered or used as legal advice. -Consult an attorney for any legal advice. - -Visit https://github.com/nexB/scancode-licensedb for support. - -ScanCode Toolkit is a free Software Composition Analysis tool from nexB Inc. and -others. -Visit https://github.com/nexB/scancode-toolkit for support and download. diff --git a/README.rst b/README.rst new file mode 100644 index 0000000000..97b2b84823 --- /dev/null +++ b/README.rst @@ -0,0 +1,129 @@ +ScanCode LicenseDB +==================== + +LicenseDB is likely the largest collection of software licenses available on +Earth and maybe beyond. + +LicenseDB is a free and open database of mostly all the software licenses, in +particular all the open-source software licenses, with over 2000 curated licenses +texts and their metadata. + +LicenseDB is built from the ScanCode Toolkit license dataset. ScanCode Toolkit +is a leading open source code scanner and license detection engine. + +LicenseDB is an essential reference license resource for license compliance and +SBOMs. LicenseDB includes all the SPDX and OSI licenses together with an extended +curated collection of other licenses and license metadata. These licenses are +carefully reviewed and curated and continusouly updated by an open community of +contributors. + +LicenseDB is available as a web site, an JSON or YAML API and a git repository +making it easy to reuse and integrate in tools that need a database of reference +software licenses. + + +Browse +------ + +The web site is published at: https://scancode-licensedb.aboutcode.org/ +You can search the licenses by name, key and other attributes. + + +API +------ + +The index is available at either: + +- as JSON: https://scancode-licensedb.aboutcode.org/index.json +- as YAML: https://scancode-licensedb.aboutcode.org/index.yml + +The index contains a list of the license keys with key metadata and links to the +license details and texts using this license key as an identifier: + +- as JSON: https://scancode-licensedb.aboutcode.org/.json + for instance: https://scancode-licensedb.aboutcode.org/gpl-2.0.json + +- as YAML: https://scancode-licensedb.aboutcode.org/.yml + for instance: https://scancode-licensedb.aboutcode.org/gpl-2.0.yml + +- as text for the full license text: https://scancode-licensedb.aboutcode.org/.LICENSE + for instance: https://scancode-licensedb.aboutcode.org/gpl-2.0.LICENSE + + +This index and the static website is also available offline with ScanCode Toolkit as a +command line option `--get-license-data`. + + +Git +----- + +This git repository contains the full history of the generated HTML and JSON API +documents: https://github.com/nexB/scancode-licensedb + + +This git repository contains the original and editable source files: +https://github.com/nexB/scancode-toolkit + +- for the text of a license and the metadata of a license as YAML frontmatter, for instance at + https://github.com/nexB/scancode-toolkit/tree/develop/src/licensedcode/data/licenses/gpl-2.0.LICENSE + + +Support +-------- + +- Chat with us at: https://gitter.im/aboutcode-org/discuss +- Report issues or ask questions at: https://github.com/nexB/scancode-toolkit/issues and + https://github.com/nexB/scancode-licensedb/issues +- Visit https://www.aboutcode.org/ for more open source and open data projects. + + +Build +----- + +To re/generate the HTML and API content use this command:: + + $ make build + + +Upgrade +------- + +To upgrade to the latest scancode-toolkit and generate the HTML and API content +run this command:: + + $ make clean upgrade build publish + + +License +------- + +SPDX-License-Identifier: CC-BY-4.0 AND Apache-2.0 + +https://github.com/nexB/scancode-licensedb +Copyright (c) nexB Inc. and others. +ScanCode is a trademark of nexB Inc. + +ScanCode LicenseDB data is licensed under the Creative Commons Attribution +License 4.0 (CC-BY-4.0). +Some licenses, such as the GNU GENERAL PUBLIC LICENSE, are subject to other licenses. +See the corresponding license text for the specific license conditions. + +ScanCode LicenseDB software is licensed under the Apache License version 2.0. +You may not use this software except in compliance with the License. +You may obtain a copy of the License at: http://apache.org/licenses/LICENSE-2.0 +Unless required by applicable law or agreed to in writing, software distributed +under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the License for the +specific language governing permissions and limitations under the License. + +ScanCode LicenseDB is generated with ScanCode Toolkit. The database and its contents +are provided on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, +either express or implied. +No content from ScanCode LicenseDB should be considered or used as legal advice. +Consult an attorney for any legal advice. + +Visit https://github.com/nexB/scancode-licensedb for support. + +ScanCode Toolkit is a free Software Composition Analysis tool from nexB Inc. and +others. +Visit https://github.com/nexB/scancode-toolkit for support and download. diff --git a/app.py b/app.py index 4a1f25b533..19c17c87fe 100644 --- a/app.py +++ b/app.py @@ -1,7 +1,7 @@ # SPDX-License-Identifier: CC-BY-4.0 AND Apache-2.0 # # https://github.com/nexB/scancode-licensedb -# Copyright 2020 nexB Inc. and others. +# Copyright (c) nexB Inc. and others. # ScanCode is a trademark of nexB Inc. # # ScanCode LicenseDB data is licensed under the Creative Commons Attribution diff --git a/templates/help.html b/templates/help.html index 6e7edf2f8a..62337f005d 100644 --- a/templates/help.html +++ b/templates/help.html @@ -7,193 +7,344 @@ -

- Field Definitions -

-
-
key
-
- The unique identifier for the license in the ScanCode LicenseDB as assigned by scancode-toolkit. - Note that this identifier is permanent and never changes and never goes away once published: no license key is ever deleted. - Instead a license can be marked as deprecated. -
- -
short_name
-
A short descriptive name (title) for the license in the ScanCode LicenseDB as assigned by scancode-toolkit.
- -
name
-
A long name for the license in the ScanCode LicenseDB as assigned by scancode-toolkit.
- -
is_deprecated
-
- When this is “yes”, the license is no longer used. For deprecated licenses, the notes may contain commentaries - and the license key that this license may be replaced by when relevant. -
- -
spdx_license_key
-
- The SPDX Short Identifier for the license if it exists in the SPDX license list at - https://spdx.org/licenses/. - Otherwise this is an SPDX license reference in the form of LicenseRef-scancode-<license key>. -
- -
other_spdx_license_keys
-
Alternative (or older, deprecated or obsolete) SPDX Short Identifiers or LicenseRef for the license.
- -
text_urls
-
URLs to the standard text of the license.
- -
notes
-
Notes and comments about the license.
- -
category
-
- A license category code, assigned by scancode-toolkit, that provides a major grouping for licenses, - generally describing the relationship between the licensor and the licensee. These license categories are not - legally precise, and are only intended to support Software Composition Analysis and usage policy implementations. -
- -
owner
-
- An owner is an entity that is the original author or custodian of a software license, and which may be responsible - for the text of the license. This is mandatory and should be set to "Unspecified" if it cannot be determined. -
- -
homepage_url
-
The homepage URL where the license is described.
- -
other_urls
-
- Other URLs that identify or are related to this license, such as URLs to this license in different open-source projects. - Obsolete links may be kept here, as they may be useful for historical analysis purposes. -
- -
osi_license_key
-
The identifier assigned by the OSI to a license for OSI-approved licenses.
- -
osi_url
-
A URL on the OSI website http://opensource.org for OSI-approved licenses.
- -
faq_url
-
A URL that provides answers to frequently asked questions about the license.
- -
is_exception
-
- When this is "yes", indicates that this license is actually an exception applied to another license in order to - modify specific conditions of that other license. -
- -
standard_notice
-
The standard text to provide in source or documentation that identifies the license or exception that applies to the software.
-
- -
These fields are used only to support certain technical aspects of code scanning:
-
-
ignorable_urls
-
URLs found in the license text but that can be ignored when scanning for URLs.
- -
ignorable_emails
-
Email addresses found in the license text but that can be ignored when scanning for emails.
- -
ignorable_copyrights
-
Copyright statements found in the license text but that can be ignored when scanning for copyright.
- -
ignorable_holders
-
Copyright holders found in the license text but that can be ignored when scanning for copyright holders.
- -
ignorable_authors
-
Author names found in the license text but that can be ignored when scanning for authors.
- -
minimum_coverage
-
Minimum percentage of the license text words that need to be matched to consider a license detection as a valid match.
-
+
+

+ LicenseDB overview +

+

LicenseDB is likely the largest collection of software licenses available on + earth and may be beyond. +

+ +

LicenseDB is a free and open database of mostly all the software licenses, in + particular all the open source software licenses, with over 2000 curated licenses + texts and their metadata. +

+ +

LicenseDB is built from the ScanCode Toolkit license dataset. ScanCode Toolkit + is a leading open source code scanner and license detection engine.

+ +

LicenseDB is an essential reference license resource for license compliance and + SBOMs. LicenseDB includes all the SPDX and OSI licenses together with an extended + curated collection of other licenses and license metadata. These licenses are + carefully reviewed and curated and continusouly updated by an open community of + contributors.

+ +

LicenseDB is available as a web site, an JSON or YAML API and a git repository + making it easy to reuse and integrate in tools that need a database of reference + software licenses.

+

-

- License Categories -

-
-
Commercial
-
- A direct commercial license between a supplier and a customer. - Further fact-finding by a Product Team will be necessary to determine how the license conditions apply to use of the software. - This is a Proprietary license that is not Open Source. -
- -
Copyleft
-
- A license that offers irrevocable permission to the public to copy and redistribute the work in the same or modified form, - but with the conditions that all such redistributions make the work available in a form that facilitates further modification - and uses the same license terms. A Copyleft license can require code interacting with Copyleft-licensed code to be licensed under - the same license or a compatible license. This is an Open Source license. This category may be described as “Strong Copyleft”. -
- -
Copyleft Limited
-
- A license that requires you to redistribute source code, including your changes, and to provide attribution for the software authors. - Your obligation to redistribute source code, including proprietary code linked with code under this license, - is limited according to license-specific rules. This is an Open Source license. This category may be described as “Weak Copyleft”. -
- -
Free Restricted
-
- A Permissive-style license that contains restrictions regarding the usage of the software (e.g. where the software is not - intended for use in nuclear power plants) or the redistribution of the software (e.g. where commercial redistribution of - the software is not allowed or allowed only with express permission). The Free Software Foundation (FSF) says that a license - with this kind of restriction is not really open source, although the OSI point of view is not that strict. - This is a Proprietary license that is not Open Source. -
- -
Patent License
-
- A license that applies to patents rather than specific software. May be used in conjunction with other software license(s) that - apply to a software component. -
- -
Permissive
-
- A license that requires you to provide attribution for the software authors and may include other conditions. - This is an Open Source license. -
- -
Proprietary Free
-
- A license that does not require a supplier-customer contract, but has specific terms and conditions which a Product Team - is obligated to follow. These terms and conditions may be documented in the code and/or from a webpage where you must accept - the license (i.e. click-through). This is a Proprietary license that is not Open Source. -
- -
Public Domain
-
- “Public Domain” as a license category means software that is not restricted by copyright. - This is most often applicable to a software component because the person entitled to control the copyright has disclaimed that - right in a notice (“dedication”) that appears similar to a license. It is possible for software to be in the public domain - because the copyright has expired, but this is rarely relevant for software due to the long duration of copyrights in most jurisdictions. - The rules for disclaiming copyright and copyright expiration dates vary widely by jurisdiction. - A public domain dedication may apply to software code examples on a website, published public domain specifications or - another type of publication. Public Domain is typically treated as similar to an Open Source license even though it is not an - Open Source license. -
- -
Source-available
-
- A license where the software is released through a source code distribution model that includes conditions where the source - can be viewed, and in some cases modified, but without meeting the criteria to be called Open Source. - The most common restriction is for “field of use”. This is a Proprietary license that is not Open Source. -
- -
Unstated License
-
- “Unstated License” as a license category means third-party software that has a copyright notice, but no stated license. - Common examples include code snippets from publications and websites. The absence of a license poses a risk that the copyright - owner may assert license conditions at some future time. A Product Team may need to contact the copyright owner to determine the - license conditions, if any. -
-
+
+

+ LicenseDB web +

+ +

The web site is published at: https://scancode-licensedb.aboutcode.org/. + You can search the licenses by name, key and other attributes.

+
+ + +
+
+

+ LicenseDB API +

+ +

The API index is available at these endpoints:

+ +

The index contains a list of the license keys with key metadata and links to the + license details and texts using this license key as an identifier:

+ +
+ +
+
+

+ LicenseDB Git repositories +

+

This git repository contains the full history of the generated HTML and JSON API documents https://github.com/nexB/scancode-licensedb

+

This git repository contains the original and editable source files: https://github.com/nexB/scancode-toolkit

+ +
+ +
+
+

+ Support +

+ +
+ +
+
+

+ LicenseDB's own license +

+

SPDX-License-Identifier: CC-BY-4.0 AND Apache-2.0

+

https://github.com/nexB/scancode-licensedb + Copyright (c) nexB Inc. and others. + ScanCode is a trademark of nexB Inc.

+

ScanCode LicenseDB data is licensed under the Creative Commons Attribution + License 4.0 (CC-BY-4.0). + Some licenses, such as the GNU GENERAL PUBLIC LICENSE, are subject to other licenses. + See the corresponding license text for the specific license conditions.

+

ScanCode LicenseDB software is licensed under the Apache License version 2.0. + You may not use this software except in compliance with the License. + You may obtain a copy of the License at: http://apache.org/licenses/LICENSE-2.0 + Unless required by applicable law or agreed to in writing, software distributed + under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR + CONDITIONS OF ANY KIND, either express or implied. See the License for the + specific language governing permissions and limitations under the License.

+

ScanCode LicenseDB is generated with ScanCode Toolkit. The database and its contents + are provided on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, + either express or implied. + No content from ScanCode LicenseDB should be considered or used as legal advice. + Consult an attorney for any legal advice.

+

Visit https://github.com/nexB/scancode-licensedb for support.

+

ScanCode Toolkit is a free Software Composition Analysis tool from nexB Inc. and + others. + Visit https://github.com/nexB/scancode-toolkit for support and download.

+
+ + +
+
+

+ Field Definitions +

+
+
key
+
+ The unique identifier for the license in the ScanCode LicenseDB as assigned by scancode-toolkit. + Note that this identifier is permanent and never changes and never goes away once published: no license key is ever deleted. + Instead a license can be marked as deprecated. +
+ +
short_name
+
A short descriptive name (title) for the license in the ScanCode LicenseDB as assigned by scancode-toolkit.
+ +
name
+
A long name for the license in the ScanCode LicenseDB as assigned by scancode-toolkit.
+ +
is_deprecated
+
+ When this is “yes”, the license is no longer used. For deprecated licenses, the notes may contain commentaries + and the license key that this license may be replaced by when relevant. +
+ +
spdx_license_key
+
+ The SPDX Short Identifier for the license if it exists in the SPDX license list at + https://spdx.org/licenses/. + Otherwise this is an SPDX license reference in the form of LicenseRef-scancode-<license key>. +
+ +
other_spdx_license_keys
+
Alternative (or older, deprecated or obsolete) SPDX Short Identifiers or LicenseRef for the license.
+ +
text_urls
+
URLs to the standard text of the license.
+ +
notes
+
Notes and comments about the license.
+ +
category
+
+ A license category code, assigned by scancode-toolkit, that provides a major grouping for licenses, + generally describing the relationship between the licensor and the licensee. These license categories are not + legally precise, and are only intended to support Software Composition Analysis and usage policy implementations. +
+ +
owner
+
+ An owner is an entity that is the original author or custodian of a software license, and which may be responsible + for the text of the license. This is mandatory and should be set to "Unspecified" if it cannot be determined. +
+ +
homepage_url
+
The homepage URL where the license is described.
+ +
other_urls
+
+ Other URLs that identify or are related to this license, such as URLs to this license in different open-source projects. + Obsolete links may be kept here, as they may be useful for historical analysis purposes. +
+ +
osi_license_key
+
The identifier assigned by the OSI to a license for OSI-approved licenses.
+ +
osi_url
+
A URL on the OSI website http://opensource.org for OSI-approved licenses.
+ +
faq_url
+
A URL that provides answers to frequently asked questions about the license.
+ +
is_exception
+
+ When this is "yes", indicates that this license is actually an exception applied to another license in order to + modify specific conditions of that other license. +
+ +
standard_notice
+
The standard text to provide in source or documentation that identifies the license or exception that applies to the software.
+
+ +
These fields are used only to support certain technical aspects of code scanning:
+
+
ignorable_urls
+
URLs found in the license text but that can be ignored when scanning for URLs.
+ +
ignorable_emails
+
Email addresses found in the license text but that can be ignored when scanning for emails.
+ +
ignorable_copyrights
+
Copyright statements found in the license text but that can be ignored when scanning for copyright.
+ +
ignorable_holders
+
Copyright holders found in the license text but that can be ignored when scanning for copyright holders.
+ +
ignorable_authors
+
Author names found in the license text but that can be ignored when scanning for authors.
+ +
minimum_coverage
+
Minimum percentage of the license text words that need to be matched to consider a license detection as a valid match.
+
+
+ +
+
+

+ License Categories +

+
+
CLA
+
+ A Contributor License Agreement (CLA) describes and defines the contribution acceptance rules for the ongoing + development and enhancement of a software project. The CLA may specify how the resulting software contribution + itself will be licensed. +
+
Commercial
+
+ Third-party proprietary software offered under a direct commercial license between supplier and customer. + Further fact-finding by Product Teams will be necessary to determine the code's license status and function, + if any. +
+ +
Copyleft
+
+ Open source software with a "copyleft" license that offers irrevocable permission to the public to copy and + redistribute the work in the same or modified form, but with the conditions that all such redistributions + make the work available in a form that facilitates further modification and use the same license terms. + A copyleft license can require code interacting with copyleft-licensed code to be licensed the same way. +
+ +
Copyleft Limited
+
+ A license that requires you to redistribute source code, including your changes, and also to provide + attribution for the software authors. Your obligation to redistribute source code, including proprietary + code linked with code under this license, is limited according to license-specific rules. +
+ +
Free Restricted
+
+ A Permissive-style license, that contains restrictions regarding the usage of the software + (for example, where the software is not intended for use in nuclear power plants) or the redistribution + of the software (for example, where commercial redistribution of the software is not allowed without + express permission). The Free Software Foundation (FSF) says that a license with this kind of restriction + is not really open source, although the OSI point of view is not that strict. +
+ +
Patent License
+
+ A license that applies to patents rather than specific software. May be used in conjunction with other + software license(s) that apply to a software component. +
+ +
Permissive
+
+ Open Source software that is made available under "non-copyleft" licenses. These generally require + attribution of the included open source and may include other obligations. +
+ +
Proprietary Free
+
+ Proprietary Free software that may not require a commercial license but may have specific terms and + conditions which Product Teams are obligated to follow. Some of these terms and conditions are provided + with or in the code or in clickable downloaded licenses. Examples are the Sun Binary Code License Agreement + or a freely offered BSP. +
+ +
Public Domain
+
+ Open source software that is made available without explicit obligations, but which has a license notice + that must be kept with the code per organization policy. The match may be to software, code examples + on a website, published public domain specifications or another type of publication. +
+ +
Source-available
+
+ Source-available software is software released through a source code distribution model that includes + arrangements where the source can be viewed, and in some cases modified, but without necessarily meeting + the criteria to be called open-source. +
+ +
Unstated License
+
+ Third-party software that has a copyright notice, but no stated license. Common examples include code snippets + from publications and websites (such as those from O'Reilly Media). The absence of a license poses a risk + that the copyright owner may assert license obligations at some future time. Product Teams may need to + contact the copyright owner to determine the license obligations, if any. +
+
+
{% endblock %} \ No newline at end of file