オープンソースライセンスとは
オープンソースを推進しているOSIでは以下の10項目をオープンソースの定義としている。
- ソフトウェアを自由に販売したり、無償で配布できる
- ソースコードが入手できる
- ソフトウェアに手を加えたり、派生ソフトウェアを作ることができる
- 作者のソースコードの完全性を維持(※完全性:データを最新かつ正しい状態で維持すること)
- 個人やグループを差別しない
- 利用分野を差別しない
- 再配布する時に追加的なライセンスを必要としない
- ライセンスは特定の製品に依存しない
- そのソフトウェアとともに頒布される他のソフトウェアに制限を設けない
- 技術的に中立
オープンソースライセンスの種類
コピーレフト型ライセンス
コピーレフトとは著作者が著作物に対する権利(著作権)を保有したまま著作物の配布条件として、利用者に著作物を複写・改変・再配布する自由を与える考え方のこと。
コピーレフト型ライセンスは、①ライセンシの派生物にも同じライセンスを適用し、②他のソフトウェアと組み合わせた場合も組み合わせ先のソフトウェアと同じライセンスを適用する。
コピーレフト型ライセンスの例は以下。
・GPL(GNU General Public License)
当該プログラムを利用するプログラムも、ソースコードの対象となる。ソフトウェアをインターネットで公開する際はソースコードも公開する必要があるが、組織内や個人だけで利用する場合はその限りではない。
GPLv2とGPLv3のバージョンがあり、特許に関する姿勢が大きな違い。
準コピーレフト型ライセンス
準コピーレフト型ライセンスは、①ライセンシの派生物にも同じライセンスを適用し、②他のソフトウェアと組み合わせた場合も組み合わせ先のソフトウェアと同じライセンスを適用しなくてもOK。
準コピーレフト型ライセンスの例は以下。
・MPL(Mozilla Public License)
ソースコードの公開は必要だが、当該プログラムを利用するソフトウェアのソースコード公開は要求されない。GPLv2と互換性がある。
非コピーレフト型ライセンス
準コピーレフト型ライセンスは、①ライセンシの派生物にも同じライセンスを適用しなくてOK、②他のソフトウェアと組み合わせた場合も組み合わせ先のソフトウェアと同じライセンスを適用しなくてもOK。
非コピーレフト型ライセンスの例は以下。
・MIT License
ソースコードの公開は不要であり、ソフトウェアを改変した場合、MIT以外のライセンスで頒布が可能。
・Apache License
Apacheソフトウェア財団によって作られる。ソースコードの公開は不要。
Apache License2.0とGPLv3には互換性がある。
おわりに
ライセンスの違いや特徴を正しく理解しよう。
ソフトウェアを利用する時にもライセンスを意識して利用したい。
参考
https://yamory.io/blog/about-gpl-license/
https://www.sbbit.jp/article/cont1/34811