私はこれまで、コードとアセットの大部分が私によって作成されたソフトウェアアプリケーションを作成しています。私が他の場所から取ったコードの小さなビットがあります。これらはすべて「それを使ってやりたいことをする」としてライセンスされています。しかし、私は別のプロジェクトのかなり大きな部分を自分の中に組み込みたいと思っているところまで来ました。この別のプロジェクトはGPLv3でライセンスされています。
この時点まで、ソフトウェアのライセンスの問題については考慮していませんでした。今のところ、それは公式ライセンスなしで私のマシンに座っているだけです。
この他のプロジェクトを私のものに組み込むには、GPLv3ライセンスも採用する必要があります。私は、私が書いたもののほとんどはGPLの下でライセンス供与されることに問題はありませんが、私が書いたものの一部をプロプライエタリな派生物(互換性のないGPL)で利用できるようにしたいと思いました。
では、どうすればこれを回避できますか?私がこれまでに思いついたのは、アプリに「プラグイン」またはアドオンを使用することです。基本アプリケーションはGPLですが、派生物に必要なコードをLGPLにするか、クローズすることもできます。それらをGPLアプリのプラグインにするだけです。これは実行可能ですか?私の主張は、プラグインは単に機能を追加するものであり、私のベースアプリケーションをプラグインの派生物にするものではないということです。
あなたはあなた自身の部分のためにGPLを使う必要はありません、ただ多くの GPL互換のFOSSライセンス のうちの1つです。
「プラグイン」の使用は必ずしも安全な方法ではありません。メインアプリケーションがプラグインなしでは機能しない場合、誰かがアプリケーション全体が派生物であると簡単に主張する可能性があります。 (IANAL)
「他のプロジェクト」がGPLの代わりに使用できる他のライセンスのリストを提供していないかどうかを確認してください。 「FLOSS例外」リストと呼ばれることもあります。
たとえば、MySQLクライアントライセンスには、GPL互換ではない24の他のライセンスがリストにあります。