4. Informácie o licenciách Taler#

Tento súbor poskytuje prehľad o všetkých licenciách komponentov Taler a ich závislostiach počas behu. „Komponent“ v tomto kontexte treba chápať ako súbor zdrojových súborov, ktoré možno získať z jedného úložiska Git. Ak sa komponenty skladajú zo zdrojových kódov v rôznych licenčných režimoch, t. j. pretože chceme umožniť vývojárom tretích strán jednoduchú integráciu s programom Taler, sú popísané aj tieto.

Všetky komponenty sú spravidla vydané pod licenciami Lesser GPL, GPL alebo Affero GPL. Hlavnou stratégiou je, aby knižnice, ktoré môžu tretie strany potrebovať na integráciu s Talerom, boli pod LGPL, samostatné binárne súbory a testovacie prípady pod GPL a webové servery implementujúce webové služby a REST API pod AGPL. Triviálny kód (ako napríklad logika zostavovania) sa príležitostne tiež jednoducho dáva do verejnej domény. V právnych predpisoch, ktoré nemajú verejnú doménu, by sa tento kód mal považovať za kód pod licenciou LGPL.

Projekt bol pôvodne spustený na základe kódu a dokumentácie od GNUnet e.V. a INRIA a je naďalej rozvíjaný komunitou GNUnet a spoločnosťou Taler Systems SA. INRIA a GNUnet e.V. postúpili alebo sa podelili o svoje autorské práva so spoločnosťou Taler Systems SA. Vo všeobecnosti by sa teda malo povedať, že kód je chránený autorskými právami spoločnosti Taler Systems SA.

Úzko spolupracujeme aj s balíkom GNU Anastasis. Tu platí rovnaké zdieľanie autorských práv medzi pôvodnými vývojármi z BFH a GNUnet e.V., s tým rozdielom, že autorské práva boli postúpené alebo zdieľané so spoločnosťou Anastasis SARL. Existujú dohody, ktoré umožňujú vývojárom voľne presúvať kód medzi GNU Anastasis, GNUnet a GNU Taler, ak je to technicky opodstatnené (upozorňujeme, že všetci vývojári musia podpísať dohodu s prispievateľom autorských práv GNUnet e.V.).

Upozorňujeme, že tento súbor môže byť zastaraný. V prípade pochybností sa obráťte na príslušných správcov GNU (v súčasnosti sú to Florian Dold, Christian Grothoff a Martin Schanzenbach), pretože títo majú vo všeobecnosti zodpovednosť a právo určiť vhodnú licenciu pre jednotlivé komponenty. (Toto právo je technicky dané a obmedzené zmluvami o autorských právach podpísanými jednotlivými prispievateľmi a prípadne podlieha rozhodovacím procesom v rámci spoločností Anastasis SARL, GNUnet e.V. a Taler Systems SA. V praxi to však zatiaľ nikdy nebol problém, pretože zatiaľ všetci súhlasia s licenčnou stratégiou a správcovia len vykonajú drobné úpravy, aby sa táto stratégia dôsledne uplatňovala, keď sa vyskytnú problémy, ako napríklad presun kódu medzi komponentmi s licenciami LGPL, GPL a AGPL alebo keď vývojári omylom použijú nesprávnu licenciu v hlavičke.)

4.1. V súlade s AGPL#

Hlavným cieľom licencie AGPL je vyžadovať od poskytovateľa služby, aby zdrojový kód služby ľahko sprístupnil všetkým používateľom tejto služby.

Pre GNUnet, GNU Taler a GNU Anastasis realizujeme túto požiadavku implementáciou koncového bodu /agpl/, ktorý používateľov API presmeruje na zdrojový kód (buď TGZ alebo presmerovanie na repozitár Git) komponentu a jeho závislostí (veríme, že je prijateľné nezahrnúť nemodifikované závislosti, ktoré sú už ľahko dostupné a nájditeľné inde). Zdrojový kód (ako je definovaný v licencii GPL) potom musí byť možné z tejto adresy bezplatne a bez kontroly prístupu stiahnuť vo forme vhodnej na vývoj (to znamená vrátane systému zostavovania a návodov). Platia aj všetky obvyklé obmedzenia distribúcie kódu pod licenciou GPL.

Pri nasadzovaní zdrojových kódov, ktoré boli upravené oproti verziám vydaným spoločnosťou GNU, musíte aktualizovať koncový bod /agpl/ tak, aby ukazoval na upravený zdrojový kód. Všimnite si, že musíte vždy sprístupniť kód skutočne nasadenej verzie, ktorý obsahuje úpravy, rozšírenia, integrácie alebo bezpečnostné vylepšenia či opravy chýb.

4.2. Dodržiavanie licencie GPL#

Licencia GPL vyžaduje, aby ste zdrojový kód príslušného programu sprístupnili všetkým používateľom, ktorí môžu program používať. To opäť zahŕňa všetky úpravy (tvorbu značky, tematické úpravy, rozšírenia, integrácie alebo bezpečnostné vylepšenia či opravy chýb), ktoré ste mohli vykonať. Zdrojový kód upraveného programu musí byť opäť zverejnený pod licenciou GPL a musí byť primerane ľahko dostupný grátis pre všetkých používateľov vášho programu.

Pri zasielaní binárnych súborov nezmenených verzií vydaní GNU je táto podmienka splnená, pretože GNU sprístupňuje zdrojové kódy prostredníctvom repozitárov Git projektu a zrkadiel FTP projektu GNU. Stále sa od vás vyžaduje, aby ste ostatným sprístupnili akúkoľvek logiku balenia, ktorú ste napísali na vytvorenie binárnych súborov.

4.3. Dodržiavanie licencie LGPL#

Ak chcete dodržať LGPL, v podstate urobíte všetko, čo musíte urobiť podľa GPL, pokiaľ ide o poskytnuté zdrojové kódy.

Kód poskytnutý pod licenciou LGPL však môžete integrovať s iným kódom, ktorý nie je pod licenciou LGPLv3+. Úpravy nášho existujúceho kódu však musia zostať pod licenciou LGPLv3+ a dôrazne vám odporúčame, aby ste celý svoj kód zverejnili pod príslušnou licenciou FLOSS.

4.4. Návody (git://git.taler.net/tutorials)#

Špecifikácia bola pôvodne vyvinutá inštitútom INRIA a jednotlivcami, ktorí patria pod právny subjekt s názvom „GNUnet e.V.“. V záhlaví každého zdrojového súboru je uvedené, kto je držiteľom autorských práv, pretože niektoré časti boli prevzaté „doslovne“ z nadácie GNUnet e.V. a niektoré iné boli vyvinuté v INRIA alebo Taler Systems SA „ex novo“.

Vo všeobecnosti sa pre ne používa licencia GNU GPLv3; pozri COPYING.GPL.