ライセンスガイド

ライセンスを選び、適用するときに必要な概念を8本の記事にまとめました。

01コピーレフトとは何かコピーレフトの意味と仕組み、強いコピーレフト(GPL)と弱いコピーレフト(LGPL・MPL・EPL)、ネットワークコピーレフト(AGPL)の違い、義務が生じるタイミングとよくある誤解を説明します。02寛容型 vs コピーレフト、どちらを選ぶかMIT・Apache のような寛容型と、GPL・LGPL・MPL のようなコピーレフトを、目的・エコシステム・利用形態別に比較し、ライセンスを決める前に確認すべきチェックリストを提供します。03ライセンスのないコードの意味ライセンスファイルのない公開コードは、基本的にすべての権利が著作権者にあります。GitHub の規約が許す範囲、使いたいときの方法、自分のリポジトリにライセンスを付ける方法を説明します。04デュアル(マルチ)ライセンス一つのコードに2つ以上のライセンスを提供するデュアルライセンスの2つの類型、SPDX 式 OR・AND・WITH の意味、CLA が必要な理由と注意点を説明します。05SPDX 識別子とファイルヘッダーSPDX-License-Identifier と SPDX-FileCopyrightText のヘッダーの書き方、廃止された識別子(GPL-2.0→GPL-2.0-only)、パッケージのメタデータの license フィールド、REUSE 仕様をまとめます。06GPL "only" vs "or later"GPL の「or any later version」という文言が何を意味するのか、Linux カーネルが GPL-2.0-only にこだわる理由、GPL-2.0-only と GPL-3.0 に互換性がない理由と選択基準を説明します。07ライセンス互換性の基礎ライセンスの互換性とは何か、なぜ一方向にしか成立しないのか、Apache-2.0 と GPL、MPL-2.0 の Secondary License、LGPL のリンク条件、AGPL との結合など代表的な組み合わせをまとめます。08ライセンス適用の実務ガイドリポジトリにライセンスを適用する実際の手順をまとめました。LICENSE ファイル、著作権の年・著作権者の表記、Apache の NOTICE、GNU の COPYING の慣例、ファイルヘッダー、サードパーティの表示、DCO・CLA、ライセンス変更時の注意点。