13,230
回編集
| 398行目: | 398行目: | ||
== Apache Software License 2.0 == | == Apache Software License 2.0 == | ||
==== LICENSE / LICENSE.txt ==== | |||
まず、以下に示すURLからApache 2.0ライセンスをダウンロードする。<br> | |||
curl -OsS https://www.apache.org/licenses/LICENSE-2.0 | |||
# .txt拡張子をダウンロードする場合 | |||
curl -OsS https://www.apache.org/licenses/LICENSE-2.0.txt | |||
<br> | <br> | ||
次に、ダウンロードしたファイルの下部にある<u>Copyright 〜</u>の箇所を編集する。<br> | |||
括弧[]で囲まれたフィールドを著作者自身の識別情報で置き換える。 (括弧は含めないこと)<br> | |||
Copyright <西暦 例: 2024> <著作者 例: Taro Yamada> | |||
Licensed under the Apache License, Version 2.0 (the "License"); | |||
you may not use this file except in compliance with the License. | |||
You may obtain a copy of the License at | |||
http://www.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. | |||
<br> | <br> | ||
==== NOTICEファイル ==== | |||
Apache 2.0ライセンスのライブラリを改変して配布する場合は、その旨を表示する必要がある。<br> | |||
<br> | |||
NOTICEファイルが必要になる条件として、以下に示すような特定の状況に該当する場合である。<br> | |||
基本的には、Apache 2.0ライセンスを適用している他のライブラリを取り込む場合に意識する必要がある。<br> | |||
<br> | |||
* NOTICEが必要な場合 | |||
*: 他のApache 2.0ライセンスのソースコードを組み込む場合、または、独自の通知が必要な場合 | |||
* 不要な場合 | |||
*: 自身がフルスクラッチで作成したソースコードのみで、通知すべき特別な情報が無い場合 | |||
<br> | |||
NOTICEファイルは法的義務というよりも、配布物に必要な通知をまとめる役割を果たす。<br> | |||
そのため、必要に応じて作成するのがよい。<br> | |||
<br> | |||
===== 他のApache 2.0ライセンスのソースコードを組み込む場合 ===== | |||
Apache 2.0ライセンスのソースコードを自身のプロジェクトに組み込む場合、そのプロジェクトにNOTICEファイルが存在すれば元のプロジェクトで指定されているNOTICEファイルを引き継ぐ必要がある。<br> | |||
具体的には、元のプロジェクトにNOTICEファイルが存在する場合、その内容をそのまま新しいNOTICEファイルに記載する。<br> | |||
<br> | |||
例えば、他のライブラリにおいて、以下に示すようなNOTICEファイルがあったとする。<br> | |||
This product includes software developed by John Smith | |||
https://www.example.com/ | |||
<br> | |||
この時、自身のNOTICEファイルにこの記載をそのまま含める。<br> | |||
<br> | |||
===== 自身のプロジェクトで独自の通知事項がある場合 ===== | |||
もし自身のプロジェクトにおいて、特定の著作権表示や追加の通知が必要な場合は、NOTICEファイルを作成して記載する。<br> | |||
* 特定の商標やブランドを利用する許可が付属している場合 | |||
* プロジェクトが特定の組織に関連していることを通知する必要がある場合 | |||
<br> | |||
# 例: | |||
This product includes software created by Taro Yamada. | |||
<br> | |||
===== 配布物に関連する重要な通知を含める必要がある場合 ===== | |||
NOTICEファイルは、配布物の一部として通知が必要な情報を提供するために使用する。<br> | |||
* 再配布するソフトウェアが特定の商標やロゴの使用を伴う場合 (例: プロジェクトにロゴ画像が含まれている場合) | |||
* 著作権者や貢献者から指定された通知が必要な場合 | |||
<br> | |||
===== NOTICEが不要な場合 ===== | |||
* 自身でゼロからフルスクラッチしたソフトウェアであり、第3者のApache 2.0ライセンスコードや他の通知事項が無い場合、NOTICEファイルを作成する必要はない。 | |||
* 自身のプロジェクトに通知すべき特別な情報が無い場合 | |||
<br> | |||
===== 実際のプロジェクト例 ===== | |||
* シンプルなプロジェクト (NOTICE不要) | |||
** 内容 | |||
**: 自分で開発したコードのみ | |||
** 必要なファイル | |||
**: LICENSEファイル (Apache 2.0ライセンス全文) とソースコードのヘッダのみ | |||
<br> | |||
* 他プロジェクトのソースコードを利用する場合 (NOTICE必要) | |||
** 内容 | |||
**: 他のApache 2.0ライセンスのライブラリを使用 (例: ライブラリA) | |||
** 対応 | |||
**: 元のライブラリAにNOTICEファイルが含まれている場合、それを自身のプロジェクトのNOTICEファイルにコピーして含める。 | |||
** 追加の通知事項があれば追記する。 | |||
<br> | |||
* 独自の特別な通知を行う場合 (NOTICE必要) | |||
** 内容 | |||
**: 商標、著作権その他の通知が必要 | |||
** 対応 | |||
**: NOTICEファイルを作成して、通知内容を記載 | |||
<br> | |||
===== NOTICEファイル記載例 ===== | |||
# 基本的な例 | |||
This product includes software developed by Taro Yamada (https://www.example.com). | |||
<br> | |||
# 他プロジェクトの通知を含む場合 | |||
This product includes: | |||
- Software developed by Taro Yamada (https://www.example.com). | |||
- Software developed by Original Author/Organization (https://www.other.org/). | |||
<br> | |||
==== 特許条項 ==== | |||
* 配布されているOSSの中に特許が含まれていたら、それは無償で自由に実施してよい。 | * 配布されているOSSの中に特許が含まれていたら、それは無償で自由に実施してよい。 | ||
* 自身の特許がそのOSSに含まれていると主張した場合、そのOSSは使用できない。 | * 自身の特許がそのOSSに含まれていると主張した場合、そのOSSは使用できない。 | ||