GNU General Public Licenses ( GNU GPLまたは単にGPL ) は、広く使用されているフリーソフトウェアライセンスのシリーズです。GPL はコピーレフトライセンスであり、エンド ユーザーにソフトウェアを実行、研究、共有、または変更する自由を保証しますが、派生作品または変更を配布する場合は、同じまたは同等のライセンス条件でソース コードを受け手に提供する必要があります。一般に公開する必要はありません。[ 7 ] GPL は、一般使用が可能な最初のコピーレフト ライセンスでした。元々は、フリー ソフトウェア財団(FSF)の創設者であるリチャード ストールマンがGNU プロジェクトのために作成しました。このライセンスは、コンピュータ プログラムの受け手にフリー ソフトウェア定義の権利を付与します。[ 8 ] GPL は、GNU Lesser General Public Licenseよりも再配布に関する義務が多く、 BSD、MIT、Apacheなどの広く使用されている寛容なソフトウェア ライセンスとは大きく異なります。
歴史的に、GPL ライセンスファミリーは、フリーおよびオープンソースソフトウェア(FOSS) の分野で最も人気のあるソフトウェアライセンスの 1 つです。 [ 7 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] GPL の下でライセンスされている著名なフリーソフトウェアプログラムには、Linux オペレーティングシステムカーネルとGNU コンパイラコレクション(GCC) があります。David A. Wheeler は、GPL によって提供されるコピーレフトがLinux ベースのシステムの成功に不可欠であり、貢献するプログラマーに、自分たちの仕事が世界に利益をもたらし、コミュニティへの貢献を求められていないソフトウェア企業によって悪用されることなく、フリーのままであるという保証を与えたと主張しています。[ 13 ]
2007年、ライセンスの第3版(GPLv3)がリリースされた。これは、長期間の使用を通じて明らかになった第2版(GPLv2)の欠点に対処するためであった。
ライセンスを最新の状態に保つため、GPLにはオプションの「それ以降のバージョン」条項が含まれており、ユーザーは元の条項、またはFSFによって更新された新しいバージョンの条項の2つのオプションから選択できます。オプションの「それ以降のバージョン」条項でライセンスされているソフトウェアプロジェクトにはGNUプロジェクトが含まれますが、LinuxカーネルなどのプロジェクトはGPLv2のみでライセンスされています。「それ以降のバージョン」条項は、 GPLライセンスの異なるバージョンのソフトウェアを組み合わせても互換性を維持できるため、 「救命ボート条項」と呼ばれることもあります。
GPLの使用は2010年代以降着実に減少しており、特に上述の複雑さに加え、ライセンスが現代のオープンソース領域の成長と商業化を阻害しているという認識がその理由となっている。[ 14 ] [ 15 ]
オリジナルの GPL は、 1989 年にRichard StallmanによってGNU プロジェクトの一部としてリリースされたプログラムで使用するために作成されました。このライセンスは、GNU Emacsテキストエディタ、GNU デバッガ、およびGNU C コンパイラの初期バージョンで使用されていた同様のライセンスを統合することに基づいていました。[ 16 ] [ 17 ]これらのライセンスには、現代の GPL と同様の条項が含まれていましたが、各プログラムに固有のものであったため、同じライセンスであるにもかかわらず互換性がありませんでした。[ 18 ] Stallman の目標は、あらゆるプロジェクトで使用できる単一のライセンスを作成し、それによって多くのプロジェクトがコードを共有できるようにすることでした。
ライセンスの第2版であるGPLv2は1991年にリリースされました。その後15年間、フリーソフトウェアコミュニティのメンバーは、GPLv2ライセンスの特定の問題点について懸念を抱くようになりました。これらの問題点は、ライセンスの意図に反する方法でGPLライセンスのソフトウェアを悪用することを可能にするものでした。[ 19 ]これらの問題点には、次のようなものがありました。
上記の懸念事項に対処するためにGPLのバージョン3が開発され、2007年6月29日に正式にリリースされました。[ 20 ]
1989年2月25日にリリースされたGNU GPLのバージョン1は、ソフトウェア配布者がフリーソフトウェアを定義する自由を制限する2つの主要な方法から保護するために書かれた。[ 21 ] [ 22 ]
最初の方法は、実行はできるが人間が読み取ったり変更したりできないバイナリファイルを公開することです。この制限を回避するため、GPLv1では、プログラムのいかなる部分のコピーを複製および配布する場合、同じライセンス条件の下で人間が読めるソースコードも提供しなければならないと規定しています。[ a ]
2 つ目の方法は、ライセンスに直接制限を追加するか、配布に関する制限が異なる他のソフトウェアとソフトウェアを組み合わせることによって制限を追加することです。このような制限のセット 2 つを組み合わせると、結合された作品に適用され、許容できない制限が追加されます。この状況を防ぐために、GPLv1 では、変更されたバージョンは全体として GPLv1 の条件の下で配布されなければならないと規定しています。[ b ]その結果、GPLv1 の条件の下で配布されるソフトウェアは、より寛容な条件の下で配布されるソフトウェアと組み合わせることができます。なぜなら、この組み合わせによって全体が配布できる条件が変わらないからです。しかし、GPLv1 の下で配布されるソフトウェアは、より制限的なライセンスの下で配布されるソフトウェアと組み合わせることはできません。なぜなら、この組み合わせは、全体が GPLv1 の条件の下で配布可能であるという要件と矛盾するからです。
リチャード・ストールマンによれば、GPL バージョン 2 の大きな変更点は「自由か死か」条項、すなわち第 7 条であった。[ 18 ]この条項では、ライセンシーは、他の法的義務の有無にかかわらず、ライセンスのすべての義務を履行できる場合にのみ、 GPL でカバーされる作品を配布できると規定している。言い換えれば、ライセンスの義務は、相反する義務によって分離することはできない。この規定は、いかなる当事者も、特許侵害の主張やその他の訴訟を利用して、ライセンスに基づくユーザーの自由を侵害することを阻止することを目的としている。[ 18 ]
1990 年までに、より制限の少ないライセンスが、C 標準ライブラリと既存のプロプライエタリ ライブラリと同じタスクを処理するソフトウェア ライブラリの 2 種類のライブラリにとって戦略的に有用であることが明らかになりました。[ 23 ] 1991 年 6 月に GPLv2 がリリースされたとき、同時に 2 番目のライセンスが導入されました。これは GNU ライブラリ一般公衆ライセンス (LGPL) であり、2 つのライセンスが補完的であることを示すためにバージョン 2 と番号が付けられました。[ 24 ] 1999 年に LGPL のバージョン 2.1 がリリースされ、その哲学における役割を反映するためにGNU Lesser General Public Licenseに改名されたときに、バージョン番号が分岐しました。GPLv2 は LGPL の新しい名前を参照するように更新されましたが、GPL のバージョン番号は同じままでした。その結果、元の GPLv2 はソフトウェア パッケージ データ エクスチェンジ (SPDX)で認識されませんでした。[ 25 ]
GPLには「ライセンスのバージョン2、または(ご希望に応じて)それ以降のバージョン」を指定するよう指示が含まれており、バージョン2または3のどちらでも柔軟に使用できるようになっていますが、一部の開発者はこの指示を変更して「バージョン2」のみを指定するようにしています。
2005 年後半、フリー ソフトウェア財団(FSF) は GPL のバージョン 3 の開発作業を発表しました。2006 年 1 月 16 日、GPLv3 の最初の「議論草案」が公開され、パブリック コンサルテーションが開始されました。公式の GPLv3 は、2007 年 6 月 29 日に FSF によってリリースされました。GPLv3 は、ソフトウェア自由法センターのエベン モグレンとリチャード フォンタナの法律顧問のもと、リチャード ストールマンによって書かれました。[ 26 ] [ 27 ]
Stallmanによると、最も重要な変更点は、ソフトウェア特許、フリーソフトウェアライセンスの互換性、「ソースコード」の定義、およびソフトウェアの変更( tivo化など)に対するハードウェア制限であった。[ 26 ] [ 28 ]その他の変更点には、国際化、ライセンス違反の処理、および著作権者による追加の許可の付与が含まれる。ソフトウェア伝播という用語は、ソフトウェアのコピーと複製として明確に定義された。
公開協議プロセスは、フリーソフトウェア財団がソフトウェア自由法センター、フリーソフトウェア財団ヨーロッパ、その他のフリーソフトウェアグループの協力を得て調整した。[ 29 ]意見は、専用に作成されたstetというソフトウェアを使用して、 gplv3.fsf.orgウェブポータル[ 30 ]を通じて一般から収集された。意見募集期間終了までに、合計2,636件の意見が提出された。[ 31 ]
GPLv3の第3草案は2007年3月28日に公開された。[ 32 ]この草案には、物議を醸したマイクロソフトとノベルの契約のような特許関連の契約を防止することを目的とした文言が含まれていた。また、草案では、反ティボイゼーション条項を「ユーザー」と「消費者製品」の法的定義に限定した。さらに、草案では「地理的制限」のセクションが明示的に削除されており、このセクションの削除は公開協議の開始時に発表されていた。

4番目で最後の議論草案は2007年5月31日に公開されました。[ 33 ]この草案では、 Apache Licenseバージョン2.0との互換性が導入され(以前のバージョンは互換性がないため)、外部請負業者の役割が明確化され、Microsoft-Novellスタイルの契約で認識されている問題を回避するための例外が設けられ、第11条第6項で次のように述べられています。
ソフトウェア配布事業を営む第三者との間で、あなたが著作物の配布活動の程度に応じて第三者に支払いを行い、かつ、その第三者があなたから著作物を受け取る当事者に対し差別的な特許ライセンスを付与する取り決めを締結している場合、あなたは当該著作物を配布することはできません 。
この例外規定は、将来そのような取引を無効にすることを目的としていた。このライセンスはまた、マイクロソフトに何らかの行動を起こさせることも意図していた。つまり、ノベルの顧客にGPLv3ソフトウェアの使用に関して付与した特許ライセンスを、そのGPLv3ソフトウェアのすべてのユーザーに拡大することである。この拡大は、マイクロソフトがGPLv3ソフトウェアの法的「伝達者」である場合にのみ可能であった。[ 34 ]
GPLv3 の初期草案では、ライセンサーがAGPLと同様の要件を追加して、アプリケーション サービス プロバイダーに関する GPL の抜け穴を解消することも認められていました。[ 35 ] [ 36 ]ソース コードを実行、研究、共有する自由、およびコピー レフト保護を保証する自由は、ウェブ サービスの文脈ではやや曖昧です。しかし、GPLv3 の初期草案で提案された追加要件についてコードをチェックする管理コストについて懸念が提起され、最終的には GPL と AGPL を分離したままにすることが決定されました。[ 37 ]
他の回答者、特にLinus Torvalds、Greg Kroah-Hartman、Andrew Mortonなどの著名な Linux カーネル開発者は、メディアのコメントや公式声明を使用して、GPLv3 ドラフトの一部に反対しました。[ 38 ]カーネル開発者は、DRM (および tivoization)、特許、および「追加の制限」に関する条項に反対し、さらに「オープンソースの世界」の「バルカン化」を警告しました。 [ 38 ] [ 39 ] Linux カーネルに GPLv3 を採用しないことを選択した Linus Torvalds は、数年後に批判を繰り返しました。[ 40 ] [ 41 ] [ 42 ]
GPLv3 は、Apache License (バージョン 2.0) や GNU Affero General Public License (GPLv2 とは組み合わせることができなかった) など、いくつかのフリー ソフトウェア ライセンスとの互換性を向上させました。[ 43 ]ただし、GPLv3 ソフトウェアは、GPLv2 ソフトウェアと組み合わせてコードを共有できるのは、次の 2 つの条件が満たされた場合のみです。使用されている GPLv2 ライセンスにオプションの「またはそれ以降」条項が含まれていること、およびソフトウェアが GPLv3 にアップグレードされていること。FSF では「GPLv2 またはそれ以降のバージョン」条項が GPLv2 ソフトウェアのライセンスの最も一般的な形式であると考えられていますが、[ 44 ] Toybox開発者の Rob Landley はこれを救命ボート条項と表現しました。[ c ]オプションの「またはそれ以降」条項でライセンスされているソフトウェア プロジェクトには、Joomla [ 47 ]やGNU プロジェクト[ 48 ]などがありますが、この条項のない顕著な例としては Linux カーネルがあります。[ 40 ] [ 49 ]
GPLv3のライセンステキストの最終版は2007年6月29日に公開されました。[ 50 ]
GPLの条件は、GPLライセンスが適用された作品のコピーを受け取るすべての人(「ライセンシー」)に提供されなければなりません。条件を遵守するライセンシーは、作品を改変するだけでなく、作品またはその派生版を複製および再配布する許可を与えられます。ライセンシーは、このサービスに対して料金を請求することも、このサービスを無償で提供することもできます。この後者の点が、商用再配布を禁止するソフトウェアライセンスとGPLを区別する点です。FSFは、フリーソフトウェアは商用利用に制限を設けるべきではないと主張しており、GPLはGPL作品は任意の価格で販売できることを明示的に述べています。[ 51 ]
GPLはさらに、配布者は「GPLによって付与された権利にさらなる制限を課してはならない」と規定している。この規定は、秘密保持契約や契約に基づいてソフトウェアを配布するなどの行為を禁じている。
GPLv2の第4項とGPLv3の第7項では、プリコンパイル済みバイナリとして配布されるプログラムには、ソースコードのコピー、プリコンパイル済みバイナリファイルと同じ方法でソースコードを配布する旨の書面による申し出、またはGPLに基づいてプリコンパイル済みバイナリファイルを受け取った際にユーザーが入手したソースコードを取得するための書面による申し出のいずれかを添付する必要があると規定されています。GPLv2の第2項とGPLv3の第5項では、プログラムとともにライセンスを配布することも規定されています。GPLv3では、第7項を満たすために、ソースコードを他の方法で提供することも認められています。これらの方法には、隣接するネットワークサーバーからソースコードをダウンロードすることやピアツーピア送信などが含まれますが、コンパイル済みコードが同じ方法で入手可能であり、ソースコードの入手先が明確に示されていることが条件となります。
FSFは、著作者が明示的に著作権をFSFに譲渡しない限り、GPLに基づいて公開された作品の著作権を保有しません。GNUプロジェクトの一部であるプログラムを除き、このような譲渡はめったに起こりません。ライセンス違反が疑われる場合、訴訟を起こす権限を持つのは個々の著作権者のみです。

GPL に基づくソフトウェアは、商用目的を含むあらゆる目的で使用でき、GPL ライセンスのコンパイラを使用する場合のように、プロプライエタリ ソフトウェアを作成するためのツールとしても使用できます。[ 52 ] GPL ライセンスの作品 (ソフトウェアなど) を配布するユーザーまたは企業は、コピーに対して料金を請求したり、無料で提供したりできます。この点が、GPL を他の 2 種類のライセンスと区別しています。1 つは、個人使用のためのコピーは許可するが商用配布は禁止するシェアウェアソフトウェア ライセンス、もう 1 つは著作権法によってコピーが禁止されているプロプライエタリ ライセンスです。FSF は、自由を尊重するフリー ソフトウェアは商用利用および配布 (再配布を含む) を制限すべきではないと主張しています。[ 51 ] [ 53 ]
純粋に私的(または内部)な使用、つまり販売や配布を行わない場合は、ソースコードを公開することなく、ソフトウェアコードを変更したり、一部を再利用したりすることができます。販売または配布を行う場合は、コードの変更や追加を含め、ソースコード全体をエンドユーザーに提供する必要があります。その場合、コピーレフトが適用され、エンドユーザーが上記で定義された自由を保持できるようになります。
ただし、GPL ライセンスのオペレーティングシステム (Linux など) 上でアプリケーション プログラムとして実行されるソフトウェアは、GPL の下でライセンスされる必要も、ソース コードが利用可能である状態で配布される必要もありません。ライセンスは、使用されるライブラリとソフトウェア コンポーネントのみに依存し、基盤となるプラットフォームには依存しません。[ 54 ]例えば、プログラムがオリジナルのソース コードのみで構成されている場合、または他のソフトウェア コンポーネントのソース コードと組み合わされている場合、[ d ]カスタム ソフトウェア コンポーネントは GPL の下でライセンスされる必要はなく、ソース コードを提供する必要もありません。使用される基盤となるオペレーティングシステムが GPL の下でライセンスされている場合でも、システム上で実行されるアプリケーションは派生著作物とはみなされません。[ 54 ]プログラムで GPL ライセンスの部分が使用され (かつプログラムが配布される場合) にのみ、プログラムの他のすべてのソース コードが同じライセンス条件の下で利用可能にする必要があります。 GNU Lesser General Public License (LGPL)は、GPL よりもコピーレフトを弱めるように設計されており、LGPL では、独自に開発されたソースコード (LGPL ライセンスの対象となる部分とは別) を同じライセンス条件で公開することを義務付けていません。
GPLv3の第5項では、GPLライセンスのコードはWIPO著作権条約第11条で定義される有効な「技術的保護措置」とはみなされないこと、また、作品を伝達する者は、「対象作品に関して本ライセンスに基づく権利を行使することによって回避が行われる範囲において」技術的保護措置の回避を禁止するすべての法的権限を放棄すると規定している。この規定は、ユーザーが米国のデジタルミレニアム著作権法(DMCA)などの法律の下で、GPLv3ライセンスのコードに実装されたDRMを回避したとして責任を問われることはないことを意味する。[ 55 ]
GPLによって付与される、改変版作品の配布権は無条件ではありません。GPLライセンス作品に独自の改変を加えたものを配布する場合、作品全体を配布するための要件はGPLの要件を超えることはできません。この要件はコピーレフトと呼ばれ、ソフトウェアプログラムにおける著作権の使用から法的効力を得ています。
GPL作品は著作権で保護されているため、ライセンスを受けた者は、ライセンスの条件に従う場合を除き、作品を再配布する権利を有しません。著作権法によって通常制限される権利(再配布など)を行使したい場合にのみ、GPLの条件に従う必要があります。逆に、GPLの条件に従わずに作品のコピーを配布した場合(例えば、ソースコードを秘密にするなど)、著作権法に基づき原著作者から訴訟を起こされる可能性があります。
著作権法は、歴史的に、著作者の許可を得ていない者による作品の配布を防ぐために用いられてきました。コピーレフトは、同じ著作権法を用いて全く異なる目的を達成します。コピーレフトは、すべての当事者が後続の当事者に同じ権利を与え、さらにその当事者が次の当事者に同じ権利を与えるという条件で、すべての当事者に配布権を付与します。このようにして、GPLやその他のコピーレフトライセンスは、作品とその派生作品への自由なアクセスを強制しようとします。 [ 56 ]
GPLライセンスのプログラムの多くは、実行ファイルにソースコードを同梱しています。コピーレフトの要件を満たす別の方法として、要求に応じてソースコードを物理媒体(CDなど)で提供する旨を文書で提示する方法があります。実際には、多くのGPLライセンスのプログラムはインターネット経由で配布されており、ソースコードはFTPまたはHTTPプロトコルを介して提供されています。インターネット配布の場合、この方法はライセンスに準拠しています。
コピーレフトは、プログラムを再配布しようとする場合にのみ適用されます。開発者は、変更したソフトウェアを他の人に配布しない限り、変更内容を開示する義務なしに、私的な変更版を作成できます。コピーレフトはソフトウェアにのみ適用され、その出力には適用されません(出力自体がプログラムの派生作品である場合を除く)。[ e ]例えば、GPL ライセンスのコンテンツ管理システムの変更された派生版を実行しているパブリック Web ポータルは、その変更を基盤となるソフトウェアに配布する必要はありません。これは、変更された Web ポータルが再配布されているのではなくホストされていること、および Web ポータルの出力が GPL ライセンスのコンテンツ管理システムの派生作品ではないためです。
ソースコードを難読化して公開することが、例えば著者がソースコードの公開に消極的な場合などに、GPLv1 に違反するかどうかについて議論が交わされてきた。議論の結論としては、そのような公開は非倫理的ではあるが、ライセンス違反ではないということになった。この問題は、GPL がバージョン 2 で変更され、「推奨」バージョンのソースコードを公開することが義務付けられた際に明確になった。[ 58 ]
GPLは契約ではなくライセンスとして設計されました。 [ 59 ]コモンロー法域の中には、ライセンスと契約の法的区別が重要なものがあります。契約は契約法によって強制執行されるのに対し、ライセンスは著作権法によって強制執行されます。しかし、大陸法系など、契約とライセンスに違いのない多くの法域では、この区別は役に立ちません。[ 60 ]
GPLの条件を拒否する人は、著作権法の下で、GPLライセンスのソフトウェアまたは派生作品をコピーまたは配布する許可を得ていません。ただし、これらの人がGPLライセンスのプログラムを再配布しない場合、組織内でソフトウェアを自由に使用することはでき、プログラムを使用して作成された作品(プログラムを含む)はこのライセンスの対象とする必要はありません。[ 61 ] [ 62 ] [ 63 ] [ 64 ] [ 65 ] [ 66 ] [ 67 ]
2007年、ソフトウェア開発者のアリソン・ランダルは、GPLv3(ライセンスとして)は専門家以外の読者にとって不必要に分かりにくく、同じ条件と法的効力を維持しながら簡素化できると主張した。[ 68 ]
2017年4月、米国連邦裁判所はオープンソースライセンスは法的拘束力のある契約であるとの判決を下した。[ 69 ]
2021年10月、ソフトウェア・フリーダム・コンサーバンシー(エンドユーザー)は、契約違反を理由にVizio社(著作権者)を提訴した。訴訟の目的は、Vizio社のテレビのソースコードを入手することであった。連邦判事は、GPLはエンドユーザーにとって強制力のある契約であり、著作権者にとってもライセンスであると暫定的に判決を下した。[ 70 ]
GPLの条文は著作権で保護されており、その著作権はフリーソフトウェア財団が保有しています。
FSFは、派生ライセンスがGPLのプレアンブルを許可なく使用しない限り、GPLに基づいて新しいライセンスを作成することを許可しています。ただし、このようなライセンスはGPLと互換性がない可能性があり[ 71 ] 、ライセンスの増殖につながる可能性があるため、この使用は推奨されません。
GNUプロジェクトによって作成されたその他のライセンスには、GNU Lesser General Public License、GNU Free Documentation License、およびGNU Affero General Public Licenseなどがあります。
GPL のテキストは GPL の対象外です。ライセンスの著作権は、ライセンス自体の変更を禁止しています。ライセンスのコピーと配布は許可されています。GPL は、受領者に「プログラムとともにこのライセンスのコピー」を受け取ることを要求しているからです。[ 72 ] GPL FAQによると、次の 3 つの条件を満たせば、誰でも GPL の修正版を使用して新しいライセンスを作成できます。ライセンスに別の名前を使用すること。「GNU」に言及しないこと。前文を削除すること。ただし、フリーソフトウェア財団 (FSF) から許可を得れば、修正されたライセンスで前文を使用できます。[ 73 ]
GNAT修正一般公衆ライセンス(略称:修正GPL、GMGPL )は、コンパイル済みユニットおよびAdaプログラミング言語の汎用機能向けに特別に修正されたGNU一般公衆ライセンスのバージョンです。修正内容は以下のとおりです。
GNAT Adaコンパイラは、コンパイラディレクティブを使用して、一部のGPLソフトウェアライセンスの問題に対する適合性チェックを自動化できます。これを使用してpragma License (Modified_GPL);、修正GPLに対するチェックを有効にします。GNATリファレンスマニュアル[ 74 ]には、License [ 75 ]プラグマと他のコンパイラディレクティブが記載されています。
FSFによると、「GPLは、改変版またはその一部を公開することを要求していません。改変を行い、公開することなく私的に使用することは自由です。」[ 76 ]しかし、GPLライセンスのエンティティを公開した場合、リンクに関する問題、つまり、GPLライブラリを使用するプロプライエタリプログラムがGPLに違反しているかどうかという問題が生じます。
この重要な問題は、GPL以外のソフトウェアがGPLライブラリに静的リンクまたは動的リンクを合法的に行うことができるかどうかである。この点については様々な意見がある。GPLは、 GPLに基づく派生著作物はすべてGPLの下でなければならないと明確に規定している。GPLライブラリの使用や、GPLソフトウェアをより大きなパッケージ(静的リンクによってバイナリファイルに混入するなど)にバンドルすることに関して、曖昧さが生じる。
フリーソフトウェア財団は、GPLライセンスの著名なソフトウェア製品とライセンス文自体の著作権を保有しています。同財団は、動的にリンクされたライブラリを使用する実行ファイルは確かに派生著作物であると主張しています。ただし、この主張は、互いに通信する別々のプログラムには適用されません。[ 77 ]
フリーソフトウェア財団は、GPLとほぼ同じだが、「ライブラリを使用する」目的でのリンクを許可する追加の権限が付与されたLGPLも作成した。
リチャード・ストールマンとFSFは、特にライブラリ作成者にGPLライセンスの下でライセンスを付与することを推奨しており、これによりプロプライエタリなプログラムがライブラリを使用できなくなり、プロプライエタリな世界よりも多くのツールを提供することでフリーソフトウェアの世界を保護しようとしている。[ 78 ]
静的リンクは派生作品を生み出すが、GPL コードに動的にリンクする実行ファイルが派生作品とみなされるべきかどうかは不明であると考える人もいる(弱いコピーレフトを参照)。Linux の作者である Linus Torvalds は、動的リンクによって派生作品が作られる可能性があることには同意しているが、その状況については意見が異なる。[ 79 ]
Novellの弁護士は、動的リンクが派生的ではないことは「理にかなっている」が「明確ではない」と述べ、善意の動的リンクの証拠は、独自のLinuxカーネルドライバの存在に見られると述べている。[ 80 ]
Galoob v. Nintendo事件において、米国第 9 巡回控訴裁判所は、派生著作物を「形式」または「永続性」を有するものと定義し、「侵害著作物は、何らかの形で著作権で保護された著作物の一部を取り込んでいなければならない」と指摘した。しかしながら、今日までこの特定の問題を明確に解決した裁判所の判決はない。[ 81 ]
Linux Journalの記事によると、ローレンス・ローゼン(かつてOpen Source Initiativeの顧問弁護士を務めていた) は、ソフトウェアが派生著作物であるかどうかという問題において、リンクの方法はほとんど関係ないと主張している。より重要なのは、そのソフトウェアがクライアント ソフトウェアやライブラリとインターフェースすることを意図していたかどうかという問題である。[ 82 ] ローゼンは、「新しいプログラムが派生著作物であるかどうかの主な指標は、元のプログラムのソース コードが (コピー ペーストの意味で) 使用されたか、修正されたか、翻訳されたか、あるいは何らかの方法で変更されて新しいプログラムが作成されたかどうかである。そうでない場合は、派生著作物ではないと私は主張する」と述べており、意図、バンドル、リンク メカニズムに関する他の多くの点を挙げている。[ 82 ] さらに、同氏は自身の事務所の Web サイトにおいて、そのような「市場ベースの」要因はリンク技術よりも重要であると主張している。[ 83 ]
また、プラグインやモジュール( NVIDIAやATIグラフィックカードのカーネルモジュールなど)が、それ自体が独立した著作物とみなせる場合、GPLライセンスでなければならないのかという具体的な問題もあります。この見解では、GPLv2ライセンスであれば、合理的に独立したプラグイン、あるいはプラグインを使用するように設計されたソフトウェアのプラグインは、任意のライセンスでライセンスできるとされています。特に注目すべきは、GPLv2の以下の条項です。
プログラムの複製物またはその一部を改変して、プログラムに基づく著作物を作成し、上記第1項の条件に従って、かかる改変物または著作物を複製および頒布することができます。ただし、以下のすべての条件を満たす必要があります 。
b) 配布または公開する作品のうち、全体または一部が本プログラムまたはその一部を含むか、または本プログラムまたはその一部から派生したものについては、本ライセンスの条件に基づき、すべての第三者に対して無償で全体としてライセンス供与されなければなりません。 … これらの要件は、改変された作品全体に適用されます。その作品の識別可能な部分が本プログラムから派生しておらず、それ自体が独立した別個の作品と合理的にみなせる場合、それらの部分を別個の作品として配布する際には、本ライセンスおよびその条件はそれらの部分には適用されません。しかし、同じ部分を本プログラムに基づく作品の一部として配布する場合、作品全体の配布は本ライセンスの条件に従わなければならず、他のライセンシーに対する本ライセンスの許可は作品全体に及び、したがって、誰が書いたかに関わらず、すべての部分に及びます。
GPLv3には異なる条項があります。
第4項の規定に基づき、プログラムに基づく著作物、またはプログラムからその著作物を生成するための改変物をソースコードの形式で伝達することができます。ただし、以下のすべての条件を満たす必要があります 。
c) 著作物全体を、複製物を所有するすべての人に、このライセンスに基づいてライセンス供与しなければなりません。したがって、このライセンスは、適用可能な第 7 条の追加条項とともに、著作物全体およびそのすべての部分に、パッケージ化方法に関係なく適用されます。このライセンスは、著作物を他の方法でライセンス供与する許可を与えるものではありませんが、別途許可を得ている場合は、そのような許可を無効にするものではありません。 … 対象著作物と、その性質上対象著作物の拡張ではなく、より大きなプログラムを形成するように結合されていない、他の独立した著作物とのコンパイルは、そのコンパイルおよびそれによって生じる著作権が、個々の著作物が許可する範囲を超えてコンパイルの利用者のアクセスまたは法的権利を制限するために使用されていない場合、「集合体」と呼ばれます。対象著作物が集合体に含まれている場合でも、このライセンスが集合体の他の部分に適用されることはありません。
事例研究として、GPLv2コンテンツ管理システム(CMS )用のいわゆる独自プラグインやテーマ(またはスキン)が批判にさらされており、議論の両陣営が存在します。これらのシステムの例としては、DrupalやWordPressなどがあります。[ 84 ]
FSFはプラグインの呼び出し方法によって区別を設けています。プラグインが動的リンクによって呼び出され、GPLプログラムの関数呼び出しを行う場合、そのプラグインは派生作品である可能性が非常に高いです。[ 85 ]
他のプログラムと通信する行為だけでは、すべてのソフトウェアが GPL である必要はありません。また、GPL ソフトウェアを非 GPL ソフトウェアと一緒に配布する場合も同様です。ただし、GPL ソフトウェアの権利が制限されないようにするためのいくつかの条件に従う必要があります。以下は、ソフトウェアが GPL プログラムと通信したり、GPL プログラムとバンドルしたりすることがどの程度許可されているかを説明する GPL FAQ ( gnu.org ) からの引用です。[ 86 ]
「集約版」とその他の種類の「修正版」との違いは何ですか?
「アグリゲート」とは、複数の独立したプログラムを同じCD-ROMなどのメディアにまとめて配布したものです。GPLでは、他のソフトウェアのライセンスが非フリーまたはGPLと互換性がない場合でも、アグリゲートを作成および配布することが許可されています。唯一の条件は、各プログラムの個別のライセンスでユーザーに認められている権利の行使を禁止するライセンスの下でアグリゲートをリリースしてはならないということです。
2つの独立したプログラムと、2つの部分からなる1つのプログラムの境界線はどこにあるのでしょうか?これは法的な問題であり、最終的には裁判官が判断することになります。適切な基準は、通信のメカニズム(exec、パイプ、RPC、共有アドレス空間内での関数呼び出しなど)と通信の意味論(どのような種類の情報が交換されるか)の両方に依存すると考えられます。
モジュールが同じ実行ファイルに含まれている場合、それらは間違いなく1つのプログラムに統合されます。モジュールが共有アドレス空間内でリンクされて実行されるように設計されている場合、それはほぼ間違いなく、それらを1つのプログラムに統合することを意味します。
対照的に、パイプ、ソケット、コマンドライン引数は、通常、2つの独立したプログラム間で通信を行うためのメカニズムです。そのため、これらが通信に使用される場合、モジュールは通常、別々のプログラムとして扱われます。しかし、通信の意味が十分に密接で、複雑な内部データ構造を交換するような場合は、2つの部分を1つの大きなプログラムとして統合する根拠にもなり得ます。
FSFは、情報交換の「複雑さ」と「親密さ」、そして(意味論ではなく)その仕組みという2つの側面を通して、「ライブラリ」と「その他のプログラム」を区別している。しかし、同財団は、この問題は明確ではなく、複雑な状況においては判例が結果を左右すると認めている。
GPLの最初の既知の違反は1989年に発生し、NeXT社がGCCコンパイラを拡張してObjective-Cをサポートするようにしたものの、変更内容を公表しなかった。[ 87 ]調査の後、同社は公開パッチファイルを作成した。この違反に関して訴訟は提起されなかった。[ 88 ]
2002年、MySQL ABは、米国連邦裁判所でProgress NuSphere社を著作権および商標権侵害で訴えた。NuSphere社は、MySQLのGPLライセンスのコードをNuSphere Geminiテーブルにリンクしたが、ライセンスを遵守しなかったため、MySQLの著作権を侵害したとされた。2002年2月27日の予備審理の後、両当事者は和解交渉に入り、最終的に和解した。[ f ]審理後、FSFは、裁判官が「GNU GPLを強制力のある拘束力のあるライセンスと見なしていることを明確にした」とコメントした。[ 89 ]
2003 年 8 月、SCO グループは、GPL には法的効力がないと信じており、SCO UnixからLinux カーネルにコピーされたとされるコードの部分について訴訟を起こすつもりであると表明した。これは SCO にとって問題のある立場だった。なぜなら、彼らはCaldera OpenLinuxディストリビューションで Linux やその他の GPL ライセンスのコードを配布しており、GPL の条項以外ではそうする法的権利があったという証拠はほとんどないからである。2018年 2 月、連邦巡回裁判所の判決、控訴、巡回裁判所への一部差し戻しの後、当事者は残りの請求を改めて表明し、最終判決に向けての計画を提示した。[ 90 ]残りの請求はプロジェクト モンテレーに関するもので、2021 年 11 月に IBM が TSG (旧 SCO) の破産管財人に 1425 万ドルを支払うことで和解した。[ 91 ]
2004年4月、Netfilter / iptablesプロジェクトは、Sitecom GermanyがGPLの条項に違反してNetfilterのGPLライセンスソフトウェアの配布を中止することを拒否したため、ミュンヘン地方裁判所からSitecom Germanyに対する仮差止命令を獲得した。NetfilterのHarald Welteは、Institut für Rechtsfragen der Freien und Open Source Software(ifrOSS、英語では「自由およびオープンソースソフトウェアに関する法的問題研究所」)の共同創設者であるTill Jaegerによって代理された。2004年7月、ドイツの裁判所はこの差止命令をSitecomに対する最終判決として確定した。[ 92 ]裁判所の正当化理由は次のとおりです。
この判決は、FSFのエベン・モーグレンが以前に予測していた通りのものでした。この判決は2つの点で重要でした。1つは、GPLの条項に違反することが著作権侵害になり得ることを裁判所が初めて確認したこと、もう1つは、ドイツ法の下でGPLv2の執行可能性に関する判例を確立したことです。 [ 93 ]
2005年5月、ダニエル・ウォレスはインディアナ州南部地区でフリーソフトウェア財団を相手取り訴訟を起こし、GPLは価格を(ゼロに)固定しようとする違法な試みであると主張した。この訴訟は2006年3月に、ウォレスが有効な反トラスト法違反の主張を立証できなかったことを理由に却下された。裁判所は「GPLは、自由競争とコンピュータオペレーティングシステムの配布を阻害するのではなく、むしろ促進しており、その利益は消費者に直接渡る」と指摘した。[ 94 ]ウォレスは訴状をさらに修正する機会を与えられず、FSFの訴訟費用を支払うよう命じられた。
2005年9月8日、ソウル中央地方裁判所は、GPLライセンス作品から派生した営業秘密に関する訴訟において、GPLは重要ではないとの判決を下した。 [ 95 ]被告側は、GPLを遵守しつつ作品を配布しながら営業秘密を維持することは不可能であるため、営業秘密の侵害には当たらないと主張した。この主張は根拠がないと判断された。
2006年9月6日、gpl-violations.orgプロジェクトは、 D-Link Germany GmbHが配布するストレージデバイスでLinuxカーネルの一部を著作権侵害的に使用した件に関して、D-Link Germany GmbHに対する訴訟で勝訴した。 [ 96 ]判決では、GPLは有効であり、法的拘束力があり、ドイツの裁判所で有効であるとされた。[ 97 ]
2007年後半、BusyBoxの開発者とソフトウェア自由法センターは、組み込みシステムにおけるBusyBoxの販売業者からGPL準拠を勝ち取るためのプログラムを開始し、準拠しない販売業者を提訴した。これらの訴訟は、GPLの義務履行のために裁判所を利用した米国初の事例であると主張された(BusyBox GPL訴訟を参照)。
2008年12月11日、フリーソフトウェア財団(FSF )は、シスコシステムズ社を、同社のLinksys部門による著作権侵害で提訴した。侵害の対象となったのは、FSFのGPLライセンスのcoreutils、readline、Parted、Wget、GNU Compiler Collection、binutils、およびGNU Debuggerソフトウェアパッケージである。Linksysは、これらのパッケージをWRT54GワイヤレスルーターのLinuxファームウェア[ 98 ]やその他多数のデバイスに配布している。これらのデバイスには、DSLモデムやケーブルモデム、ネットワーク接続ストレージデバイス、VoIPゲートウェイ、仮想プライベートネットワークデバイス、ホームシアター(またはメディアプレーヤー)デバイスなどが含まれる[ 99 ] 。
FSFは、6年間にわたる数々の問題を受けてシスコを提訴した。
シスコは6か月後、いくつかの措置に同意することで訴訟を和解させた。
2011年、GNU EmacsがGPLの意図する精神に反して、対応するソースコードのないバイナリファイルを誤って2年間リリースしていたことが発覚し、著作権侵害となった。[ 101 ]リチャード・ストールマンはこの事件を「非常に悪い間違い」と表現し、[ 102 ]すぐに修正された。FSFは、これらのバイナリファイルを配布することで意図せずGPLに違反した下流の再配布者を訴えることはなかった。
2017年、 Ghostscriptインタープリタの開発元であるArtifexは、Ghostscriptを含むオフィススイートの開発元であるHancomを提訴した。ArtifexはGhostscriptに対して2つのライセンスを提供している。1つはAGPLライセンス、もう1つは商用ライセンスである。HancomはArtifexから商用ライセンスを取得せず、またオフィススイートをフリーソフトウェアとしてリリースすることもなかった。Artifexは米国地方裁判所でHancomを提訴し、2つの主張を行った。1つ目は、HancomによるGhostscriptの使用は著作権侵害である、2つ目は、HancomによるGhostscriptの使用はライセンス違反である、という主張である。裁判所は、GPLライセンスは有効な契約であり、Hancomは契約違反を犯したと判断した。[ 103 ] [ 104 ]
2021年7月20日、オープンソースのチェスエンジンStockfishの開発者は、チェスソフトウェアの作成者であるChessBaseをGPLv3ライセンス違反で訴えた。[ 105 ] Stockfishの開発者は、ChessBaseがStockfishのコードにわずかな変更を加えただけで、新しいチェスエンジン(Fat Fritz 2とHoudini 6)を顧客に販売したと主張した。[ 106 ]さらに、Fat Fritz 2は革新的なチェスエンジンであるかのように宣伝された。Stockfishの見解では、ChessBaseはGPLに従ってこれらの製品をフリーソフトウェアとして配布しなかったため、ライセンスを侵害した。
1年後の2022年11月7日、両当事者は合意に達し、紛争は終結した。近い将来、ChessBaseはStockfishコードを含む製品の販売を中止し、同社のウェブページ上の適切な通知を通じて顧客にこの変更を知らせることになった。しかし、1年後にはChessBaseのライセンスは復活することになった。Stockfishは損害賠償や金銭的補償を求めなかった。[ 107 ] [ 108 ] [ 109 ]

複数の他のライセンスでライセンスされたコードは、GPL に基づくプログラムと矛盾なく組み合わせることができます。ただし、作品全体に対する制限の組み合わせが、GPL で許可されている範囲を超える追加の制限を課さないことが条件です。[ 110 ] GPL の通常の条項に加えて、適用できる追加の制限と許可があります。
FSFは、オリジナルのMIT/Xライセンス、BSDライセンス(現在の3条項形式)、Artistic License 2.0 [ 117 ]など、最も一般的なライセンスの多くを含むGPL互換フリーソフトウェアライセンスのリスト[ 115 ]を維持しています[ 116 ]。
GPLv3以降、特定の素材は他の素材と一方的に互換性があります。クリエイティブ・コモンズ表示-継承4.0国際ライセンスの下にある素材(テキストやその他のメディアなど)は、GPLライセンスの素材(主にソフトウェア)にリミックスできますが、その逆はできません。これは、ゲームエンジン(GPLライセンス)とゲームスクリプト( CC BY-SAライセンス)などのニッチなユースケースに当てはまります。[ 118 ] [ 119 ]
David A. Wheeler は、フリー (またはオープンソース) ソフトウェア開発者は GPL 互換ライセンスのみを使用するべきだと主張している。なぜなら、他のライセンスを使用すると、他の人が参加してコードを提供することが難しくなるからである。[ 120 ]ライセンスの非互換性の具体的な例として、Sun MicrosystemsのZFSファイルシステムは、GPL と互換性のないCommon Development and Distribution Licenseの下でライセンスされているため、GPL ライセンスの Linux カーネルに含めることができない。さらに、ZFS は特許で保護されているため、GPL と互換性のある独自開発の実装を配布するには、Oracle の許可が必要となる。[ 121 ]
A number of businesses use multi-licensing to distribute a GPL version and sell a proprietary license to companies wishing to combine the package with proprietary code (whether using static or dynamic linking). Examples of such companies include MySQL AB, Digia PLC (with Qt framework, before 2011 from Nokia), Red Hat (with Cygwin), and Riverbank Computing (with PyQt). Other organizations, such as the Mozilla Foundation (whose products include Mozilla Application Suite, Mozilla Thunderbird, and Mozilla Firefox), used multi-licensing to distribute versions under the GPL and other open-source licenses.
It is possible to use the GPL for text documents (or more generally for any kind of media) if it is clear what constitutes the source code, which is defined as "the preferred form of the work for making changes in it".[122] For manuals and textbooks, though, the FSF recommends using the GNU Free Documentation License (GFDL) instead, which the foundation created for this purpose.[123] Nevertheless, in a resolution adopted in 2006, Debian developers recommended licensing documentation for their project under the GPL, because the GFDL was incompatible with the GPL.[124] That is, text licensed under the GFDL cannot be incorporated into GPL software.[125] Similarly, the FLOSS Manuals foundation, dedicated to creating manuals for free software, chose in 2007 to eschew the GFDL in favor of the GPL for its texts.[126]
If the GPL is used for computer fonts, any documents or images made with these fonts might also need to be distributed under the terms of the GPL. This dependency does not apply in countries that recognize typefaces (i.e., the appearance of fonts) as being useful articles and thus not eligible for copyright, but rather font files as copyrighted computer software. This situation can complicate font embedding, since a document could be considered 'linked' to its font; in other words, embedding a vector font in a document could force the document to be released under the GPL, but a rasterized rendering of the font would not be subject to the GPL. The FSF provides the GPL font exception for cases where this dependency is not desired.[127]
Historically, the GPL family has been one of the most popular software licenses in the FOSS domain.[7][128][9][10][11][129]
A 1997 survey of MetaLab, then the largest free software archive, showed that the GPL accounted for about half of the software licensed there.[128] Similarly, a 2000 survey of Red Hat Linux 7.1 found that 53% of the source code was licensed under the GPL.[9]As of 2003, a significant share of the projects listed on SourceForge.net were from the GPL family—about 68% of all projects listed, and 82.1% of the licensed projects that were open source industry certified.[130]As of August 2008, the GPL family accounted for 70.9% of the 44,927 free software projects listed on Freecode.[10]
After the GPLv3 was released in June 2007, adoption of this new license version was widely discussed, and some projects decided against upgrading.[131] For instance, the Linux kernel, MySQL, BusyBox, AdvFS,[132]Blender, VLC media player, and MediaWiki decided against adopting GPLv3.[40][42][133][134][135][136][137][138] Still, two years after the release of GPLv3, Google open-source programs office manager Chris DiBona reported as follows: 50% of GPL-licensed open-source projects had moved from GPLv2 to GPLv3, counting the projects that were hosted at the service Google Code.[11]
In 2011, four years after the release of the GPLv3, 6.5% of all open-source license projects were GPLv3 while 42.5% were GPLv2, according to data from Black Duck Software.[139][140] Later in 2011, analyst Matthew Aslett from the company 451 Group asserted in a blog post that copyleft licenses had gone into decline and permissive licenses increased, based on statistics from Black Duck Software.[141] Similarly, in February 2012, Jon Buys reported that among the top 50 projects on the platform GitHub, only five projects were under a GPL license, including dual-licensed and AGPL projects.[142]
GPL usage statistics from 2009 to 2013 were extracted from data on the Freecode website by Walter van Holst while analyzing license proliferation:[12]
In August 2013, according to Black Duck Software, their website's data showed that the GPL license family was used by 54% of open-source projects, with a breakdown of the individual licenses as shown in the table below.[129] However, a study later in 2013 showed that software licensed under the GPL license family had actually increased, and that even the data from Black Duck Software had shown a total increase in software projects licensed under GPL. The later study used public information gathered from repositories of the Debian Project, and this study criticized Black Duck Software for not publishing the methodology used in collecting their statistics.[145] Daniel German, professor in the Department of Computer Science at the University of Victoria in Canada, gave a talk in 2013 on methodological challenges in determining which free software licenses are most widely used, and he showed that he could not replicate the result from Black Duck Software.[146]
In 2015, according to Black Duck, GPLv2 had lost its first-place position to the MIT license and was now in second place; and the GPLv3 had dropped to fourth place, while the Apache license had kept third place.[7]
In March 2015, an analysis of the repositories on GitHub revealed that approximately 25% of licensed projects used the GPL license family.[152] In June 2016, an analysis of the Fedora Project community's packages revealed the GNU GPLv2 or later as the most popular license, and the GNU GPL family as the most popular license family (followed by the MIT, BSD, and GNU LGPL families).[153]
In April 2018, whitesourcesoftware.com analyzed the FOSS ecosystem; their results showed the GPLv3 to be third place (18%) and the GPLv2 in fourth place (11%), after the MIT license (26%) and the Apache 2.0 license (21%).[154]
The GPL is incompatible with many systems for the digital distribution of applications, such as the Mac App Store and certain other software distribution platforms (on smartphones and PCs). The problem lies in the right "to make a copy for your neighbour", since this right is violated by digital-rights management (DRM) systems that are embedded in the platform to prevent copying of paid software. Even if the application is free in the application store in question, copying might result in a violation of that application store's terms.[155]
There is a distinction between an app store, which sells DRM-restricted software under proprietary licenses, and the more general concept of digital distribution via some form of online software repository. Virtually all modern Unix systems and Linux distributions have application repositories, including NetBSD, FreeBSD, Ubuntu, Fedora, and Debian. These specific application repositories all contain GPL-licensed software apps, in some cases even when the core project does not permit GPL-licensed code in the base system (for instance, OpenBSD).[156] In other cases, such as the Ubuntu App Store, proprietary commercial software applications and GPL-licensed applications are both available via the same system. The Mac App Store (along with similar projects) is not incompatible with GPL-licensed apps for reasons inherent in the concept of an app store; rather, the incompatibility is due specifically to Apple's terms-of-use requirement—that all apps in the store utilize Apple DRM restrictions.[155] By contrast, Ubuntu's app store does not have such a requirement: "These terms do not limit or restrict your rights under any applicable open source software licenses."[157]
In 2001, Microsoft CEO Steve Ballmer referred to Linux as "a cancer that attaches itself in an intellectual property sense to everything it touches".[158][159] In response to Microsoft's attacks on the GPL, several prominent Free Software developers and advocates released a joint statement supporting the license.[160] Microsoft released Microsoft Windows Services for UNIX, which contains GPL-licensed code. In July 2009, Microsoft released a body of about 20,000 lines of Linux driver code under the GPL.[161] The Hyper-Vhypervisor code in this release used open-source components licensed under the GPL; this code was originally statically linked to proprietary binary parts, the latter not being permitted in GPL-licensed software.[162]
The description of the GPL as "viral", when called "General Public Virus" or "GNU Public Virus" (GPV), dates back to the year after the GPLv1 was released.[163]
In 2001, the term received broader public attention when Craig Mundie, a Senior Vice President at Microsoft, described the GPL as being "viral".[164] Mundie argues that the GPL has a "viral" effect, in that it only allows the conveyance of whole programs; this implies that programs which link to GPL libraries must themselves be under a GPL-compatible license, otherwise they cannot be combined and distributed.
In a 2006 interview, Richard Stallman responded that Mundie's metaphor of a "virus" is incorrect, as software under the GPL does not "attack" or "infect" other software. Accordingly, Stallman believes that comparing the GPL to a virus is inappropriate, and that a better metaphor for software under the GPL would be a spider plant: if a person takes a piece of this plant and places it somewhere else, it grows there too.[165]
Nevertheless, the concept of the GPL's viral nature was later adopted by other people.[166][167] For instance, a 2008 article stated that "The GPL license is 'viral,' meaning any derivative work you create containing even the smallest portion of the previously GPL-licensed software must also be licensed under the GPL license."[168]
The FreeBSD project has stated that "a less publicized and unintended use of the GPL is that it is very favorable to large companies that want to undercut software companies. In other words, the GPL is well suited for use as a marketing weapon, potentially reducing overall economic benefit and contributing to monopolistic behavior". The project also stated that the GPL can "present a real problem for those wishing to commercialize and profit from software."[169]
Richard Stallman wrote about an example of ethically acceptable commercialization practice—the practice of selling exceptions to free software licenses. This practice implies that the copyright holder of a given software takes two steps:
Stallman considered the practice of selling exceptions to be "acceptable since the 1990s, and on occasion I've suggested it to companies. Sometimes this approach has made it possible for important programs to become free software". Although the FSF does not practice selling exceptions, they propose a comparison with the X11 license (a non-copyleft free software license) as a way of suggesting that this commercialization technique be regarded as ethically acceptable. Releasing a given program under a non-copyleft free software license would permit embedding the code in proprietary software. Stallman comments that "either we have to conclude that it's wrong to release anything under the X11 license—a conclusion I find unacceptably extreme—or reject this implication. Using a non-copyleft license is weak, and usually an inferior choice, but it's not wrong. In other words, selling exceptions permits some embedding in proprietary software, and the X11 license permits even more embedding. If this doesn't make the X11 license unacceptable, it doesn't make selling exceptions unacceptable".[170]
In 2000, developer and author Nikolai Bezroukov published an analysis and comprehensive critique of GPL's foundations and Stallman's software development model, called "Labyrinth of Software Freedom".[171][172]
As a parody of the GPL, version 2 of the Do What The Fuck You Want To Public License (WTFPL) was created by Debian project leader Sam Hocevar in 2004.[173]
In 2005, open source software advocate Eric S. Raymond questioned the relevance of GPL at that time for the FOSS ecosystem, stating that "We don't need the GPL anymore. It's based on the belief that open source software is weak and needs to be protected. Open source would be succeeding faster if the GPL didn't make lots of people nervous about adopting it."[174] Richard Stallman replied that "GPL is designed to ... ensure that every user of a program gets the essential freedoms—to run it, to study and change the source code, to redistribute copies, and to publish modified versions ... [Raymond] addresses the issue in terms of different goals and values—those of 'open source,' which do not include defending software users' freedom to share and change software."[175]
In 2007, Allison Randal, who took part in the GPL draft committee, criticized GPLv3 for being incompatible with the GPLv2[176] and for lacking clarity in its formulation.[68] Similarly that year, William Hurley (a.k.a. Whurly) foresaw the decline of the GPL due to its lack of focus on developers with GPLv3, which would encourage them to move toward permissive licenses.[177]
In a 2009 article at the InformIT website, David Chisnall described "The Failure of the GPL"—problems such as its incompatibility and the complexity of its license text.[178]
In 2014, developer and executive Bryan Cantrill termed the copyleft GPL a "Corporate Open Source Anti-pattern" for being "anti-collaborative"; he recommended permissive software licenses instead.[179]
In September 2006, during the draft process of the GPLv3, several high-profile developers of the Linux kernel—such as Linus Torvalds, Greg Kroah-Hartman, and Andrew Morton—warned of a split in the FOSS community: "the release of GPLv3 portends the Balkanisation of the entire Open Source Universe upon which we rely."[38] Similarly, Benjamin Mako Hill argued around the same time that a united, collaborating community is more important than a single license.[180]
After the GPLv3 was released in 2007, some journalists[42][139][181] and Toybox developer Rob Landley[45][46] criticized the release: with the introduction of the GPLv3, the division between the open source and free software communities had widened, because the significantly extended GPLv3 is essentially incompatible with the GPLv2.[111] Compatibility is only provided under the optional "or later" clause of the GPL; this option which was not pursued by the Linux kernel, among other software.[40] Before the release of GPLv3, Bruce Byfield noted, GPLv2 was a unifying element between the open-source and the free software communities.[139]
For the LGPLv3, GNU TLS maintainer Nikos Mavrogiannopoulos similarly argued, "If we assume that [the LGPLv3's] primary goal is to be used by free software, then it blatantly fails that"; this statement was made after Mavrogiannopoulos changed the license of the GnuTLS library from LGPLv3 back to LGPLv2.1, due to license compatibility issues.[182][183]
In 2007, Lawrence Rosen, attorney and computer specialist, praised how the community using the Apache license could then collaborate with the GPL community in a compatible way, since the problems of GPLv2 compatibility with Apache licensed software had been resolved by the GPLv3. Along these lines, he said that "I predict that one of the biggest success stories of GPLv3 will be the realization that the entire universe of free and open-source software can thus be combined into comprehensive open source solutions for customers worldwide."[184]
In July 2013, Armin Ronacher (creator of the Flask framework) drew a less optimistic conclusion about GPL compatibility in the FOSS ecosystem: "When the GPL is involved the complexities of licensing becomes a non fun version of a riddle"; he also noted that the conflict between Apache License 2.0 and GPLv2 still had an impact on the ecosystem.[185]
... This page presents the opinion of some debian-legal contributors on how certain licenses follow the Debian Free Software Guidelines (DFSG). ... Licenses currently found in Debian main include:
- ...
- Expat/MIT-style licenses
- ...
... This is the latest version of the GNU GPL: a free software license, and a copyleft license. ... GPLv3 is not compatible with GPLv2 by itself. However, most software released under GPLv2 allows you to use the terms of later versions of the GPL as well. When this is the case, you can use the code under GPLv3 to make the desired combination. ...
... The following licenses have been approved by the OSI. ...
- GNU General Public License version 2 (GPL-2.0)
- GNU General Public License version 3 (GPL-3.0)
- ...
…
これはGNU GPLの以前のバージョンです。フリーソフトウェアライセンスであり、コピーレフトライセンスです。
…
GPLv2自体はGPLv3と互換性がありません。しかし、GPLv2でリリースされたほとんどのソフトウェアでは、GPLの後のバージョンの条項も使用できます。この場合、GPLv3のコードを使用して、目的の組み合わせを作成できます。
…
60.5%、GPLv2 6.9%、GPLv2 1.9%、GPLv3 1.6%
So while the BSDs have lost energy every time a company gets involved, the GPL'ed programs gain every time a company gets involved.
{{cite web}}: CS1 maint: deprecated archival service (link)Showing comments in file 'gplv3-draft-1' ... found 727"gplv3.fsf.org comments for draft 3". Archived from the original on 3 July 2008. Retrieved 31 March 2008.
Showing comments in file 'gplv3-draft-3' ... found 649"gplv3.fsf.org comments for draft 4". Archived from the original on 2 October 2008. Retrieved 31 March 2008.
Showing comments in file 'gplv3-draft-4' ... found 298
The current version (Discussion Draft 2) of GPLv3 on first reading fails the necessity test of section 1 on the grounds that there's no substantial and identified problem with GPLv2 that it is trying to solve. However, a deeper reading reveals several other problems with the current FSF draft: 5.1 DRM Clauses ... 5.2 Additional Restrictions Clause ... 5.3 Patents Provisions ... since the FSF is proposing to shift all of its projects to GPLv3 and apply pressure to every other GPL-licensed project to move, we foresee the release of GPLv3 portends the Balkanisation of the entire Open Source Universe upon which we rely.
Second, the war between Linus Torvalds and other Kernel developers and the Free Software Foundation over GPLv3 is continuing, with Torvalds saying he's fed up with the FSF.
[T]he only valid version of the GPL as far as the kernel is concerned is _this_ particular version of the license (ie v2, not v2.2 or v3.x or whatever), unless explicitly otherwise stated.
In some ways, Linux was the project that really made the split clear between what the FSF is pushing which is very different from what open source and Linux has always been about, which is more of a technical superiority instead of a – this religious belief in freedom," Torvalds told Zemlin. So, the GPL Version 3 reflects the FSF's goals and the GPL Version 2 pretty closely matches what I think a license should do and so right now, Version 2 is where the kernel is.
The only one of any note that I'd like to point out directly is the clarification in the COPYING file, making it clear that it's only _that_particular version of the GPL that is valid for the kernel. This should not come as any surprise, as that's the same license that has been there since 0.12 or so, but I thought I'd make that explicit
Looking at the near-finished draft, I have to say it's unlikely that they ever considered simplicity a priority, if they considered it at all. ... The language choices of an open source license can support that freedom, can empower the users and the developers. The GPLv3 doesn't.
No. Some of the requirements in GPLv3, such as the requirement to provide Installation Information, do not exist in GPLv2. As a result, the licenses are not compatible: if you tried to combine code released under both these licenses, you would violate section 6 of GPLv2. However, if code is released under GPL "version 2 or later," that is compatible with GPLv3 because GPLv3 is one of the options it permits.
Both LibreCAD and FreeCAD both want to use LibreDWG and have patches available for supporting the DWG file format library, but can't integrate them. The programs have dependencies on the popular GPLv2 license while the Free Software Foundation will only let LibreDWG be licensed for GPLv3 use, not GPLv2.Prokoudine, Alexandre (27 December 2012). "LibreDWG drama: the end or the new beginning?". librearts.org. Retrieved 4 February 2025.
... the unfortunate situation with support for DWG files in free CAD software via LibreDWG. We feel, by now it ought to be closed. We have the final answer from FSF. ... "We are not going to change the license."
It is not possible to borrow text from a GFDL'd manual and incorporate it in any free software program whatsoever. This is not a mere license incompatibility. It's not just that the GFDL is incompatible with this or that free software license: it's that it is fundamentally incompatible with any free software license whatsoever. So if you write a new program, and you have no commitments at all about what license you want to use, saving only that it be a free license, you cannot include GFDL'd text. The GNU FDL, as it stands today, does not meet the Debian Free Software Guidelines. There are significant problems with the license, as detailed above; and, as such, we cannot accept works licensed under the GNU FDL into our distribution.
{{cite web}}: CS1 maint: deprecated archival service (link)"License -> OSI: ... GNU General Public License (GPL) (32641 projects), GNU Library or Lesser General Public License (LGPL) (4889 projects" (of 45727, 82.1%)
Currently the decision to move from GPL v2 to GPL v3 is being hotly debated by many open source projects. According to Palamida, a provider of IP compliance software, there have been roughly 2489 open source projects that have moved from GPL v2 to later versions.
Since BusyBox can be found in so many embedded systems, it finds itself at the core of the GPLv3 anti-DRM debate. ... The real outcomes, however, are this: BusyBox will be GPLv2 only starting with the next release. It is generally accepted that stripping out the "or any later version" is legally defensible, and that the merging of other GPLv2-only code will force that issue in any caseLandley, Rob (9 September 2006). "Re: Move GPLv2 vs v3 fun..." lwn.net. Retrieved 21 November 2015.
Don't invent a straw man argument please. I consider licensing BusyBox under GPLv3 to be useless, unnecessary, overcomplicated, and confusing, and in addition to that it has actual downsides. 1) Useless: We're never dropping GPLv2.
[Blender's Toni Roosendaal:] "Blender is also still 'GPLv2 or later'. For the time being we stick to that, moving to GPL 3 has no evident benefits I know of."
In 2001, VLC was released under the OSI-approved GNU General Public version 2, with the commonly-offered option to use 'any later version' thereof (though there was not any such later version at the time). Following the release by the Free Software Foundation (FSF) of the new version 3 of its GNU General Public License (GPL) on the 29th of June 2007, contributors to the VLC media player, and other software projects hosted at videolan.org, debated the possibility of updating the licensing terms for future version of the VLC media player and other hosted projects, to version 3 of the GPL. ... There is strong concern that these new additional requirements might not match the industrial and economic reality of our time, especially in the market of consumer electronics. It is our belief that changing our licensing terms to GPL version 3 would currently not be in the best interest of our community as a whole. Consequently, we plan to keep distributing future versions of VLC media player under the terms of the GPL version 2.
The source code we develop at blender.org is default being licensed as GNU GPL Version 2 or later.
At the time, the decision seemed sensible in the face of a deadlock. But now, GPLv2 is used for 42.5% of free software, and GPLv3 for less than 6.5%, according to Black Duck Software.
From the above chart it is clear that the GPL family is the highest used (I had miscalculated it as MIT before). The other major licenses are MIT, BSD, the LGPL family, Artistic (for Perl packages), LPPL (fo[r] texlive packages), ASL.
{{cite web}}: CS1 maint: deprecated archival service (link)Viral property stimulates proliferation of licenses and contributes to the "GPL-enforced nightmare" – a situation when many other licenses are logically incompatible with the GPL and make life unnecessary difficult for developers working in the Linux environment (KDE is a good example here, Python is a less known example).
The WTFPL is a parody of the GPL, which has a similar copyright header and list of permissions to modify (i.e. none), see for instance gnu.org/licenses/gpl-3.0.en.html. The purpose of the WTFPL wording is to give more freedom than the GPL does.
We don't need the GPL anymore. It's based on the belief that open source software is weak and needs to be protected. Open source would be succeeding faster if the GPL didn't make lots of people nervous about adopting it.
ESR addresses the issue in terms of different goals and values—those of "open source," which do not include defending software users' freedom to share and change software. Perhaps he thinks the GNU GPL is not needed to achieve those goals.
You might think the FSF would have to be insane to unleash this licensing hell. ... If the license were purely a cleaned up version of the GPLv2, there would be no incompatibility, the FSF would have no agenda involved in getting projects to update to the new license, and at the same time there would be no reason for projects to object to updating. Smooth sailing.
Version 3 is going to distance Richard Stallman and the Free Software Foundation from the developers that make the organization so influential to begin.
Anti-pattern: Anti-collaborative licensing
The GPL is one thing that almost everyone in the free and open-source software communities have in common. For that reason, the revision has the potential to highlight disagreements, differences in opinion, differences in business models, and differences in tactics. ... We would be wise to remember that the potential for the GPL to hinder our ability to work together is far more dangerous than the even the most radical change textual change the FSF might suggest. ... Above all, we must remember that our community and its goals are more important than any single license – no matter how widespread.
... the latest sign of a growing schism in the open source community between business-minded developers like Torvalds and free software purists.
LGPLv3 is the latest version of the GNU Lesser General Public License. It follows the successful LGPLv2.1 license, and was released by Free Software Foundation as a counterpart to its GNU General Public License version 3. The goal of the GNU Lesser General Public Licenses is to provide software that can be used by both proprietary and free software. This goal has been successfully handled so far by LGPLv2.1, and there is a multitude of libraries using that license. Now we have LGPLv3 as the latest, and the question is how successful is LGPLv3 on this goal? In my opinion, very little. If we assume that its primary goal is to be used by free software, then it blatantly fails that.
The License Compatibility Clusterfuck – When the GPL is involved the complexities of licensing becomes a non fun version of a riddle. So many things to consider and so many interactions to consider. And that GPL incompatibilities are still an issue that actively effects people is something many appear to forget. For instance one would think that the incompatibility of the GPLv2 with the Apache Software License 2.0 should be a thing of the past now that everything upgrades to GPLv3, but it turns out that enough people are either stuck with GPLv2 only or do not agree with the GPLv3 that some Apache Software licensed projects are required to migrate. For instance Twitter's Bootstrap is currently migrating from ASL2.0 to MIT precisely because some people still need GPLv2 compatibility. Among those projects that were affected were Drupal, WordPress, Joomla, the MoinMoin Wiki and others. And even that case shows that people don't care that much about licenses any more as Joomla 3 just bundled bootstrap even though they were not licenses in a compatible way (GPLv2 vs ASL 2.0). The other traditional case of things not being GPL compatible is the OpenSSL project which has a license that does not go well with the GPL. That license is also still incompatible with the GPLv3. The whole ordeal is particularly interesting as some not so nice parties have started doing license trolling through GPL licenses.Ronacher, Armin (2009). "Are you sure you want to use the GPL?". lucumr.pocoo.org.