見出し画像

Open Source Lisense何を選べばいいの?Version 0.0.0


Licenseの種類,多すぎ!

私のようにバリバリのプログラマーではない人は一度は通る道

 ライセンス何にすればええねん(唐突な関西弁)

ちょっとしたプログラムをGitに公開するときとか,プログラムを配布するときとか。
悩みますよね。
というわけで今回はプログラミング初心者私と一緒によく使うOSLについて考えてみましょう。

そもそもOpen Source License(OSL)とは?

まずこれを理解しないと後々苦しむことになります(多分)
Wikipediaが言うには

オープンソースライセンス: open-source license)は、ソフトウェアやそのソースコードブループリント、設計書の利用、修正、頒布を認めるソフトウェアライセンスの総称である[1][2]。「広義のオープンソースソフトウェア」に課せられる「ソフトウェアライセンス」を指し、オープンソースのライセンス、フリーソフトウェアのライセンスを包括する。
オープンソースライセンスは、オープンソースソフトウェアの性質上、ソフトウェアやその二次著作物は元の作者でも制御しきれない形で頒布されるため、ソフトウェアは「有用であるとは思うが無保証である」のような但し書きを基本的な誓約として含んでいる[3]。ライセンスによっては、作者名や著作権名を表示する誓約(著作権表示条項)や、ソースコードを改変して再頒布する場合は同じライセンスで配布する誓約(コピーレフト条項)が存在する[4][5]
オープンソース・イニシアティブ[6]フリーソフトウェア財団[7]Fedora[8]Debian[9]はオープンソースライセンスとして適切であるとされるライセンスを精査している[10]。オープンソースライセンスの一例としてApache-2.0MITGPLv3CDDL-1.0がある[11]

オープンソースライセンス - Wikipedia

ザックリまとめると

  • ソフトウェアやソースコードに付けられるライセンスの総称

  • オープンソースソフトウェアのライセンス

  • 「使えるけど,自己責任やで」という趣旨の事が大体書いてある

ということです。
オープンソースが分からない方はこちらのサイトを参照してください。
分かりやすいです。

コピーレフトとは

  • 改変部分のソースコード公開(コピーレフト)

  • 他のコードと組み合わせたとき,そのコードまで公開(準コピーレフト)

  • 公開する必要なし(非コピーレフト)

というわけです。
他に言う事はありませんが知っておくとちょっと楽です。

色々なライセンス

MIT License

MIT License(エム・アイ・ティー ライセンス)は、マサチューセッツ工科大学を起源とする代表的なソフトウェアライセンスである。X11 LicenseまたはX Licenseと表記されることもある。MIT LicenseはGPLなどとは異なり、コピーレフトではなく、オープンソースであるかないかにかかわらず再利用を認めている。BSDライセンスをベースに作成されたBSDスタイルのライセンスの一つである。MIT Licenseは、数あるライセンスの中で非常に制限の緩いライセンスと言える。

X Window System (X11) などのソフトウェアに適用されている。また、2015年3月には、GitHubで最も使われているオープンソースライセンスはMIT Licenseであるという調査結果も出ている[1]

MIT License - Wikipedia

有名なライセンスの中でもそこそこ自由度の高いライセンスです。
このライセンスの特徴を一言でいうと
 「何してもいいけどこのライセンス文の表示と著作権表示は絶対してね!」
というライセンスです。
非コピーレフトなのでオープンソース化する必要はありません。
「自由に使ってほしい!」っていう場合にはオススメかも…?

Apache License 2.0

Apache License(アパッチ・ライセンス)は、Apacheソフトウェア財団 (ASF) によるソフトウェア向けライセンス規定。1.1以前は、Apache Software License(ASL)と称していた。著作権表示と免責事項表示の保持を求めている。1.1以降のバージョンはOpen Source Initiativeオープンソースライセンスと承認している。GNUプロジェクトは、1.1以前のバージョンをGPL非互換で非コピーレフトフリーソフトウェアライセンス、バージョン2.0をGPLバージョン3互換(GPL2以前とは非互換)のフリーソフトウェアライセンスと判断している。

ASFやそのサブプロジェクトが作成するソフトウェアは、すべてApache Licenseで提供されている。ASF以外のソフトウェアでもApache Licenseを使っているものがある。2010年6月現在、SourceForge.netにある5000以上のASF以外のプロジェクトがApache Licenseでリリースされている[5]

Apache License - Wikipedia

こちらも結構有名なライセンスです。
MIT Licenseと似ていますがこのライセンスの特徴を一言でいうと
 「自由に使ってもいいけど商標(ロゴとか)は改変しないでね!」
というライセンスです。
こちらも非コピーレフトなのでオープンソース化する必要はありません。
このライセンスは一言で言う事が難しいのでもう少し詳しく解説します。

Apache License 2.0はMIT Licenseに加えて

  • 商標の改変不可

  • 変更点の明記

が決められています。
変更点の明記は
Apache-2.0が付いたものを改変するときは改変した場所を書いといてね!
ということです。
「自由に使ってほしいけどMITじゃちょっと軽すぎるなぁ…」
というときにオススメかも…?

GNU General Public License v3.0

GPLは、プログラム(日本国著作権法ではプログラムの著作物)の複製物を所持している者に対し、概ね以下のことを許諾するライセンスである。プログラムの実行[注釈 2]
プログラムの動作を調べ、それを改変すること(ソースコードへのアクセスは、その前提になる)
複製物の再頒布
プログラムを改良し、改良を公衆にリリースする権利(ソースコードへのアクセスは、その前提になる)


GPLは二次的著作物についても上記4点の権利を保護しようとする。この仕組みはコピーレフトと呼ばれ、GPLでライセンスされた著作物は、その二次的著作物に関してもGPLでライセンスされなければならない。これはBSDライセンスをはじめとするパーミッシブ・ライセンスが、二次的著作物を独占的なものとして再頒布することを許しているのとは対照的である。GPLはコピーレフトのソフトウェアライセンスとしては初めてのものであり、そのもっとも代表的なものである[8]

GPLはフリーソフトウェア財団 (以下FSFと略称) によって公開され、その管理が行われている。GPLでライセンスされている傑出したフリーソフトウェアのプログラムには、LinuxカーネルGNUコンパイラコレクション (GCC) がある。

FSFが公開、管理する他のライセンスには、GNU Lesser General Public License (GNU LGPL)、GNU Free Documentation License (GNU FDL、またはGFDL) そしてGNU Affero General Public Licenseバージョン3 (GNU AGPLv3) がある。

GNU General Public License - Wikipedia

こちらのライセンスは理解に苦しむタイプのライセンスです。
このライセンスの大きな特徴は
 「ライセンスの継承」
です。
GPL v3.0が付いたものを改変して再頒布する場合,改変したものにはGPL v3.0を付けなければなりません。
また,GPL v3.0が付いているものを使ったものもGPL v3.0を付けなければなりません。
また,コピーレフトなのでオープンソース化する必要があります。
有名なソフトウェアはGPLがついてるイメージですね。

GNU Lesser General Public License

以前の名前から分かる通り、これは他のプログラムにリンクされることを前提としたライブラリのためのライセンスとして作成された。当ライセンスは、強いコピーレフト(strong copyleft)を持つライセンスであるGNU General Public LicenseすなわちGPLBSDライセンスMIT Licenseのようなパーミッシブ・ライセンスとの妥協の産物として設計されている。LGPLが最初にその略称を示していたGNU Library General Public Licenseは1991年に公開され、GPLv2との対等性を表すため同じバージョン2が付されることとなった。のちに小規模な改訂によりバージョン2.1という小数点リリース(ポイントリリース)となり、1999年に公開されたが、同時にライブラリにこのライセンスを利用すると限るべきではないというFSFの立ち位置を反映させるため、GNU Lesser General Public Licenseと改名された。LGPLv3は2007年に公開された。これは、GPLv3と完全な互換性があり、GPLv3にいくつか追加的(許諾)条項(Additional permissions。GPLv3第7項で許されている。)を加えた相補的形式を採用している。よって以前のバージョンよりも条文はかなり簡略化されており、GNU GPLv3への参照が条文に頻繁に現れる。しかしこれはGPLリンク例外を採用しているその他ソフトウェアよりも若干要件は多い。次のセクション"GPLとの違い"を参照。

LGPLはLGPLに従う限り、プログラム自身にコピーレフトの「保護」(立ち位置が異なるものからは、「制限」とも言われるが)を与えるが、単にLGPLで保護されたプログラムとリンクする、他のソフトウェアへこれら「制限」を適用することはない。しかしながら、当該ソフトウェアへ影響を与えるある種のその他の「制限」は存在する。

LGPLは主にソフトウェア・ライブラリに採用されるが、スタンドアローンなアプリケーションにも採用されるいくつかの例が存在した。もっとも有名な例は、かつてのMozillaOpenOffice.orgである。

GNU Lesser General Public License - Wikipedia

このライセンスはGPLの「GPLが付いたものを使ったものはGPLにしないといけない」という制限を若干緩和したものです。
GPLは何でもかんでも使えば継承でしたが,LGPLは「組み込んだ場合」は継承しないといけません。呼び出すだけならLGPLにする必要はありません。
ライブラリ系にLGPLは向いています。

SIL Open Font License

SIL Open Font License (OFL) は、国際SILが自身で開発や支援を行っているUnicodeフォントに対して使用するために定義されたオープンソースライセンス[1]である。このライセンスはフリーソフトウェア財団 (略称FSF) によってフリーソフトウェアライセンスであると認定されている[2]

SIL Open Font License - Wikipedia

このライセンスはフォントに付けることができるライセンスです。
源ノ角ゴシックとかもSILです。
このライセンスの特徴を一言で言うと
「自由に使ってもいいけど人に渡すときや組み込むときはこのライセンスも一緒に記載してね。あと派生するときは予約フォント名使わないでね」
というライセンスです。
予約フォント名は大体著作権が明記されたファイルに書いてあります。
源ノ角ゴシックのライセンスにはこう書いてあります

Copyright 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font
Name 'Source'. Source is a trademark of Adobe in the United States
and/or other countries.

source-han-sans/LICENSE.txt at release · adobe-fonts/source-han-sans (github.com)

あとQuicksandはこう。

Copyright 2011 The Quicksand Project Authors (https://github.com/andrew-paglinawan/QuicksandFamily), with Reserved Font Name “Quicksand”.

QuicksandFamily/OFL.txt at master · andrew-paglinawan/QuicksandFamily (github.com)

フォントを公開したい人は大体これ使っとけばok

Berkeley Software Distribution License 2-clause

BSD Licenses refer to anyone in a family of BSD Free and Open Source Software (FOSS) licenses. It is a family of permissive free software licenses with minimal restrictions on the use and distribution of software. BSD licenses are a family of permissive means that BSD-like or BSD-style license is a free software license that don’t require much from users and don’t put much requirements on redistribution of the licensed open source software.

The original BSD license name was taken from Unix-like operating system, the Berkeley Software Distribution (BSD). BSD Licenses two variants, the Modified BSD License (3-clause) and the Simplified BSD License or FreeBSD License (2-clause) are also permissive free software licenses. The BSD open source license unlike GPL does not require source code be distributed at all. The BSD License lets you freely copy, modify and distribution of many freeware, shareware and open source software as you retain a copy of the copyright notice, list of conditions and the disclaimer.

Top 5 Most Popular OSI-Approved Open Source Licenses Of 2021 (containerize.com)

簡単に言えば「何してもいい」っていうライセンスです。

「無保証」であることの明記と著作権およびライセンス条文自身の表示を再頒布の条件とするライセンス規定である。

BSDライセンス - Wikipedia

これを見てわかるように「自己責任」と「ライセンスの表示」さえ守っとけば自由に使ってもいいライセンスです。
つまり,何が起きてもいい覚悟でこのライセンスを付けなければいけません。
「MITよりもっと自由に!」っていうものにはオススメかも…?

まとめ

個人的にはメインApacheで小さいものはMITという風に使い分けています。
Creative Commomsというものもありますが公式がOSSには向いてないよ!と言っているのでOSL選べばいいと思います。
正直OSLは個人の裁量なので…
しかし,ApacheとMITは十分使えるライセンスなのでしっかり使っていきましょう。

報告

間違いや,追記してほしいことがあればコメントでお知らせください。
書き加えてほしいライセンスがあればコメントでお知らせください。

この記事が気に入ったらサポートをしてみませんか?