「その他 - ソフトウェアライセンス」の版間の差分

📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

(同じ利用者による、間の40版が非表示)
1行目: 1行目:
== 概要 ==
== 概要 ==
 
ソフトウェアライセンスとは、ソフトウェアの使用、配布、修正に関する法的な取り決めである。<br>
開発者や企業が自身のソフトウェアをどのように他者に使用させるかを定義・制御するために使用する。<br>
<br>
ライセンスの主な目的を示す。<br>
* 著作権保護
*: ソフトウェアの不正使用や複製から開発者を守る。
* 使用条件の明確化
*: ユーザがソフトウェアをどのように使用できるかを定める。
* 責任の制限
*: ソフトウェアの使用に伴う問題に対する開発者の法的責任を制限する。
<br>
主なライセンスの種類を以下に示す。<br>
* プロプライエタリ (独占的) ライセンス
*: 商用ソフトウェアでよく使用される。
*: ソースコードは非公開である。
*: 使用、複製、改変に厳しい制限がある。
*: <br>
*: 例: Microsoft Office、Adobe Photoshop
*: <br>
* オープンソースライセンス
*: ソースコードが公開されている。
*: 使用、複製、改変、再配布が許可されている。
*: <br>
*: 主な種類
** GPL (GNU General Public License)
**: 派生物も同じライセンスで公開必須
** MIT License
**: 比較的制限が少なく、商用利用も可能である。
** Apache License
**: 特許権の取り扱いに言及している。
*: <br>
*: 例: Linux、WordPress、Python
*: <br>
* フリーウェアライセンス
*: 無料で使用可能である。
*: ソースコードが非公開の場合もある。
*: 商用利用や再配布が制限される場合がある。
*: <br>
*: 例: Skype (以前のバージョン)、AVG無料アンチウイルス
*: <br>
* シェアウェアライセンス
*: 試用期間後に購入が必要である。
*: 機能制限がある場合もある。
*: <br>
*: 例: WinZip、WinRAR
<br>
ソフトウェアを使用する時は、常にライセンス条項を確認して、遵守することが重要である。<br>
特に、企業や組織でソフトウェアを使用する場合、ライセンスコンプライアンスは法的リスクを回避するために不可欠である。<br>
<br>
* 法的保護
*: 開発者の権利を守り、不正利用を防ぐ。
* ビジネスモデル
*: ソフトウェアの収益化方法を定義する。
* コミュニティ貢献
*: オープンソースの場合、開発コミュニティの成長を促進する。
* 互換性
*: 他のソフトウェアやライブラリとの統合可能性を決定する。
<br><br>
<br><br>


42行目: 98行目:
<br><br>
<br><br>


== GPL(GNU General Public License) ==
== 著作権表示 ==
==== 著作権表示とは ====
Copyright (c) [年] [著作権者の名前]
# 例
Copyright (c) 2024 Taro Yamada
<br>
著作権表示は、一般的には、以下に示すような場所に記載する。<br>
* ソースコードの先頭
*: 各ソースファイルの先頭にコメントとして記載する。
* READMEファイル
*: プロジェクトのルートディレクトリにあるREADMEファイルに記載する。
* ライセンスファイル
*: LICENSEやCOPYINGというファイル名で、プロジェクトのルートディレクトリに配置して、その中に著作権表示を含める。
* ドキュメンテーション
*: ユーザマニュアルやAPIドキュメント等にも記載することがある。
* Webサイト
*: ソフトウェアがWebアプリケーションの場合、フッタ等の適切な場所に表示することもある。
<br>
==== 例 : libxml2ライブラリ (MITライセンス) ====
例えば、libxml2ライブラリ (MITライセンス) を組み込んだプロジェクトを開発する場合、ライセンス条項を遵守するために以下に示すような対応が推奨される。<br>
<br>
* ライセンス情報の保持
*: libxml2ライブラリのCopyrightファイルの内容を、開発しているプロジェクトのルートディレクトリ等に配置する。
*: ただし、ファイル名は、COPYING.libxml2やLICENSE.libxml2のように、libxml2ライブラリと理解できるものにするとよい。
*: <br>
* READMEへの記載
*: プロジェクトのREADMEファイルに、libxml2ライブラリを使用していること、および、そのライセンス情報の場所 (例: COPYING.libxml2ファイル) を明記する。
<br>
以下に示す対応は、透明性とアクセシビリティを理解またはアクセスしやすくするためのものである。<br>
これらは法的要件というよりは、グッドプラクティスと考えられる。<br>
* ソースコード内での言及
*: libxml2ライブラリを使用しているソースファイルの冒頭にコメントにおいて、libxml2ライブラリを使用していることとそのライセンス情報の場所を記載する。
*: <br>
* ドキュメンテーション
*: 製品のドキュメンテーションに使用しているサードパーティ製ライブラリとそのライセンス情報を記載するセクションを設ける。
*: <br>
* バイナリ配布の場合
*: 製品をバイナリ形式で配布する場合、libxml2ライブラリのライセンス情報を含むドキュメント (例: THIRD_PARTY_LICENSES.txtファイル) を同梱する。
<br>
これらの方法を組み合わせることにより、ライセンスの要件を満たし、ユーザが容易にライセンス情報を確認できるようになる。<br>
<br><br>
 
== GPLv2 (GNU General Public License version 2) ==
世界中で広く使われているオープンソースおよびフリーソフトウェア用のライセンスである。<br>
世界中で広く使われているオープンソースおよびフリーソフトウェア用のライセンスである。<br>
<br>
<br>
GPLライセンスのソフトウェアは、誰でも自由に複製して編集することができ、<br>
GPLライセンスのソフトウェアは、誰でも自由に複製して編集することができ、<br>
また、その編集したソフトウェアは自由に配布・販売することも許可されている。<br>
また、その編集したソフトウェアは自由に配布・販売することも許可されている。<br>
<br>
GPLでは、"GPLのライセンス文言をOSSの頒布を受けた人が読めること"、"ソースコードの開示をすること (入手方法も明記)" の2つが条件となる。<br>
<br>
<br>
GPLライセンスの特徴は、以下の4つである。<br>
GPLライセンスの特徴は、以下の4つである。<br>
66行目: 167行目:
* GPLのOS上(例えばLinux上)で動作するソフトウェア。
* GPLのOS上(例えばLinux上)で動作するソフトウェア。
* GPLのシステムライブラリを使用する。
* GPLのシステムライブラリを使用する。
* <code>fork</code>や<code>exec</code>等を使用して外部コマンドとして実行する (異なるプロセス空間で使用する) 場合、別個のプログラムであるため、GPLライセンスは適用されない。
<br>
<br>
以上の特徴から、GPLライセンスは"フリーソフトであり続ける"ことが可能になっている。<br>
以上の特徴から、GPLライセンスは"フリーソフトであり続ける"ことが可能になっている。<br>
<br>
GPLv2の完全なライセンスファイルは、以下に示すURLから入手できる。<br>
* https://www.gnu.org/licenses/gpl-2.0.txt
<br>
==== COPYINGファイル ====
ライセンスファイルとは別にCOPYINGファイルを作成することが推奨される。<br>
COPYINGファイルでは、著作権表示 (Copyright) およびGPLv2について記載する。<br>
* 公開した年
*: 複数年に渡る場合は範囲を記載する。
*: 例 : 2020-2024
* 著作権者名
*: 複数の著作権者がいる場合は、それぞれを記載する。
<br>
<u>※注意</u><br>
<u>GPLv2の場合は、URLではなくFSFの住所を記載する。</u><br>
<br>
# COPYINGファイル
Copyright (C) <公開した年> <著作権者名> <メールアドレス>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# GPLv2の完全なライセンステキストを以下に記載する
# ...略
<br><br>
<br><br>


== LGPL(GNU Lesser General Public License) ==
== GPLv3 (GNU General Public License version 3) ==
GPLv3では、頒布時に守るべきこととして、<u>ユーザ製品に含まれるソフトウェアのインストール用情報の提供</u>が求められる。<br>
<br>
ユーザ製品とは、個人向けや住宅設置向け (B2C) の利用形態が意図されている製品を指す。<br>
業務用途のみ意図されている工作機械等の製品 (B2B) は該当せず、家電製品や自家用車の車載機等 (B2C) は該当する。<br>
<br>
インストール用情報とは、ユーザが改変したソースコードを対象機器にインストールして実行する手段の情報を意味する。<br>
<br>
ただし、例外条項として、GCCのライセンスに基づきGCCでコンパイルされたソフトウェアは、GCCのランタイムライブラリをリンクしてもGPLv3を適用しなくてもよい。<br>
<br>
GPLv3の完全なライセンスファイルは、以下に示すURLから入手できる。<br>
* https://www.gnu.org/licenses/gpl-3.0.txt
<br>
==== COPYINGファイル ====
ライセンスファイルとは別にCOPYINGファイルを作成することが推奨される。<br>
COPYINGファイルでは、著作権表示 (Copyright) およびGPLv3について記載する。<br>
* 公開した年
*: 複数年に渡る場合は範囲を記載する。
*: 例 : 2020-2024
* 著作権者名
*: 複数の著作権者がいる場合は、それぞれを記載する。
<br>
# COPYINGファイル
Copyright (C) <公開した年> <著作権者名> <メールアドレス>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.
# GPLv3の完全なライセンステキストを以下に記載する
# ...略
<br><br>
 
== AGPL ==
AGPL (Affero General Public License) は、GPLライセンスの条件の他、ネットワーク経由でアクセスしたユーザに対してもソースコードを公開する必要がある。<br>
<br>
* ネットワーク使用条項
*: AGPLの最も重要な特徴は、ネットワーク経由でソフトウェアを使用するユーザに対してもソースコードを提供する必要がある。
* GPLの継承
*: AGPLはGPLの拡張版であり、GPLの全ての条件も含む。
*: つまり、派生物の配布時にはソースコードの公開が必要となる。
<br>
また、GPLと同様、<code>fork</code>や<code>exec</code>等を使用して外部コマンドとして実行する (異なるプロセス空間で使用する) 場合、別個のプログラムであるため、AGPLライセンスは適用されない。<br>
<br><br>
 
== LGPL (GNU Lesser General Public License) ==
LGPLは、GPLライセンスの制約を緩めたものである。<br>
LGPLは、GPLライセンスの制約を緩めたものである。<br>
<br>
<br>
81行目: 274行目:
ただし、静的ライブラリをリンクして使用する場合、開発するソフトウェアは全てLGPLライセンスとなる。<br>
ただし、静的ライブラリをリンクして使用する場合、開発するソフトウェアは全てLGPLライセンスとなる。<br>
<br>
<br>
LGPLライブラリを使用した実行ファイルおよびライブラリを開発する場合は、以下に示すようなライセンスファイルを作成する。<br>
例えば、以下に示すような成果物があるとする。<br>
* LGPLのライブラリ
* LGPLのライブラリを使用した実行ファイルおよびライブラリ
*: 開発者が開発したファイル
* 結合された成果物
*: 開発者が開発したファイルとLGPLのライブラリを併せて配布する場合
<br>
この時、<u>LGPLライブラリを動的リンク</u>した実行ファイルおよびライブラリを開発する場合は、以下に示すような事柄を守る必要がある。<br>
* 遵守すること。
** 配布物に含まれるLGPLのライブラリの改変を許す。
** 開発者が開発したものも含めて、リバースエンジニアリングを許す。
** LGPLのライブラリを使用していること、および、LGPLのライブラリがLGPL v2.1またはLGPL v3で保護されていることを配布物のファイル群のどこかで告知する。
** 配布物にLGPLライセンス (v2.1、LGPL v3等) の文書を添付する。
** 実行ファイルの実行中にコピーライトの告知を表示する場合は、LGPLのライブラリの著作権の告知、および、LGPLの文書の所在(配布物のどこにあるかということ)を表示する。
*: <br>
* 許可されていること。
** 有償で配布してもよい。 (GPLでも許可されている。(GPL v3 4章))
** インストーラにLGPLのライブラリを含めて二次配布 (再配布) することは可能である。 (商用利用も可能)
** LGPLのライブラリを除く箇所(開発者が開発した箇所)について、再配布を禁止してもよい。
** ソースコードを非公開にしてもよい。
** 改造を禁止してもよい。
<br>
LGPLのライブラリをリンク(動的リンクや静的リンクを問わず)した実行ファイルおよびライブラリを開発する場合は、以下に示すようなライセンスファイルを作成する。<br>
* License.txtファイル
* License.txtファイル
*: プロジェクトのトップディレクトリ等にLicense.txtを作成して、自身のソフトウェアのライセンスを記載する。
*: プロジェクトのトップディレクトリ等にLicense.txtファイル等を作成して、自身のソフトウェアのライセンスを記載する。
* ThirdPartyLicenseディレクトリ
* ThirdPartyLicenseディレクトリ
*: 各ライブラリごとにテキストファイルを作成して、使用しているライブラリのライセンスを列挙する。
*: 各ライブラリごとにテキストファイルを作成して、使用しているライブラリのライセンスを列挙する。
<br>
<br>
使用しているライブラリのライセンスは、ThirdPartyLicenseディレクトリにあるXXX.txtファイルを閲覧するような旨を、README.txtファイル等に記載する。<br>
使用しているライブラリのライセンスは、ThirdPartyLicenseディレクトリにあるXXX.txtファイルを閲覧するような旨を、README.txtファイル等に記載する。<br>
<br>
GPLv3の完全なライセンスファイルは、以下に示すURLから入手できる。<br>
* https://www.gnu.org/licenses/gpl-3.0.txt
<br>
==== COPYINGファイル ====
ライセンスファイルとは別にCOPYINGファイルを作成することが推奨される。<br>
COPYINGファイルでは、著作権表示 (Copyright) およびLGPLv2.1またはLGPLv3について記載する。<br>
* 公開した年
*: 複数年に渡る場合は範囲を記載する。
*: 例 : 2020-2024
* 著作権者名
*: 複数の著作権者がいる場合は、それぞれを記載する。
<br>
# COPYINGファイル (LGPLv2.1の場合)
Copyright (C) <公開した年> <著作権者名> <メールアドレス>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
# LGPLv2.1の完全なライセンステキストを以下に記載する
# ...略
<br>
# COPYINGファイル (LGPLv3の場合)
Copyright (C) <公開した年> <著作権者名> <メールアドレス>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 3 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
# LGPLv3の完全なライセンステキストを以下に記載する
# ...略
<br>
==== LGPL v3 / LGPL v2.1の共通部分 ====
* アプリケーション本体のソースコード公開は不要である。
* LGPLライブラリ部分のソースコード提供は必要となる。
* ユーザが再リンク可能な形でのオブジェクトファイルの提供が必要となる。
<br>
LGPL v3は、よりオープンな利用環境を保証するための追加規定が含まれているが、基本的なソースコード公開の要件は変化していないと言える。<br>
<br>
==== LGPL v3 / LGPL v2.1の違い ====
"デジタル著作権管理 (DRM)"と"特許"に関する条項の追加、および、より明確な定義付けにある。<br>
<br>
例 1 : 組み込み機器での利用
あるメーカーが組み込み機器を開発して、LGPLライブラリを静的リンクして使用する場合
# LGPL v2.1の場合
リバースエンジニアリングの禁止等のハードウェア制限を設けることができる可能性がある。
特許ライセンスの提供についての明確な規定がない。
# LGPL v3の場合
ユーザがライブラリを更新できることを妨げるハードウェア制限を設けることができない。
特許ライセンスの提供が明確に要求される。
<br>
例 2 : モバイルアプリでの利用
開発者がスマートフォンアプリを開発して、LGPLライブラリを静的リンクして使用する場合
# LGPL v2.1の場合
App Store等のDRM制限があっても、特に言及がないため問題ない可能性がある。
再リンクの方法の提供について、具体的な規定が少ない。
# LGPL v3の場合
DRM制限がユーザの権利を制限する場合、追加の対応が必要となる。
インストール情報やスクリプト等、再リンクに必要な情報の提供がより具体的に規定されている。
<br><br>
<br><br>


== BSD(Berkeley Software Distribution License) ==
== BSD (Berkeley Software Distribution License) ==
==== BSDライセンスとは ====
==== BSDライセンスとは ====
BSDライセンスは、GPL / LGPLと比較して緩いライセンスである。<br>
BSDライセンスは、GPL / LGPLと比較して緩いライセンスである。<br>
102行目: 403行目:
<br>
<br>
ただし、BSDライセンスには、以下の2種類のBSDライセンスが存在する。<br>
ただし、BSDライセンスには、以下の2種類のBSDライセンスが存在する。<br>
* BSDライセンス
* 初期BSDライセンス
* 修正済みBSDライセンス
* 2条項BSDライセンス
*: 著作権を表示すること。
*: 無保証であること。
* 修正済みBSDライセンス(3条項BSDライセンス)
*: 著作権を表示すること。
*: 無保証であること。
*: 開発の貢献者(継承元のソースコード開発者)の名前は、事前の許可なしに製品保証や販売促進に使ってはいけない。
*:: 例. 不可なもの  「この製品は、○○氏が開発したものを改良したものです。」等
* 4条項BSDライセンス
*: 開発の貢献者(継承元のソースコード開発者)の名前は、事前の許可なしに製品保証や販売促進に使ってはいけない。
*: 著作権およびライセンスを表示すること。
*: 宣伝条項を入れること。(ソフトウェアの機能に言及するまたは使用するすべての宣伝物には、次の謝辞を表示する必要がある)
*:: 例. 「この製品は、○○によって開発されたソフトウェアが含まれています。」等
<br>
<br>
BSDライセンスは、初期開発者を表示することという条件があるが、これは謝辞のためというよりほとんど広告だった。<br>
BSDライセンスは、初期開発者を表示することという条件があるが、これは謝辞のためというよりほとんど広告だった。<br>
110行目: 423行目:
この違いに過敏になる必要はないが、BSDライセンスには2種類あるということは留意した方がよい。<br>
この違いに過敏になる必要はないが、BSDライセンスには2種類あるということは留意した方がよい。<br>
<br>
<br>
==== 2条項BSDライセンス ====
修正BSDライセンス(2条項BSD)とも呼ばれており、オープンソースのライセンスである。<br>
<br>
主な特徴を以下に示す。<br>
* 再配布の条件 (ソースコード形式)
*: ソースコードの再配布は、ライセンス通知と免責事項を含める必要がある。
* 再配布の条件 (バイナリ形式)
*: バイナリ形式での再配布は、ドキュメントやその他の配布物にライセンス通知と免責事項を含める必要がある。
<br>
2条項BSDライセンスは、MITライセンスやApache 2.0ライセンスと同様、非常に寛容なライセンスであり、プロプライエタリソフトウェアでライブラリを使用することを許可している。<br>
ただし、いかなる場合も、著作権表示とライセンスの全文を含める必要がある。<br>
<br>
==== 3条項BSDライセンス ====
==== 3条項BSDライセンス ====
3条項BSDライセンス (3-clause BSD license) は、2条項BSDライセンスの前身であり、修正BSDライセンスとしても知られている。<br>
オリジナルのBSDライセンス (4条項BSDライセンス) から派生したものであり、4条項BSDライセンスにあった「謝辞要件」が削除されている。<br>
<br>
このライセンスは2条項BSDライセンスとほぼ同じであるが、追加の条項がある。<br>
<br>
3条項BSDライセンスは、名前の通り3つの主要な条項で構成されている。<br>
* 再配布の条件 (ソースコード形式)
*: 著作権表示の保持
*: ライセンス条項のリストの保持
*: 免責事項の保持
* 再配布の条件 (バイナリ形式)
*: 配布物に付属するドキュメンテーションや他の資料に、上記の著作権表示、ライセンス条項のリスト、免責事項を含めること。
* 宣伝における制限 (これが3条項BSDライセンスの特徴的な条項)
*: ソフトウェアから派生した製品の宣伝や販促において、著作権者や貢献者の名前を書面による事前の許可なしに使用してはならない。
*: また、ライセンサーの名前や貢献者の名前を、書面での事前の許可なしに、製品の推奨や販促に使用してはならない。
*: <br>
*: 例えば、「XYZ社のソフトウェアは、著名なABC大学のプロフェッサーDEFが開発したアルゴリズムを使用しています」といった宣伝文句は、
*: 事前に書面での許可を得ていない限り、このライセンス下では許可されない。
*: <br>
*: この条項は、書面による事前の許可があれば、名前の使用が可能であることを示唆している。
*: 許可を得るプロセスは、一般的に、著作権者や貢献者に直接連絡を取ることを含む。
<br>
<u>2条項BSDライセンスとの主な違いは、3つ目の条項 (宣伝における制限) が存在することであり、これは「非承認条項」や「宣伝禁止条項」とも呼ばれている。</u><br>
<br>
* <YEAR>
* <YEAR>
*: 製作年を入力する。
*: 製作年を入力する。
124行目: 474行目:
  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
   
   
  * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
   
   
  * Redistributions in binary form must reproduce the above copyright notice,
  2. Redistributions in binary form must reproduce the above copyright notice,
   this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
   this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
   
   
  * Neither the name of the <ORGANIZATION> nor the names of its contributors may be used to endorse or
  3. Neither the name of the <ORGANIZATION> nor the names of its contributors may be used to endorse or
   promote products derived from this software without specific prior written permission.
   promote products derived from this software without specific prior written permission.
   
   
151行目: 501行目:
  免責<COPYRIGHT HOLDER>は、直接的、間接的、偶発的、特別、懲罰的、派生的損害(代替商品やサービスの調達を含むが、これに限定されない。使用、データ、または利益の喪失; (たとえこのような損害の可能性について知らされていたとしても)、いかなる責任も負いません。
  免責<COPYRIGHT HOLDER>は、直接的、間接的、偶発的、特別、懲罰的、派生的損害(代替商品やサービスの調達を含むが、これに限定されない。使用、データ、または利益の喪失; (たとえこのような損害の可能性について知らされていたとしても)、いかなる責任も負いません。
  また、本ソフトウェアの使用中に生じるいかなる損害についても責任を負わないものとします。
  また、本ソフトウェアの使用中に生じるいかなる損害についても責任を負わないものとします。
<br>
==== 4条項BSDライセンス ====
4条項BSDライセンスは、3条項BSDライセンスの前身であり、オリジナルのBSDライセンスとしても知られている。<br>
このライセンスは3条項BSDライセンスとほぼ同じ構造を持つが、追加の条項が含まれている。<br>
<br>
4条項BSDライセンスの主な特徴を以下に示す。<br>
* 再配布の条件
*: 3条項BSDライセンスと同様、ソースコード形式およびバイナリ形式での再配布に関する条件が含まれる。
*: これには著作権表示の保持、ライセンス条項のリストの保持、免責事項の保持が含まれる。
* 宣伝における制限
*: 3条項BSDライセンスと同様、宣伝における制限が設けられている。
*: これは、ソフトウェアから派生した製品の宣伝や販促において、著作権者や貢献者の名前を書面による事前の許可なしに使用することを禁じるものである。
* 謝辞要件 (4条項BSDライセンスのみ)
*: ソフトウェアの使用に関する全ての宣伝資料において、特定の謝辞を含めることを要求する。
*: 具体的には、<u>「This product includes software developed by the organization」</u>のような文言を含める必要がある。
<br>
謝辞要件は、ソフトウェアの開発元への適切な認識を確保することを目的としている。<br>
しかし、多くのプロジェクトが関与する場合、謝辞リストが長くなりすぎる問題が生じたため、<br>
<br>
これらの理由から、後に3条項BSDライセンスが作成されて、「謝辞要件」が削除された。<br>
3条項BSDライセンスは、この問題を解決しつつ、オリジナルのライセンスの主要な特徴を維持している。<br>
<br>
現在では、4条項BSDライセンスは現在ではあまり使用されていないが、オープンソースライセンスの歴史において重要な役割を果たした。<br>
<br><br>
<br><br>


163行目: 536行目:
<br>
<br>
上記の2つを守れば、自由に使用することが可能である。<br>
上記の2つを守れば、自由に使用することが可能である。<br>
<br>
MIT Licenseのライブラリまたはヘッダファイルを同梱してソフトウェアを配布する場合の注意点を、以下に示す。<br>
* ソフトウェアのソースコードのみを配布する場合
*: MIT License条項がソースコードファイル内にコメントとして記述されているならば、MIT License条項下のソースコードと一緒に表示されることになるため、
*: ライセンス条項を満たすことになる。
*: <br>
* ソフトウェアのバイナリを配布する場合
*: MIT Licese条項が記述されたコメントはコンパイル時に削除されるため、ライセンス条項を満たさないことになる。
*: そのため、テキストファイルまたはソフトウェア上でのダイアログ表示により、MIT License条項をバイナリと合わせて配布する必要がある。
*: <br>
*: 例 :
*: インストールメディアのトップディレクトリにLicensesという名前のディレクトリを作成する。
*: そのディレクトリ下に各ライブラリの名前のディレクトリを作成して、各ライブラリのLICENSE.MITファイルをコピーする。
<br><br>
== Apache Software License 2.0 ==
==== LICENSE / LICENSE.txt ====
まず、以下に示すURLからApache 2.0ライセンスをダウンロードする。<br>
curl -OsS https://www.apache.org/licenses/LICENSE-2.0
# .txt拡張子をダウンロードする場合
curl -OsS https://www.apache.org/licenses/LICENSE-2.0.txt
<br>
次に、ダウンロードしたファイルの下部にある<u>Copyright 〜</u>の箇所を編集する。<br>
括弧[]で囲まれたフィールドを著作者自身の識別情報で置き換える。 (括弧は含めないこと)<br>
Copyright <西暦  例: 2024> <著作者  例: Taro Yamada>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
    http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
<br>
==== NOTICEファイル ====
Apache 2.0ライセンスのライブラリを改変して配布する場合は、その旨を表示する必要がある。<br>
<br>
NOTICEファイルが必要になる条件として、以下に示すような特定の状況に該当する場合である。<br>
基本的には、Apache 2.0ライセンスを適用している他のライブラリを取り込む場合に意識する必要がある。<br>
<br>
* NOTICEが必要な場合
*: 他のApache 2.0ライセンスのソースコードを組み込む場合、または、独自の通知が必要な場合
* 不要な場合
*: 自身がフルスクラッチで作成したソースコードのみで、通知すべき特別な情報が無い場合
<br>
NOTICEファイルは法的義務というよりも、配布物に必要な通知をまとめる役割を果たす。<br>
そのため、必要に応じて作成するのがよい。<br>
<br>
===== 他のApache 2.0ライセンスのソースコードを組み込む場合 =====
Apache 2.0ライセンスのソースコードを自身のプロジェクトに組み込む場合、そのプロジェクトにNOTICEファイルが存在すれば元のプロジェクトで指定されているNOTICEファイルを引き継ぐ必要がある。<br>
具体的には、元のプロジェクトにNOTICEファイルが存在する場合、その内容をそのまま新しいNOTICEファイルに記載する。<br>
<br>
例えば、他のライブラリにおいて、以下に示すようなNOTICEファイルがあったとする。<br>
This product includes software developed by John Smith
https://www.example.com/
<br>
この時、自身のNOTICEファイルにこの記載をそのまま含める。<br>
<br>
===== 自身のプロジェクトで独自の通知事項がある場合 =====
もし自身のプロジェクトにおいて、特定の著作権表示や追加の通知が必要な場合は、NOTICEファイルを作成して記載する。<br>
* 特定の商標やブランドを利用する許可が付属している場合
* プロジェクトが特定の組織に関連していることを通知する必要がある場合
<br>
# 例:
This product includes software created by Taro Yamada.
<br>
===== 配布物に関連する重要な通知を含める必要がある場合 =====
NOTICEファイルは、配布物の一部として通知が必要な情報を提供するために使用する。<br>
* 再配布するソフトウェアが特定の商標やロゴの使用を伴う場合 (例: プロジェクトにロゴ画像が含まれている場合)
* 著作権者や貢献者から指定された通知が必要な場合
<br>
===== NOTICEが不要な場合 =====
* 自身でゼロからフルスクラッチしたソフトウェアであり、第3者のApache 2.0ライセンスコードや他の通知事項が無い場合、NOTICEファイルを作成する必要はない。
* 自身のプロジェクトに通知すべき特別な情報が無い場合
<br>
===== 実際のプロジェクト例 =====
* シンプルなプロジェクト (NOTICE不要)
** 内容
**: 自分で開発したコードのみ
** 必要なファイル
**: LICENSEファイル (Apache 2.0ライセンス全文) とソースコードのヘッダのみ
<br>
* 他プロジェクトのソースコードを利用する場合 (NOTICE必要)
** 内容
**: 他のApache 2.0ライセンスのライブラリを使用 (例: ライブラリA)
** 対応
**: 元のライブラリAにNOTICEファイルが含まれている場合、それを自身のプロジェクトのNOTICEファイルにコピーして含める。
** 追加の通知事項があれば追記する。
<br>
* 独自の特別な通知を行う場合 (NOTICE必要)
** 内容
**: 商標、著作権その他の通知が必要
** 対応
**: NOTICEファイルを作成して、通知内容を記載
<br>
===== NOTICEファイル記載例 =====
# 基本的な例
This product includes software developed by Taro Yamada (https://www.example.com).
<br>
# 他プロジェクトの通知を含む場合
This product includes:
- Software developed by Taro Yamada (https://www.example.com).
- Software developed by Original Author/Organization (https://www.other.org/).
<br>
==== 特許条項 ====
* 配布されているOSSの中に特許が含まれていたら、それは無償で自由に実施してよい。
* 自身の特許がそのOSSに含まれていると主張した場合、そのOSSは使用できない。
<br><br>
<br><br>


== MPL(Mozilla Public License) ==
== MPL (Mozilla Public License) ライセンス ==
MPLライセンスは、FirefoxのMozillaプロジェクトのために用意されたライセンスである。<br>
==== MPL 2.0ライセンス ====
MPL 2.0は、オープンソースソフトウェアのためのライセンスである。<br>
Mozilla Foundationにより作成されて、2012年に公開された。<br>
<br>
MPL 2.0の主な特徴として、コピーレフト条項の緩和が挙げられる。<br>
これにより、MPLでライセンスされたコードをプロプライエタリなソフトウェアと組み合わせて使用することが可能になる。<br>
ただし、MPLでライセンスされた部分については、ソースコードを公開する必要がある。<br>
<br>
また、商用利用を許可しており、特許権の明示的な付与も含んでいる。<br>
これにより、ライセンス利用者は、コントリビュータが所有する特許をそのソフトウェアの使用に関して無償で利用できる。<br>
<br>
<u>LGPLライセンスと同様、動的ライブラリをリンクして使用する場合、MPLライセンスが適用されない。</u><br>
<br>
<br>
* MPLライセンスのソフトウェアのソースコードを変更する場合、その部分はMPLライセンスで公開する。
* コピーレフト条項
* LGPLライセンスと同様に、動的ライブラリをリンクして使用する場合、MPLライセンスが適応されない。
*: MPL 2.0は「ファイルレベルのコピーレフト」を採用している。(ファイル単位でのライセンス適用を許可している)
*: これは、MPLでライセンスされたファイルの変更部分のみをMPLで公開する必要があるが、プロジェクト全体をMPLにする必要がないことを意味する。
*: 例えば、プロジェクトに新規ファイルを追加する場合は、異なるライセンスを選択することができる。
* 特許ライセンス
*: MPL 2.0は特許に関する明示的な条項を含んでおり、
*: コントリビュータからのソフトウェアに関連する特許の使用権をユーザに自動的に付与する。
* 配布条件
*: ソースコードを利用可能にする必要がある。
*: ライセンスのコピーを含める必要がある。(オリジナルのライセンス条項を維持する)
*: 著作権表示を保持する必要がある。
* ソースコードの変更
*: 変更を加えた場合、その旨を明確に示す必要がある。(変更内容を明確に示す必要がある)
*: また、変更を加えた部分はMPLライセンスで公開する。
* 商標の扱い
*: ライセンスは商標権を付与しない。
* 保証の否認と責任の制限
*: ソフトウェアは現状のまま提供され、法律で許される範囲で保証は否認される。
* 互換性
*: MPL 2.0は、Apache License 2.0やGPL 3.0等、他の主要なオープンソースライセンスとの互換性も考慮されている。
*: これにより、異なるライセンスのコードを組み合わせて使用することが可能である。
* 複数ライセンス
*: MPLでライセンスされたコードを他のライセンスの下で再ライセンスすることが可能である。
* 寄稿者の定義
*: コードを変更または追加した人を「寄稿者」として定義しており、その権利と責任を明確にしている。
* 準拠法
*: 特定の準拠法は指定されていないが、ライセンスの解釈に関する紛争解決のメカニズムが含まれている。
<br>
<br>
MPLライセンスは、LGPLライセンスとBSDライセンスの中間のような条件となっている。<br>
MPLライセンスは、LGPLライセンスとBSDライセンスの中間のような条件となっている。<br>
211行目: 734行目:
契約、不法行為、その他に関わらず、著作権者あるいはソフトウェアを頒布するいかなるものもソフトウェアの使用やその他の扱いから発生または発展、関連する、一切の損害や他の法的責任に対する法的義務を負わないものとする。<br>
契約、不法行為、その他に関わらず、著作権者あるいはソフトウェアを頒布するいかなるものもソフトウェアの使用やその他の扱いから発生または発展、関連する、一切の損害や他の法的責任に対する法的義務を負わないものとする。<br>
<br><br>
<br><br>
== ISCライセンス ==
ISC (Internet Systems Consortium) ライセンスは、非常に簡潔で読みやすく、比較的自由度が高いオープンソースライセンスの1つである。<br>
「ベルヌ条約によって不要となる言い回し」を取り除いた2条項BSDライセンスと機能上同等である。
<br>
ISCライセンスの下でライブラリを使用する場合、以下の条件が必要となる。<br>
<br>
* 著作権表示の保持
*: ISCライセンスでは、著作権表示を残すことが義務付けられている。
*: ライセンスファイル、コード内の著作権表示、ドキュメンテーション等、ライブラリを含むソフトウェアの全ての部分で、著作権表示を保持する必要がある。
*: <br>
* 免責事項の表示
*: ISCライセンスには免責事項が含まれており、ライブラリの使用に関するあらゆる責任を負わないことが明記されている。
*: 使用者は、この免責事項を理解して、ライブラリを自己責任で使用する必要がある。
*: <br>
* ライセンスの再配布
*: ISCライセンスでは、ライセンス条項を再配布することが必要となる。
*: ライブラリを再配布する場合は、著作権表示とライセンス条項 (免責事項を含む) を含める必要がある。
<br>
ソースコードを改変した場合は、特にその変更を明示しなくともよい。<br>
これは、BSDライセンスやMITライセンスなど他のパーミッシブライセンスと同様である。<br>
<br>
ISCライセンスは、商業利用を含むほぼ全ての用途でソフトウェアの使用、修正、配布を許可している。<br>
派生物を作成する場合は、異なるライセンス (プロプライエタリなものを含む) で配布することが可能である。<br>
<br>
また、特許に関する明示的な条項はない。<br>
<br><br>
== OpenSSLライセンス ==
OpenSSLライセンスは、OpenSSLプロジェクトが開発したソフトウェアに適用される特殊なライセンスである。<br>
このライセンスは、オリジナルのSSLeayライセンスとApache License 1.0を組み合わせて作成された。<br>
<br>
OpenSSLライセンスの主な特徴は、ソフトウェアの自由な使用、修正、再配布を許可しつつ、一定の条件を課していることである。<br>
<br>
OpenSSLライセンスの下でライブラリを使用する場合、以下の条件が必要となる。<br>
* 著作権表示の保持
*: OpenSSLライセンスでは、著作権表示を保持することが義務付けられている。
*: 再配布する場合には、オリジナルの著作権表示を含める必要がある。これは、ソースコード、バイナリ形式、ドキュメンテーションなど、配布されるすべての形式に適用される。
*: <br>
* 免責事項の表示
*: OpenSSLライセンスには明確な免責事項が含まれており、ソフトウェアの使用に関する一切の保証を否定している。
*: 使用者は、この免責事項を理解し、OpenSSLを自己責任で使用する必要がある。
*: <br>
* 広告条項の遵守
*: OpenSSLライセンスには「広告条項」が含まれており、OpenSSLを使用して作成された製品のプロモーション資料に、OpenSSLプロジェクトへの謝辞を記載することを要求している。
*: ただし、この条項は書面による許可があれば省略することができる。
*: <br>
* ライセンスの再配布
*: OpenSSLライセンスでは、ライセンス条項を再配布することが必要となる。
*: OpenSSLを再配布する場合は、オリジナルのライセンス条項 (著作権表示、免責事項、広告条項を含む) を含める必要がある。
*: <br>
* 派生物の取り扱い
*: OpenSSLライセンスは、派生物に対する制限が比較的緩やかである。
*: OpenSSLを改変したソフトウェアを、別のライセンスで配布することも可能であるが、オリジナルのOpenSSLライセンスの条項も遵守する必要がある。
<br>
OpenSSLライセンスは、商用利用も許可しており、企業がOpenSSLを自社製品に組み込んで販売することが可能である。(ただし、ライセンス条項を遵守する必要がある)<br>
<br>
ただし、OpenSSLライセンスは複雑で理解しづらい面もあり、法的な解釈が難しい場合がある。<br>
そのため、OpenSSLを使用する場合は、ライセンスの詳細を慎重に確認して、必要に応じて法律の専門家に相談することが推奨される。<br>
<br>
このライセンスは、暗号化やセキュリティ関連のソフトウェア開発において広く使用されているが、その複雑さゆえに、近年ではより単純なライセンスへの移行を検討する動きもある。<br>
<br><br>
== Unlicense ==
Unlicenseは、ソフトウェアライセンスの中でも特に自由度の高いものとして知られている。<br>
このライセンスの主な目的は、ソフトウェアを可能な限り制約のない形で公共領域に置くことである。<br>
<br>
Unlicenseの最も特徴的な点は、著作権の完全な放棄である。<br>
このライセンスを適用したソフトウェアの著作者は、自身の作品に関する全ての著作権および関連する権利を放棄し、公共領域に譲渡する。<br>
これにより、ソフトウェアの使用者は、著作権法による制約を受けることなく、そのソフトウェアを自由に扱うことができる。<br>
<br>
* 著作権放棄
*: Unlicenseは、著作権を完全に放棄することを目的としている。
*: 著作者は、ソフトウェアに関するすべての著作権および関連する権利を公共領域に譲渡する。
*: <br>
* 制約の不在
*: Unlicenseでは、ソフトウェアの使用、複製、変更、配布、サブライセンス、販売に関する制約を一切設けていない。
*: 使用者は、ソフトウェアを自由に扱うことができ、著作権表示や許可の明示を必要としない。
*: <br>
* 免責事項の表示
*: Unlicenseには明確な免責事項が含まれており、ソフトウェアの使用に関するあらゆる保証を否定している。
*: 使用者は、この免責事項を理解し、ソフトウェアを完全に自己責任で使用する必要がある。
*: <br>
* ライセンスの再配布
*: Unlicenseでは、ライセンス条項の再配布は必須ではない。
*: ただし、法的な明確性を確保するために、Unlicenseのテキストを含めることが推奨される。
*: <br>
* 著作者名の扱い
*: Unlicenseでは、著作者名の表示や保持を要求していない。
*: 使用者は、著作者名を削除したり、自身の名前に置き換えたりすることが可能である。
<br>
しかし、このような極端な自由度は、法的な観点から見ると課題を抱えている可能性がある。<br>
これは、著作権を完全に放棄することが法的に可能かどうかは、国や地域によって異なるからである。<br>
<br><br>
{{#seo:
|title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki
|keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板
|description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux
|image=/resources/assets/MochiuLogo_Single_Blue.png
}}


__FORCETOC__
__FORCETOC__
[[カテゴリ:C]][[カテゴリ:C++]][[カテゴリ:MFC]][[カテゴリ:Qt]][[カテゴリ:C_Sharp]][[カテゴリ:Python]][[カテゴリ:シェルスクリプト]][[カテゴリ:Electron]][[カテゴリ:Web]]
[[カテゴリ:C]][[カテゴリ:C++]][[カテゴリ:MFC]][[カテゴリ:Qt]][[カテゴリ:C_Sharp]][[カテゴリ:Python]][[カテゴリ:シェルスクリプト]][[カテゴリ:Electron]][[カテゴリ:Web]]