MITオープンソースライセンスでは、作品の派生物を(MITライセンスの下で)公開する必要がありますか?


9

公開したいライブラリのオープンソースライセンスを探しています。理想的には、無料または商用アプリケーションでこのライブラリを無料で使用できるようにする必要がありますが、ライブラリの派生物(ライブラリの改良など)が作成された場合は、そのライブラリの下にいるすべての人が利用できるようにする必要があります同じライセンス。

言い換えれば、私は次の倫理観を示したいと思います。「あなたはこの作品から無料で利益を得て、あなたがそれを改善すれば、私もあなたの改善から無料で利益を得ることができます」。それは私が探しているタイプのコピーレフトライセンスです。

MITライセンスは可能な解決策のように見えますが、このライセンスの対象となるコードの派生物をすべての人に公開する必要があるかどうかは不明です。誰かがこれを明確/確認できますか?私のニーズをカバーする別のより適切なオープンソースライセンスがある場合は、私も興味があります。ありがとう。


もう少し高度な議論はここにある:programmers.stackexchange.com/questions/12394/...
Dipanメータ

回答:


9

MITライセンスでは、派生物をオープンソースにする必要はありません。あなたはGPLを探してます。

GPLは、コンピュータープログラムの受信者にフリーソフトウェア定義の権利を付与し、コピーレフトを使用して、作業が変更または追加された場合でも、作業が配布されるたびに自由が保持されるようにします。GPLはコピーレフトライセンスです。つまり、派生著作物は同じライセンス条項に基づいてのみ配布できます...


1
GPLにより、ユーザーはGPLの下で派生物を公開しなければならず、制限が厳しくなりすぎます。ライブラリの変更のみを利用可能にしたい。LGPLを使用する必要がありますか?
ジェローム・Verstrynge

8
その場合、うん-LGPLはより適切です。
Antは

(L)GPLは再配布時にのみトリガーされることに注意してください。個人使用のみの二次的著作物を作成するエンドユーザーは、(L)GPLの義務に拘束されません。つまり、厳密に言えば、これは言い回された質問への回答ではありません。
MSalters 2012年

7
@MSalters:誰かが何らかの形でそれを公開していない限り、誰かがあなたのコードから何かを導き出したことを知るのはほとんど不可能だと思います。
Ant

6

簡潔な答え

Eclipse Public LicenseとLGPLの組み合わせにより、希望どおりの結果が確実に得られます。コードの変更を利用可能にする必要がありますが、より大きな製品でコードを使用しても、より大きな製品のライセンスが強制されることはありません。この組み合わせは、コードをGPLプロジェクトと非GPLプロジェクトの両方で使用できるようにするために必要です。

これは、JGraphTなどのプロジェクトが行った方法です。彼らはEPLとLGPLに基づいてプロジェクトを再ライセンスしました。動機と手順は彼らのウィキで説明されています

長い答え

私が思うに、Mozilla Public License(MPL)またはEclipse Public License(EPL)はあなたが探しているライセンスです。なぜなら、「ライブラリから派生物が作成された場合(たとえば、ライブラリの改善)、 ]同じライセンスの下で誰でも利用できるようになりました。」

MPLとEPLライセンスは、GPLとMITの間です。

MITでは、変更、販売、変更されたコードをコミュニティに返さないなど、ユーザーがMITを使用してすべてを行うことができます。

ライブラリが製品全体の1%にすぎない場合でも、GPLにより、ユーザーはすべてのコードをコミュニティに配布する必要があります。

LGPLは、ユーザーにコードのLGPL部分の変更を提供することを強制します。

MPLとEPLはLGPLに似ています。これにより、ユーザーは変更されたソースを利用できるようになります。「変更されたソース」には、MPL / EPLでカバーされたコードの一部のみが含まれます。つまり、ユーザーはライブラリから新しい製品を作成できます。MPL- / EPL-partの変更を行う場合、彼はそれを公開する必要があります。彼による新しいものを公開する必要はありません。

LGPLは明示的に「ライブラリ」について語り、MPLは単に「対象ソフトウェア」(より広い範囲)について語るだけなので、MPL / EPLはよりふさわしいと感じます。

ただし、EPLを選択すると、ソフトウェアとGPLソフトウェアの組み合わせに問題が発生します。EPLはGPLと互換性がありませんこれは、MPLだけを使用する場合には当てはまりません

コードがGPLプロジェクトとGPL以外のプロジェクトの両方で確実に使用されるようにしたい場合は、短い回答で説明されているように、コードをLGPLとEPLでデュアルライセンスします。

  • JGraphT
  • ログバック
  • qooxdoo。彼らは「qooxdooライセンス条項を簡素化および近代化する」ことを計画しているため、デュアルライセンスからMITに切り替えます。

MPLがOPが求めている基準に適合していると感じた理由を説明していただけますか?
maple_shaft

「デュアルライセンス」は、「GPLの製品でこのソフトウェアを使用する場合、このソフトウェアはGPLでライセンスされ、それ以外の場合はMPLでライセンスされる」のように表示する必要がありますか?そのようなことをするプロジェクトはありますか?
9000

@ 9000 GNUFAQによると、コードはMPLとGNUの両方でカバーされています。2番目の段落は少し奇妙で、私はその意味を完全には理解できませんでした。
koppor 2015

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.