遅かれ早かれ、各開発者は開発ライセンスの問題に直面します。 クローズドソースの商用製品がいつ開発されるかは多かれ少なかれ明らかです。 しかし、開発者がプログラム、プラグイン、またはクラスライブラリを無料でオープンコードで配布したい場合、この種のライセンスが多数存在するため、困難が生じる可能性があります。 この記事は、ライセンスに関するデータを収集、整理し、最も重要なものを分離することを目的としています。
UPD :公式GPL FAQ habrahabr.ru/blogs/Dura_Lex/45878の小さな部分の翻訳を公開
UPD2 :互換性のあるライセンスの更新および再編成されたリスト
「無料」ライセンスの世界に触れると、主要な柱とコアはGNU General Public License(GPL)と見なすことができます。 この記事では、GNU GPLに該当するライセンスを分離し、このライセンスの条件に該当しない他のすべてのライセンスについて説明します。 記事の最初の部分では、GNU GPL自体、その簡単な歴史、およびそれに類似する他のライセンスについて説明します。 最後に、用語と略語の小さな用語集を提供します。
GNU General Public License
最初に、GNUとは何かを説明したいと思います。 GNUは、オープンでフリーなソフトウェアの有名なイデオロギー家であるリチャード・ストールマンによって発明された再帰的な頭字語である「GNU's not UNIX」の略です。 この名前は、80年代にストールマンが開発したオペレーティングシステムのために考案されました。 GNUの話は別の記事に値するので、要点を説明します。
GNU General Public LicenseまたはGNU General Public Licenseはライセンスであり、その最初のバージョンの日付は1989年2月1日です(Wikipediaは1988年を報告していますが、日付は元のものであると思います)。 現在までに、4つのライセンスオプションがあり、表示順に番号が付けられています。
GNU GPL v1.0
GNU GPL v1.0の主な要件は次の要件です。
- このライセンスで公開されたバイナリコードの調査に利用可能なソースコードの提供。
- ソースコードの変更、つまり結果として別のコードと変更または結合された場合のライセンスの継承も、GNU GPLライセンスに基づいてリリースされる必要があるため、誰でも変更できるようになります。
これらの要件は、本質的に1つの目的に役立ちます。分散オープンソースソフトウェアに対する著作権法の施行を防止し、第三者のコードの変更および使用を禁止します。
GNU GPL v2.0
ライセンスの2番目のバージョンは1991年に作成され、主な動機は(Wikiによると)「自由または死」(自由または死)の原則を宣言しています。 この原則は、契約の7番目と8番目の段落で締結されています。
7.裁判所の決定または排他的権利の侵害に関する声明の結果として、または排他的権利の侵害に直接関係しない他の状況に関連して、裁判所の決定に基づいてライセンシーに対して、ライセンシーがこのライセンスに従った義務の履行を免除されない場合、契約またはその他の理由により、本ライセンスの条件に反する義務が委託されました。 この場合、ライセンシーは、このライセンスの条件と上記の方法で割り当てられた義務を同時に満たすことができない場合、プログラムのコピーを配布することはできません。 たとえば、ライセンス契約の条件の下で、サブライセンシーが直接またはライセンシーから第三者を通じて購入したプログラムのコピーを配布する権利を付与できない場合、この場合、ライセンシーはプログラムのコピーの配布を拒否する必要があります。
特定の状況の発生時にこの段落のいずれかの規定が無効または適用外と見なされる場合、この規定は例外として適用されます。 この段落は、上記の状況が終了した場合、またはそれらが存在しなくなった場合に全体として適用されます。
この段落の目的は、ライセンシーに特許または他の財産権の申請に違反させたり、そのような申請の有効性に異議を唱えたりすることではありません。 この段落の唯一の目的は、フリーソフトウェア配布システムの整合性を保護することであり、これはパブリックライセンスを通じて保証されます。 多くの人々は、長期的かつ一貫したアプリケーションを期待して、このシステムを通じて配布される多数のソフトウェアの作成にgeneしみなく貢献しています。 ライセンシーは、著者にこのシステムを介したソフトウェアの配布を強制することはできません。 ソフトウェア配布システムを選択する権利は、その作者のみに帰属します。
この条項7は、本ライセンスの他のすべての条項を追求する目的を明確に定義することを目的としています。
8.個々の州でのプログラムの配布および/または使用が特許または著作権の分野での合意により制限されている場合、本ライセンスの条件に基づいてプログラムを配布する元の著作権者は、領土の配布が許可されている州のみを指定することにより、プログラムの配布エリアを制限する権利を有しますそのような契約から生じる制限のないプログラム。 この場合、特定の州の領土に関するこのような表示は、本ライセンスの条件の1つとして認識されます。 [1]
ご覧のとおり、主な原則は次の原則です。エンドユーザーが同じライセンスの下で修正および配布する権利を完全に使用できない場合、プログラムを配布しないでください。
GNU Lesser GPL v2.1
このライセンスのバージョンは1999年にさかのぼり、通常のGNU GPLライセンスとは大きな違いが1つあります。ライブラリ用に設計されており、ライセンスは独自のソフトウェアで使用できます。 たとえば、GNU CライブラリはGNU Lesser GPL v2.1の下でライセンスされているため、サードパーティの開発者はそれらを無料または商用のソフトウェアで使用できます。
GNU GPL v3.0
2007年にリリースされたGPLの最新バージョン。 ライセンスの変更は、ライセンスユーザーを特許に関連する訴訟から保護するために設計されました。現在、プログラムの作成者はユーザーを訴えることができません。 GPL 3.0は、特定の法律や指令(デジタルミレニアム著作権法および欧州連合著作権指令)を回避することを禁止されているソフトウェアにライセンスを適用することを禁止しています。 つまり、これらの指令の範囲に該当するソフトウェアをライセンスの下でリリースすることはできません。 したがって、GPL 3.0は、そのライセンスに基づいてリリースされたソフトウェアを自由に変更、回避、または変更できるように注意します。
さらに、GPL 3.0は、GPLライセンスに基づいてソフトウェアがインストールされているデバイスでさまざまな理由で変更できない場合、「tivoization」の現象と格闘しています。 GPL v3.0は、消費財のティボ化を禁止しています(医療機器やその他の重要なデバイスのティボ化の可能性は残されています)。
GPL 3.0とともに、GNU Lesser GPL 3.0の更新バージョンもリリースされました。これは、クローズドソースソフトウェアで無料のライブラリを使用できるという点で異なります。
互換性
多くのライセンスは、GPLで規定されている原則を実際に繰り返しており、原則として、商業または他の組織で受け入れられているという点でのみ異なります。 以下では、そのようなライセンスを特定のバージョンのGPLに削減しようとします。 互換性とは、互換性のあるタイプのライセンスを持つソフトウェアの特定の部分を、同じGPLライセンスの下でGPL部分と組み合わせて作成できることを意味します。
GPL 3.0互換のみ
GNU Affero General Public License(AGPL)v3-ネットワークを介してプログラムと対話するユーザーもソースコードを受信できる必要があるという条項が含まれています。
Apacheライセンス、バージョン2.0。
Educational Community License 2.0;
Freetype Projectライセンス。
マイクロソフトパブリックライセンス(Ms-PL);
XFree86 1.1ライセンス。
GNU互換GPLライセンス(v2およびv3バージョンの両方)
Artistic License 2.0;
バークレーデータベースライセンス(別名Sleepycatソフトウェア製品ライセンス);
Boostソフトウェアライセンス。
変更されたBSDライセンス。
CeCILLバージョン2。
Cryptix General License;
エッフェルフォーラムライセンス、バージョン2-以前のバージョンには互換性がありませんでした。
Expatライセンス;
FreeBSDライセンス。
iMatix Standard Function Libraryのライセンスを取得します。
独立したJPEGグループライセンス。
Imlib2ライセンス。
Intelオープンソースライセンス。
ISCライセンス。
NCSA /イリノイ大学オープンソースライセンス。
Netscape Javascriptライセンス。
OpenLDAPライセンス、バージョン2.7。
Perl 5以下のライセンス。
パブリックドメイン
Python 2.0.1、2.1.1、およびそれ以降のバージョンのライセンス。
Rubyライセンス;
ニュージャージー州著作権ライセンスの標準ML。
ユニコード株式会社 データファイルとソフトウェアのライセンス契約。
W3Cソフトウェア通知およびライセンス。
X11ライセンス-誤ってMITライセンスと呼ばれることもあります。
低GPL互換ライセンス
eCosライセンスバージョン2.0。
語彙
GNUは再帰的な頭字語で、GNUはNot Unixです。
GNU GPL-GNU General Public License
独自のソフトウェア-使用に制限があり、修正のために閉鎖されているソフトウェア、つまり「非フリーソフトウェア」。
Tivoizationは、LinuxをGPL 2.0の下に置いたTiVoデバイスの名前で導入された用語であり、変更できませんでした。
コピーレフト -「著作権」とは反対の用語は、ソフトウェアのソースコードへのフルアクセス権を意味します。これは、同等のフリーソフトウェアを作成するためにのみ使用できます。
使用したソース
[1] ロシア語一般公衆ライセンスGNUへの翻訳
[2] GPLv3のクイックガイド
[3] GNU GPLv3の非公式翻訳
[4] それらに関するさまざまなライセンスとコメント
次の記事では、BSDライセンスの哲学、BSDライセンスがGPLとどのように異なるか、どのライセンスがGPLと互換性がないか(したがって、完全にオープンで無料ではないと見なすことができます)を検討します。 さらに、ドキュメントやソフトウェア以外のものを説明するライセンスについても触れます。