まとめGitHubには多くのオープンソースプロジェクトが含まれています。ただ学習して使用するだけであれば、大きな影響はありません。しかし、商用利用する場合は、落とし穴を避けるために、様々なオープンソースライセンスの違いを理解する必要があります。この記事では、GPL、LGPL、BSD、MIT、Apacheの5つのオープンソースライセンスと、その中から適切なライセンスを選ぶ方法を紹介します。 BSDオープンソースライセンスBSDオープンソースライセンスは、ユーザーに大きな自由を与えます。基本的に、ユーザーはソースコードを自由に使用および改変し、改変したコードをオープンソースソフトウェアまたはプロプライエタリソフトウェアとして再配布することができます。 ただし、この自由を享受するためには、BSD ライセンスを使用したコードを公開したり、BSD ライセンスのコードに基づいて二次開発を行ったりする際に、次の 3 つの条件を満たす必要があります。
BSDライセンスは、コード作者の著作権を尊重しながら、コード共有を奨励しています。BSDライセンスは、ユーザーによるコードの改変と再配布を許可しているだけでなく、BSDコードに基づく商用ソフトウェアの開発、頒布、販売も許可しているため、ビジネスフレンドリーです。そのため、多くの企業はオープンソース製品を選択する際にBSDライセンスを好みます。これは、サードパーティのコードに対する完全なコントロール権を持ち、必要に応じて改変やさらなる開発を行うことができるためです。 Apacheライセンス2.0Apacheライセンスは、著名な非営利オープンソース組織Apacheが採用しているライセンスです。BSDライセンスと同様に、コード共有とオリジナル作者の著作権の尊重を奨励し、コードの改変やオープンソースソフトウェアまたは商用ソフトウェアとしての再配布も許可しています。遵守すべき条件もBSDライセンスと同様です。
Apacheライセンスはビジネスにも非常に適しており、ユーザーは必要に応じてコードを変更し、オープンソースまたは商用製品としてリリースまたは販売することができます。 GPL私たちは皆、GPLライセンスを採用しているLinuxをよく知っています。GPLは、コードの再利用を推奨するBSDライセンスやApacheライセンスとは大きく異なります。GPLの基本原則は、コードのオープンソース化と自由な利用、そして参照、改変、派生コードのオープンソース化と自由な利用です。しかし、改変・派生コードをクローズドソースの商用ソフトウェアとしてリリース・販売することは認められていません。だからこそ、私たちは商用企業のLinuxシステムや、個人、組織、商用ソフトウェア企業が開発した数多くのフリーソフトウェアプログラムなど、様々なフリーLinuxシステムを利用できるのです。 GPLライセンスの要点は、ソフトウェア製品がGPLライセンス製品を使用する場合(「使用」にはライブラリ参照、改変コード、派生コードが含まれます)、そのソフトウェア製品もGPLライセンスの下でライセンスされなければならない、つまりオープンソースかつフリーでなければならないということです。これは「感染性」と呼ばれるものです。GPLライセンスを使用する製品は、スタンドアロン製品として問題なく使用でき、フリーであることのメリットを享受できます。 GPL では、GPL ライブラリを使用するソフトウェア製品は GPL ライセンスの下でライセンスされる必要があることが厳密に規定されているため、オープンソース コード、商用ソフトウェア、または機密性を必要とするコードを GPL ライセンスの下で使用して二次開発を行う部門には適していません。 LGPLLGPLは、主にクラスライブラリに使用されるオープンソースライセンスです。GPLでは、GPLライブラリを使用、改変、または派生するソフトウェアにもGPLライセンスの適用が義務付けられていますが、LGPLでは、商用ソフトウェアのコードをオープンソース化することなく、ライブラリリンクを通じてLGPLライブラリを商用ソフトウェアが利用することを許可しています。 ただし、LGPLライセンスのコードが改変または派生された場合、改変されたコード、改変部分に影響を与える追加コード、および派生コードはすべてLGPLライセンスの対象となります。したがって、LGPLライセンスのオープンソースコードは、商用ソフトウェアのサードパーティライブラリとして配布・販売するのに適しています。 ただし、LGPL ライセンスは、LGPL ライセンスに基づいてコードを変更および派生することでさらなる開発を目指す商用ソフトウェアには適用されません。 GPL と LGPL はどちらもオリジナルの作成者の知的財産権を保護し、他者がオープンソース コードをコピーして同様の製品を開発することを防ぎます。 マサチューセッツ工科大学MITライセンスはBSDライセンスと同様に、非常に寛容です。作者は著作権のみを保持したいと考えており、その他の制限はありません。つまり、バイナリ形式でリリースする場合でもソースコード形式でリリースする場合でも、配布物には元のライセンスからの声明を含める必要があります。 MPLMPLはMozilla Public Licenseの略で、1998年初頭にNetscape社のMozillaチームがオープンソースソフトウェアプロジェクト向けに設計したソフトウェアライセンスです。MPLライセンスが登場した最も重要な理由は、Netscape社がGPLライセンスでは開発者のソースコードに対するニーズと、それを使用することで得られるメリットのバランスが適切に取れていないと考えたことでした。よく知られているGPLやBSDライセンスと比較すると、MPLは権利と義務の面で多くの点で類似しています(いずれもOSIA認定のオープンソースソフトウェアライセンスに準拠しているため)。しかし、MPLにはそれらとはいくつかの重要な違いもあります。
|