オープンソースライセンスのクイックガイド
公開: 2020-05-07共有したいソフトウェアを作成するとき、または適応させたい製品を使用するとき、合法であるかどうかについての質問がポップアップします。 オープンソースライセンスを持っているプログラムでさえ、すべての人に無料ではありません。 ライセンスで許可されている内容の詳細がわからない場合は、合法的なお湯に入る可能性があります。 自分の限界を知ること、または限界がある場合は、ソフトウェアを自信を持って使用および共有する自由が得られます。
オープンソースライセンスとは何ですか?
オープンソースライセンスは、オープンソースの定義に従います。 つまり、ソフトウェアまたは製品(その青写真、設計、および/またはソースコード)は、ユーザーが望む方法で使用、変更、および/または共有することができます。 素人の言葉で言えば、ユーザーは自分のニーズに合わせて製品をカスタマイズし、その製品を他の人と共有することができます。
ただし、共有方法の条件はさまざまです。オープンソースライセンスは無制限ではありません。 規定には、著者名の保持と同じライセンスでの派生物の再配布が含まれます。 また、ライセンスが非営利目的でのみ製品の変更または再配布を許可している場合、それはオープンソースではありません。
オープンソースライセンスは、ソフトウェアの作成者とユーザーの間の法的拘束力のある契約です。 公開されて無料で利用できるソフトウェアは、自動的にオープンソースになるわけではありません。 ライセンスにより、正式にオープンソースになります。 多くのオープンソースソフトウェアは無料ですが、それは無料であることはオープンソースソフトウェアの要件または保証であるという意味ではありません。
オープンソースライセンスの2つの主なタイプ:コピーレフトとパーミッシブ
コピーレフトと許容は、オープンソースライセンスの2つの主要なカテゴリです。 これらは実際のオープンソースライセンスの名前ではありませんが、特定のライセンスが分類されるカテゴリです。
コピーレフトオープンソースライセンス
コピーレフトはオープンソースライセンスの一種であり、ユーザーは製品のバージョンに同じライセンスを適用する必要があります。 つまり、ユーザーがソフトウェアを変更して共有する場合、オープンソースライセンスを維持する必要があります。
パーミッシブオープンソースライセンス
パーミッシブオープンソースライセンスは、それらが来るのと同じくらい柔軟です。 これらはコピーレフトライセンスではないため、ユーザーは製品のバージョンをオープンソースに保つ必要はありません。 通常、制限はほとんどありません。 ユーザーは、多くの義務を果たすことなく、独自の派生物を作成できます。
最も一般的なタイプのオープンソースライセンス
著者や企業が選択できるオープンソースライセンスにはさまざまな種類があります。 最も人気のあるものを見てみましょう。
Apacheライセンス
Apache Licenseは、Apache SoftwareFoundationによるオープンソースライセンスです。 ライセンスの下で、Apacheライセンス製品を使用、変更、または配布できます。
Apacheライセンスには2つの主な変更が加えられています。 2000年に、元の広告条項は削除されました。 現在、派生物用に作成された広告資料がある場合、Apacheライセンスへの帰属を含める必要はありませんが、帰属はドキュメントに残しておく必要があります。 2004年には、ライセンスの別の更新により特許権が許可されました。
Berkeley Software Distribution(BSD)
BSDライセンスには2つのタイプがあります。
- 変更されたBSDライセンス(3節)
- FreeBSDライセンスとも呼ばれる簡略化されたBSDライセンス(2節)
各BSDライセンスは、ソフトウェアコード、ソース、またはバイナリを変更および配布する許可を与えます。 ただし、条件、著作権表示、および免責事項のコピーを保持する必要があります。
元のBSDライセンスには、広告条項と非承認条項を含む4つの条項がありました。 変更された3条項ライセンスには、広告条項は含まれていません。 簡易/無料の2条項ライセンスには、非承認条項はありません。
Common Development and Distribution License(CDDL)
CDDLは、Sun Microsystems(Oracleが取得)によって作成されたオープンソースライセンスです。 現在のCDDLはバージョン2であり、Mozilla PublicLicenseのスピンです。 また、2004年まで無料でオープンソースのSun製品に付属していたSun PublicLicenseに取って代わりました。
CDDLの下で、ライセンスされたソフトウェアのオリジナルまたは派生物を複製および配布できます。 ただし、著作権、特許、または商標に関する通知を変更または削除することはできません。 さらに、ユーザーは、寄稿者または開発者に帰属する通知またはテキストを保持する必要があります。
ソフトウェアを実行可能形式、つまりソースコードではない形式で配布する場合は、ソースコードを利用できるようにする必要があります。 実行可能フォームは、CDDLまたはCDDL互換ライセンスの下でリリースできます。 次のガイドラインのいずれかまたは両方を満たしている場合は、投稿のソースコードをリリースする必要があります。
- これらは、元のソフトウェアへの追加、変更、または元のソフトウェアからの削除です。
- これらは、元の製品の一部を含む新しいファイルです。
ソースコードをリリースするときは、CDDLのコピーを含める必要があります。 さらに、変更を加えるたびに、変更したファイルに自分が変更者であるという通知を含める必要があります。 元のコードが含まれていない個別の独立したファイルに追加した場合は、CDDLを使用してリリースする必要はありません。
Eclipse Public License(EPL)
Eclipse Public Licenseは、EclipseFoundationからのコピーレフトのオープンソースライセンスです。 EPLの目的は、企業がそのコンポーネントを商用製品で使用する場合に、作成者が法的な問題に巻き込まれるのを防ぐことです。 ライセンスはまた、特許付与を提供します。
EPLコンポーネントを変更してソースコードとして配布する場合は、変更したコードを開示する必要があります。 製品をオブジェクトコード形式で配布する場合は、要求に応じてソースコードを提供することを明確にする必要があります。 また、ソースコードをリクエストする方法を明確にする必要があります。 EPLライセンス製品の一部を含むプログラムを再配布する場合は、著作権とライセンスのテキスト全体を含める必要があります。

EPLはまた、プラグインとのインターフェースまたは相互運用によって、プラグインが自動的に派生物になるわけではないと述べています。 簡単に言うと、プラグインの一部を実際に変更しない限り、それは派生物ではありません。
GNU General Public License(GPL)
GPLは最も人気のあるオープンソースライセンスです(WordPressプラグインとテーマにはこのライセンスが必要です)。 これはコピーレフトライセンスであるため、コードのごく一部が変更されたコードに含まれている場合でも、GPLコンポーネントを使用するソフトウェアはすべてオープンソースである必要があります。
ソフトウェアは、プライベートな方法で使用する場合でも、商用の方法で使用する場合でも、ほとんど制限なくどこでも使用および変更できます。 ただし、組織外に配布する場合は制限があります。 この場合、完全なソースコードと、元のソフトウェアと同じライセンス条項を配布する必要があります。
新製品にGPLソフトウェアの一部しか含まれていない場合、完全なソースコードを配布する必要がありますか? 多分。 GPLによると、すべての派生物は完全なライセンス条項に基づいてライセンス供与される必要があります。 ただし、GPLソフトウェアをプロプライエタリシステムと一緒に配布し、それらが2つの別個の作業である場合、つまり、データ構造を共有せず、別個のプロセスで実行される場合、すべてのソフトウェアのソースコードをリリースする必要がない場合があります。 。
GNU劣等一般公衆利用許諾契約書(LGPL)
LGPL(GPLのより弱いバージョン)の下で、ライセンスされた製品はプロプライエタリアプリケーションにリンクすることができます。 プログラムが動的にリンクされているか静的にリンクされているかに応じて、プロプライエタリコードは引き続きプロプライエタリのままである可能性があります。 このライセンスは多くの場合、フリーソフトウェアに付属しており、フリーソフトウェアまたはプロプライエタリソフトウェアのいずれかに組み込むことができます。 独自の拡張機能のソースコードを開く必要はありません。
マイクロソフトパブリックライセンス(Ms-PL)
Ms-PLは、マイクロソフトが提供する無料のオープンソースソフトウェアライセンスであり、マイクロソフト独自のオープンソースプロジェクトに付属しています。
ユーザーはソフトウェアのオリジナルまたは派生物を作成および配布できますが、寄稿者の名前、ロゴ、または商標を使用することはできません。 Ms-PLは、元の帰属、著作権、特許、および商標の通知を保持する必要があります。 また、コードが二次的著作物で機能しない場合、作成者は責任を負いません。コードのパフォーマンスに関する保証はありません。
Ms-PLで製品を配布する場合、必要に応じて配布することはできますが、ソースコードを配布する義務はありません。 ソースコード、またはソースコードの一部を配布することを選択した場合は、Ms-PLライセンスの完全なコピーを含める必要があります。
ここで注意が必要です。ソフトウェアの一部をコンパイル済みまたはオブジェクトコード形式で配布する場合、選択するライセンスはMs-PLに準拠している必要があります。
ソースコードとオブジェクトコード
プログラマーがソースコードを書きます。 これは、人間が読める言語で書かれたテキストベースのドキュメント(またはファイル)であり、ファイルはプログラミング言語です。 ただし、マシンは、記述されているとおりにソースコードを実際に読み取ることはできません。
機械可読にするために、機械はソースコード言語を機械実行可能コード、つまりオブジェクトコードにコンパイルする必要があります。 オブジェクトコードは2進数で記述され、バイナリコードを生成するプロセスは「コンパイル」です。 ソースコードはシステム固有ではありませんが、オブジェクトコードはシステム固有です。 ソースコードは異なるシステム間で同じである可能性がありますが、各マシンはそれを異なるオブジェクトコードにコンパイルする可能性があります。
Ms-PLを使用したオブジェクトコードのライセンスに関しては、次のことを知っておく必要があります。独自の条件を設定することはできますが、受信者にMs-PLライセンスよりも多くの権限を与えることはできません。 ただし、付与できる権利は少なくなります。
マサチューセッツ工科大学(MIT)ライセンス
MITライセンスは、世の中で最も柔軟なオープンソースライセンスの1つであり、オープンソースライセンスに期待されるすべてのエンドユーザー権限(コピー、配布、マージ、変更など)を付与します。特に広告条項は含まれていません。 また、プロモーションコンテンツに著作権所有者の名前を含めることができます。
このライセンスに基づく製品を使用すれば、心から望むことはほとんど何でもできます。 ただし、著作権の年と所有者の情報は、派生物のライセンスに含まれている必要があります。
Mozilla Public License 2.0
Mozilla Public License 2.0は、コピーレフトライセンスです。 コントリビューターは、コードに加えられた変更を共有できます。 また、コードを他のオープンライセンスまたはプロプライエタリライセンスのコードと組み合わせることができます。
MPLソフトウェアを何らかの目的で使用し、組織内で配布する場合は、特別なことをする必要はありません。 MPLソースコードを変更し、派生物を組織外に配布する場合は、次のことを行う必要があります。
- MPLに従って、ソースコード(変更用のソースコードを含む)が利用可能であることを受信者に伝えます。
- 受信者にMPL助成金を提供します。これは、受信者が使用、変更、表示、複製、配布などを行うための非独占的でロイヤリティフリーのライセンスを持っていることを意味します。
- ソースコード内の通知の削除または変更に関する制限を尊重します。 著作権、特許、保証、または責任に関するライセンス通知を削除または変更することはできません。
オープンソースライセンスについての最終的な考え
製品またはソフトウェアのオープンソースライセンスの選択は、思ったほど簡単ではありません。 誰があなたの製品で何をするかを気にしないのであれば、MITライセンスのような非常に柔軟なライセンスの1つを使うことができます。 それ以外の場合は、経験豊富な開発者であろうと弁護士であろうと、専門家と話し合って、自分が持っているもの、欲しいもの、どのライセンスが最も一致するかについて話し合うことをお勧めします。 ただし、基本事項、特に対象となる用語と一般的なライセンスを事前に知っておくと、正しいスタートを切るのに役立ちます。
Webプロフェッショナル向けの13の最高のオープンソースソフトウェアアプリのまとめをご覧ください。
