4. Talerライセンス情報#

このファイルは、すべてのTalerコンポーネントのライセンスと実行時の依存関係の概要を提供します。この文脈での「コンポーネント」は、単一のGitリポジトリから取得できるソースファイルのセットとして読み取られます。 コンポーネントが異なるライセンス体制のソースで構成されている場合、つまりサードパーティの開発がTalerと簡単に統合できるようにしたい場合、それらについても説明します。

すべてのコンポーネントは通常、劣等GPL、GPLまたはアフェロGPLの下でリリースされる。主な戦略は、サードパーティがTalerと統合する必要があるライブラリはLGPL、スタンドアロンバイナリおよびテストケースはGPL、WebサービスおよびREST APIを実装するWebサーバーはAGPLである。(ビルドロジックなどの)些細なコードもパブリックドメインにされることがある。パブリック・ドメインを持たない立法では、そのコードはLGPLのもとであると考えるべきです。

このプロジェクトは当初、GNUnet e.V.とINRIAのコードと文書に基づいて開始され、GNUnetコミュニティとTaler Systems SAによって開発が続けられています。 INRIAとGNUnet e.V.はTaler Systems SAに著作権を譲渡または共有しています。 したがって、一般的に、コードの著作権はTaler Systems SAにあると言うべきです。

わたしたちは、GNU Anastasisパッケージとも緊密に協力しています。ここでは、BFHのオリジナルの開発者とGNUnet e.V.の間で同じ著作権共有が行われていますが、Anastasis SARLに著作権が譲渡もしくは共有されていることを除きます。技術的に正当であれば、開発者がGNU Anastasis、GNUnet、GNU Talerの間で自由にコードを移動することを認める協定が結ばれています(すべての開発者はGNUnet e.V.著作権貢献者協定に署名しなければならないことに注意してください)。

このファイルは古いかもしれないことに注意してください。疑問があれば、関係するGNUメンテナー(現在はFlorian Dold、Christian Grothoff、Martin Schanzenbach)に連絡してください。(この権利は、技術的には、個々の貢献者が署名した著作権協定によって付与され、制約され、おそらくAnastasis SARL、GNUnet e.V.およびTaler Systems SA内の決定プロセスに従うことになります。 しかし、実際には、これまでのところ、このことが問題になったことはありません。なぜなら、これまでのところ、誰もがライセンス戦略に同意しており、LGPL、GPL、AGPLライセンスのコンポーネントの間でコードが移動したり、開発者が誤ってヘッダで間違ったライセンスを使用したりといった問題が発生した場合、メンテナーは一貫してその戦略を実装するために微調整を行うだけだからです)。

4.1. AGPLに従って#

AGPLの主な目的は、サービスの提供者が、そのサービスのすべての利用者が、そのサービスのソースコードに容易にアクセスできるようにすることを要求することである。

GNUnet、GNU Taler、GNU Anastasisについては、APIのユーザーをコンポーネントとその依存関係のソースコード(TGZまたはGitリポジトリへのリダイレクトのいずれか)に誘導する``/agpl/``エンドポイントを実装することで、この要件を実現しています(すでに他の場所で簡単に利用でき、見つけることができる未修正の依存関係を含めないことは容認できると考えています)。 そして、ソースコード(GPLで定義されています)は、そのアドレスから、開発に適した形で(つまり、ビルドシステムと命令を含めて)、無償で、アクセス制御なしにダウンロードできなければなりません。 GPLのもとでコードを配布する際の通常の制約もすべて適用されます。

GNUによってリリースされたアップストリームバージョンから変更されたソースをデプロイするときは、``/agpl/``エンドポイントを更新して、変更されたソースコードを指すようにしなければなりません。 カスタマイズ、拡張、統合、セキュリティの強化、バグ修正などを含む、実際にデプロイされたバージョンのコードを常に利用可能にしなければならないことに注意してください。

4.2. GPLに従う#

GPLは、それぞれのプログラムのソースコードを、そのプログラムを実行している可能性のあるすべてのユーザが利用できるようにすることを要求しています。これには、あなたが行ったあらゆるカスタマイズ(ブランディング、テーマ設定、拡張機能、統合、セキュリティの強化、バグ修正)も含まれます。 改変されたプログラムのソースコードは、再びGPLのもとで公開されなければならず、あなたのプログラムのすべてのユーザーにとって無償で入手することが合理的に容易でなければなりません。

GNUリリースの*変更されていない*バージョンのバイナリを出荷する場合、GNUはプロジェクトのGitリポジトリとGNUプロジェクトのFTPミラーの両方からソースを利用可能にするので、これは満たされます。 あなたは、バイナリを作成するためにあなたが書いたパッケージング・ロジックをほかの人が利用できるようにする必要があります。

4.3. LGPLに従う#

LGPLに従うには、基本的に、提供されたソースに関してGPLのもとで行うべきことをすべて行うことになります。

しかしながら、LGPLのもとで提供されたコードをLGPLv3+のもとでない他のコードと統合することは許されています。とはいえ、わたしたちの既存のコードへの改変はLGPLv3+のままでなければならず、あなたのコードすべてを適切なFLOSSライセンスのもとでリリースすることを強く推奨します。

4.4. チュートリアル (git://git.taler.net/tutorials)#

本仕様書は、INRIAおよび「GNUnet e.V.」という法人格を持つ個人によって開発された。各ソースファイルのヘッダーには、誰が著作権を保持しているかが示されています。なぜなら、ある部分はGNUnet e.V.財団から "そのまま "引用され、ある部分はINRIAまたはTaler Systems SAで "新たに "開発されたからです。

一般的に、GNU GPLv3ライセンスが使用されています; COPYING.GPLをご覧ください。