4. Informace o licencování Taleru#
Tento soubor obsahuje přehled licencí všech komponent Taleru a jejich závislostí na běhu. „Komponentu“ je v tomto kontextu třeba chápat jako soubor zdrojových souborů, které lze získat z jednoho úložiště Git. Pokud se komponenty skládají ze zdrojových kódů v různých licenčních režimech, tj. protože chceme umožnit vývojářům třetích stran snadnou integraci s Talerem, jsou popsány i ty.
Všechny komponenty jsou obecně uvolněny pod licencemi Lesser GPL, GPL nebo Affero GPL. Hlavní strategií je, aby knihovny, které mohou třetí strany potřebovat k integraci s Talerem, byly pod LGPL, samostatné binární soubory a testovací příklady pod GPL a webové servery implementující webové služby a rozhraní REST API pod AGPL. Triviální kód (jako je logika sestavení) je také občas jednoduše převeden do veřejného vlastnictví. Legislativa, která nemá veřejnou doménu, by měla tento kód považovat za kód pod licencí LGPL.
Projekt byl původně zahájen na základě kódu a dokumentace společností GNUnet e.V. a INRIA a je dále rozvíjen komunitou GNUnet a společností Taler Systems SA. INRIA i GNUnet e.V. postoupily svá autorská práva společnosti Taler Systems SA nebo se o ně podělily. Obecně by se tedy mělo říci, že kód je chráněn autorskými právy společnosti Taler Systems SA.
Úzce spolupracujeme také s balíčkem GNU Anastasis. Zde platí stejné sdílení autorských práv mezi původními vývojáři z BFH a GNUnet e.V., s tím rozdílem, že autorská práva byla postoupena nebo sdílena se společností Anastasis SARL. Existují dohody, které umožňují vývojářům volně přesouvat kód mezi GNU Anastasis, GNUnet a GNU Taler, pokud je to technicky odůvodněné (všimněte si, že všichni vývojáři musí podepsat dohodu o přispívání do autorských práv GNUnet e.V.).
Upozorňujeme, že tento soubor může být zastaralý. V případě pochybností se obraťte na příslušné správce GNU (v současné době jsou to Florian Dold, Christian Grothoff a Martin Schanzenbach), protože ti mají obecně odpovědnost a právo určit vhodnou licenci pro jednotlivé komponenty. (Toto právo je technicky dáno a omezeno smlouvami o autorských právech podepsanými jednotlivými přispěvateli a případně podléhá rozhodovacím procesům v rámci společností Anastasis SARL, GNUnet e.V. a Taler Systems SA. V praxi to však zatím nikdy nebyl problém, protože zatím všichni souhlasí s licenční strategií a správci pouze provedou drobné úpravy, aby tuto strategii důsledně uplatňovali, když se vyskytnou problémy, jako je například přesun kódu mezi komponentami s licencemi LGPL, GPL a AGPL nebo když vývojáři omylem použijí v hlavičce nesprávnou licenci).
4.1. V souladu s licencí AGPL#
Hlavním cílem licence AGPL je požadovat, aby poskytovatel služby snadno zpřístupnil zdrojový kód služby všem uživatelům této služby.
Pro GNUnet, GNU Taler a GNU Anastasis tento požadavek realizujeme implementací koncového bodu /agpl/, který uživatele API odkazuje na zdrojový kód (buď TGZ, nebo přesměrování na repozitář Git) komponenty a jejích závislostí (věříme, že je přijatelné nezahrnovat nemodifikované závislosti, které jsou již snadno dostupné a nalezitelné jinde). Zdrojový kód (ve smyslu licence GPL) pak musí být z této adresy k dispozici ke stažení zdarma a bez kontroly přístupu v podobě vhodné pro vývoj (tj. včetně systému sestavení a návodů). Platí také všechna obvyklá omezení distribuce kódu pod licencí GPL.
Při nasazování zdrojových kódů, které byly upraveny oproti verzím vydaným společností GNU, musíte aktualizovat koncový bod /agpl/ tak, aby ukazoval na upravený zdrojový kód. Všimněte si, že musíte vždy zpřístupnit kód skutečně nasazené verze, který obsahuje úpravy, rozšíření, integrace nebo bezpečnostní vylepšení či opravy chyb.
4.2. V souladu s licencí GPL#
Licence GPL vyžaduje, abyste zdrojový kód příslušného programu zpřístupnili všem uživatelům, kteří mohou program používat. To opět zahrnuje veškeré úpravy (tvorbu značky, tematické úpravy, rozšíření, integrace nebo bezpečnostní vylepšení či opravy chyb), které jste případně provedli. Zdrojový kód upraveného programu musí být opět uvolněn pod licencí GPL a musí být přiměřeně snadno dostupný zdarma pro všechny uživatele vašeho programu.
Při zasílání binárních souborů nezměněných verzí vydání GNU je tento požadavek splněn, protože GNU zpřístupňuje zdrojové kódy jak v repozitářích Git projektu, tak v zrcadlech FTP projektu GNU. Stále však musíte zpřístupnit ostatním jakoukoli balíčkovací logiku, kterou jste napsali pro vytvoření binárních souborů.
4.3. V souladu s licencí LGPL#
Chcete-li dodržet licenci LGPL, děláte v podstatě vše, co musíte udělat podle licence GPL, pokud jde o zdrojové kódy, které vám byly poskytnuty.
Kód poskytnutý pod licencí LGPL však smíte integrovat s jiným kódem, který není pod licencí LGPLv3+. Nicméně úpravy našeho stávajícího kódu musí zůstat pod licencí LGPLv3+ a důrazně vám doporučujeme, abyste veškerý svůj kód uvolnili pod příslušnou licencí FLOSS.
4.4. Výukové programy (git://git.taler.net/tutorials)#
Specifikace byla původně vyvinuta organizací INRIA a jednotlivci pod právnickou osobou s názvem „GNUnet e.V.“. U každého zdrojového souboru je v záhlaví uvedeno, kdo je držitelem autorských práv, protože některé části byly „doslovně“ převzaty z nadace GNUnet e.V. a některé jiné byly vyvinuty v INRIA nebo Taler Systems SA „ex novo“.
Obecně se pro ně používá licence GNU GPLv3; viz COPYING.GPL.