Jak vybrat licenci Open Source pro framework RAD na GitHubu

V tomto článku si povíme něco málo o autorských právech, ale hlavně o výběru bezplatné licence pro framework RAD IONDV. Rámec a pro open source produkty na něm založené. Řekneme vám o povolovací licenci Apache 2.0, o tom, co nás k tomu vedlo a jakým rozhodnutím jsme v tomto procesu čelili.

Proces výběru licence je poměrně pracný a měl by se k němu přistupovat již sečtělý, a pokud nejste šťastným majitelem právnického vzdělání, otevírá se před vámi nekonečné pole informací o různých bezplatných licencích. Hlavní věcí je vypracovat řadu omezujících kritérií. Prostřednictvím procesu diskuse a reflexe budete vy a váš tým schopni porozumět tomu, co chcete uživatelům vašeho produktu povolit a co zakázat. Když již máte určitý popis v rukou, musíte jej překrýt na stávající licence a vybrat tu, kde se shoduje největší počet bodů. Zní to samozřejmě jednoduše, ale ve skutečnosti většinou i po diskusi zůstávají otázky.

Jak vybrat licenci Open Source pro framework RAD na GitHubu

Nejprve odkaz na selectalicense.com, užitečná stránka, kterou jsme hojně využívali. Věnujte zvláštní pozornost srovnávací tabulka licence podle 13 hlavních kritérií. Ať vás provází angličtina a trpělivost.

Mouka volby

Začněme obecnými vlastnostmi licencí pro svobodný software. Open source software znamená výhradně bezplatnou licenci, která neomezuje komerční a nekomerční distribuci podle vzoru Otevřete jádro. Umístění softwaru do sítě pod svobodnou licencí tedy nemůže zcela omezit jeho přenos, distribuci a prodej třetími stranami a musíte být na to mentálně připraveni.

Bezplatná licence dává uživateli právo podílet se na zpětném inženýrství softwaru nebo jej měnit jinými dostupnými způsoby. Většina licencí vám neumožňuje přejmenovat produkt nebo s ním provádět jakékoli manipulace a měnit práva autora a/nebo vlastníka systému.

Hlavní otázky, které nás ohledně bezplatných licencí zajímaly, byly:

  1. Měly by být změny provedené v softwaru zaznamenány a nemají žádný vztah k držiteli autorských práv k systému?
  2. Neměl by být název odvozeného softwaru stejný jako název softwaru držitele autorských práv?
  3. Je možné u jakýchkoli nových verzí změnit licenci na jinou, včetně proprietární?

Po pečlivém prozkoumání seznamu nejběžnějších licencí jsme vybrali několik, které jsme zvažovali podrobněji. Potenciální licence pro IONDV. Rámec byly: GNU GPLv3, Apache 2.0, MIT a MPL. MIT téměř okamžitě vyloučeno, jedná se o permisivní necopyleftovou licenci, která umožňuje použití, úpravu a šíření kódu téměř jakýmkoliv způsobem, ale s touto možností jsme nebyli spokojeni, přesto jsme chtěli, aby licence upravovala vztah mezi autorským právem držitel a uživatel. Většina menších projektů na GitHubu je publikována pod licencí MIT nebo jejími různými variacemi. Samotná licence je velmi krátká a jediným zákazem je uvést autorství tvůrce softwaru.

Další byla licence mpl 2.0. Je pravda, že jsme na to nepřišli hned, ale po podrobnějším prostudování jsme to rychle vyloučili, protože hlavní nevýhodou je, že licence se nevztahuje na celý projekt, ale na jednotlivé soubory. Navíc pokud uživatel změní soubor, nemůže změnit licenci. Ve skutečnosti, bez ohledu na to, jak usilovně změníte projekt s otevřeným zdrojovým kódem, nikdy ho nebudete moci zpeněžit kvůli takové licenci. To se mimochodem netýká držitele autorských práv.

Podobný problém přetrvává i s licencí GNU GPLv3. Vyžaduje, aby pod ním zůstal jakýkoli soubor. GNU GPL je copyleft licence, která vyžaduje, aby odvozená díla byla open source a zůstala pod stejnou licencí. To znamená: přepsáním dvou řádků kódu budete nuceni potvrdit své změny a při dalším používání nebo distribuci uložit kód pod GNU GPL. V tomto případě je to limitující faktor pro uživatele našeho projektu, nikoli pro nás. Změna GPL na jakoukoli jinou licenci je však zakázána, a to i ve verzích GPL. Pokud se například změníte LGPL (doplněk ke GPL) ke GPL, pak už nebude cesty zpět k LGPL. A tento bod byl rozhodující při hlasování proti.

Celkově se naše volba zpočátku přikláněla k GPL3 právě kvůli distribuci upraveného kódu pod stejnou licencí. Mysleli jsme si, že tímto způsobem můžeme zabezpečit náš produkt, ale v Apache 2.0 jsme viděli méně rizik. Podle Free Software Foundation je GPLv3 kompatibilní s licencí Apache v2.0, což znamená, že je vždy možné změnit licenci z licence Apache v2.0 na GPL v3.0.

Apache 2.0

Apache 2.0 — vyvážená permisivní licence s důrazem na autorská práva. Zde jsou odpovědi, které dala na otázky, které nás zajímaly. Měly by být změny provedené v softwaru zaznamenány a nemají žádný vztah k držiteli autorských práv k systému? Ano, všechny změny musí být zdokumentovány a nejsme zodpovědní za původní ani upravený kód. Soubor se změnami musí být připojen ke kódu, ve kterém jste tyto změny provedli. Neměl by být název odvozeného softwaru stejný jako název softwaru držitele autorských práv? Ano, odvozený software by měl být vydán pod jiným názvem a pod jinou ochrannou známkou, ale s uvedením držitele autorských práv. Je možné u jakýchkoli nových verzí změnit licenci na jinou, včetně proprietární? Ano, může být vydán pod různými licencemi, Apache 2.0 neomezuje použití žádných nekomerčních a komerčních licencí.

Rovněž při vydávání nových produktů založených na otevřeném zdrojovém kódu pro Apache 2.0 nebo produktů s doplňkovými funkcemi není nutné používat stejnou licenci. Níže vidíte obrázek s podmínkami a omezeními licence Apache 2.0.

Jak vybrat licenci Open Source pro framework RAD na GitHubu

Licence ukládá požadavek na zachování a uvedení autorských práv a licence, pod kterou je software uvolněn. Povinná dostupnost oznámení o autorských právech se jménem držitele autorských práv a licencí chrání práva původního autora softwaru, protože i když je software přejmenován, rozdán nebo prodán pod jinou licencí, autorská značka zůstane zachována. K tomu můžete také použít soubor OZNÁMENÍ a přiložte jej buď ke zdrojovému kódu nebo k projektové dokumentaci.

Všechny naše produkty veřejně dostupné na GitHubu vydáváme pod licencí Apache 2.0, kromě IONDV. Válečný archiv, jejíž zdrojový kód zveřejnilo pod licencí GPLv3 na GitHubu v dubnu tohoto roku Far Eastern Center for Social Technologies. V současné době, kromě rámec a moduly zveřejněno aplikace vyrobeno na rámu. Na hubu, o kterém jsme už mluvili Systém řízení projektů a asi Registr komunikací.

Tito. podrobnosti o rámu

IONDV. Framework je open source framework založený na node.js pro vytváření webových aplikací na vysoké úrovni založených na metadatech, který nevyžaduje vážné programátorské znalosti.

Základem funkčnosti aplikace je datová evidence - modul Registr. Jedná se o klíčový modul určený přímo pro práci s daty na bázi metadatových struktur - včetně správy projektů, programů, akcí apod. Projekt využívá i portálový modul pro zobrazování libovolných šablon dat - implementuje přední registr archivu.

MongoDb se používá pro DBMS - ukládá nastavení aplikace, metadata a samotná data.

Jak uplatnit licenci na váš projekt?

Přidat soubor LICENCE s textem licence v úložišti vašeho projektu a voilà, projekt chráněný Apache 2.0. Musíte uvést držitele autorských práv, to je vše upozornění na autorská práva. To lze provést ve zdrojovém kódu nebo v souboru OZNÁMENÍ (textový soubor se seznamem všech knihoven licencovaných pod licencí Apache spolu se jmény jejich tvůrců). Umístěte samotný soubor buď do zdrojového kódu, nebo do dokumentace distribuované spolu s dílem. U nás to vypadá takto:

Copyright © 2018 ION DV LLC.
Licencováno pod licencí Apache, verze 2.0

Text licence Apache 2.0

Licence Apache
Verze 2.0, leden 2004
http://www.apache.org/licenses/

PODMÍNKY POUŽITÍ, REPRODUKCE A DISTRIBUCE

  1. Definice.

    "Licence" znamená podmínky pro použití, reprodukci,
    a distribuce podle definice v oddílech 1 až 9 tohoto dokumentu.

    "Poskytovatel licence" znamená vlastníka autorských práv nebo subjekt autorizovaný
    vlastník autorských práv, který uděluje licenci.

    "Právnická osoba" znamená spojení jednající osoby a všech
    jiné subjekty, které ovládají, jsou ovládány nebo jsou pod společnými
    kontrolu s touto entitou. Pro účely této definice se
    "kontrola" znamená (i) moc, přímá nebo nepřímá, způsobit
    řízení nebo vedení takového subjektu, ať už na základě smlouvy nebo
    jinak, nebo (ii) vlastnictví padesáti procent (50%) nebo více z
    nevyřízené akcie nebo (iii) skutečné vlastnictví takového subjektu.

    „Vy“ (nebo „Vaše“) znamená fyzickou osobu nebo právnickou osobu
    výkonu oprávnění udělených touto licencí.

    „Zdrojový“ formulář znamená preferovaný formulář pro provádění úprav,
    včetně, ale bez omezení, zdrojového kódu softwaru, dokumentace
    zdrojové a konfigurační soubory.

    Formou "předmětu" se rozumí jakákoli forma vyplývající z mechanického zpracování
    transformace nebo překlad zdrojového formuláře, včetně
    neomezuje se pouze na kompilovaný objektový kód, generovanou dokumentaci,
    a převody na jiné typy médií.

    „Dílo“ znamená autorské dílo, ať už ve Zdroji nebo
    Formulář objektu, zpřístupněný na základě licence, jak je označen a
    upozornění na autorská práva, které je součástí díla nebo k němu je připojeno
    (příklad je uveden v příloze níže).

    „Odvozená díla“ znamenají jakékoli dílo, ať už ve Zdroji nebo Objektu
    forma, která je založena na (nebo odvozena) od Díla a pro kterou
    redakční revize, anotace, zpracování nebo jiné úpravy
    představují jako celek originální autorské dílo. Pro účely
    této licence, odvozená díla nebudou zahrnovat díla, která zůstanou
    oddělitelné od, nebo pouze odkazovat (nebo vážit jménem) na rozhraní,
    Dílo a odvozená díla.

    „Příspěvek“ znamená jakékoli autorské dílo, včetně
    původní verzi Díla a jakékoli úpravy či doplňky
    k tomuto dílu nebo odvozeným dílům, což je záměrně
    předložen Poskytovateli licence k zařazení do Díla vlastníkem autorských práv
    nebo jednotlivec nebo právnická osoba oprávněná podat jménem
    vlastník autorských práv. Pro účely této definice „předložené“
    znamená jakoukoli formu zaslané elektronické, slovní nebo písemné komunikace
    Poskytovateli licence nebo jeho zástupcům, mimo jiné včetně
    komunikace na elektronických e-mailových konferencích, systémy řízení zdrojových kódů,
    a systémy pro sledování problémů, které jsou spravovány organizací nebo jejím jménem
    Poskytovatel licence za účelem projednání a zlepšení Díla, ale
    kromě komunikace, která je nápadně označena nebo jinak
    písemně označené vlastníkem autorských práv jako „Není příspěvek“.

    „Přispěvatel“ znamená poskytovatele licence a jakoukoli fyzickou nebo právnickou osobu
    jménem kterého byl poskytnut Příspěvek Poskytovatelem licence a
    následně začleněny do Díla.

  2. Udělení licence na autorská práva. V souladu se smluvními podmínkami společnosti
    této licence vám každý přispěvatel tímto uděluje věčné,
    celosvětový, nevýhradní, bezplatný, bez licenčních poplatků, neodvolatelný
    autorská licence k reprodukci, přípravě odvozených děl,
    veřejně zobrazovat, veřejně provádět, sublicencovat a distribuovat
    Práce a tato odvozená díla ve formě zdroje nebo objektu.

  3. Udělení patentové licence. V souladu se smluvními podmínkami společnosti
    této licence vám každý přispěvatel tímto uděluje věčné,
    celosvětový, nevýhradní, bezplatný, bez licenčních poplatků, neodvolatelný
    (kromě případů uvedených v této části) patentová licence k výrobě, výrobě,
    použít, nabídnout k prodeji, prodat, importovat a jinak převést Dílo,
    kde se taková licence vztahuje pouze na ty patentové nároky, na které lze poskytnout licenci
    takovým přispěvatelem, které jsou nutně porušeny jejich
    Příspěvky samostatně nebo kombinací jejich příspěvků
    s Dílem, kterému byl takový Příspěvek (příspěvky) předložen. Jestli ty
    zahájit patentový spor proti jakémukoli subjektu (včetně a
    vzájemný nárok nebo vzájemný nárok v soudním řízení), které tvrdí, že Dílo
    nebo Příspěvek začleněný do Díla představuje přímý
    nebo příspěvkové porušení patentu, pak jakékoli patentové licence
    udělené vám na základě této licence pro dané dílo skončí
    ke dni podání takového soudního sporu.

  4. Přerozdělování. Můžete reprodukovat a distribuovat kopie
    Dílo nebo odvozené dílo z něj v jakémkoli médiu, s nebo bez
    úpravy, a to ve formě Zdroje nebo Objektu, pokud jste
    splňovat následující podmínky:

    (a) Musíte dát jakékoli další příjemce Díla nebo
    Derivative Works kopie této licence; a

    (b) Musíte zajistit, aby všechny upravené soubory obsahovaly nápadná upozornění
    prohlášení, že jste změnili soubory; a

    © Musíte uchovat ve zdrojové podobě jakéhokoli odvozeného díla
    které distribuujete, všechna autorská práva, patenty, ochranné známky a
    oznámení o přidělení ze zdrojového formuláře Díla,
    s výjimkou oznámení, která se netýkají žádné části
    odvozená díla; a

    (d) Pokud dílo obsahuje jako součást textový soubor „NOTICE“.
    distribuci, pak musí být odvozená díla, která distribuujete
    zahrnout čitelnou kopii obsažených oznámení o přiřazení
    v takovém souboru NOTICE, s výjimkou těch oznámení, která tomu tak nejsou
    se týkají jakékoli části odvozených děl, alespoň v jedné
    z následujících míst: v rámci distribuovaného textového souboru NOTICE
    jako součást odvozených děl; ve zdrojovém formuláři nebo
    dokumentace, pokud je poskytována spolu s odvozenými pracemi; nebo,
    v rámci displeje generovaného odvozenými pracemi, pokud a
    kdekoli se takové oznámení třetích stran obvykle objevují. Náplň
    souboru NOTICE slouží pouze pro informační účely a
    neupravujte licenci. Můžete přidat své vlastní uvedení zdroje
    upozornění v rámci odvozených děl, která distribuujete
    nebo jako dodatek k textu OZNÁMENÍ z Díla, za předpokladu
    že taková dodatečná oznámení o přiřazení nelze vykládat
    jako úprava licence.

    K vašim změnám a můžete přidat vlastní prohlášení o autorských právech
    může poskytnout další nebo odlišné licenční podmínky
    za použití, reprodukci nebo distribuci vašich úprav, nebo
    pro jakákoli taková odvozená díla jako celek za předpokladu, že je používáte,
    reprodukce a distribuce Díla jinak vyhovuje
    podmínky uvedené v této licenci.

  5. Předkládání příspěvků. Pokud výslovně neuvedete jinak,
    jakýkoli Příspěvek záměrně odeslaný k zařazení do Díla
    vámi poskytovatelem licence se řídí podmínkami
    této licence, bez jakýchkoli dalších podmínek.
    Bez ohledu na výše uvedené nebude nic v tomto dokumentu nahrazovat ani upravovat
    podmínky jakékoli samostatné licenční smlouvy, kterou jste uzavřeli
    s Poskytovatelem licence ohledně těchto Příspěvků.

  6. ochranné známky. Tato licence neuděluje oprávnění k využívání obchodu
    názvy, ochranné známky, servisní značky nebo názvy produktů poskytovatele licence,
    kromě případů, kdy je to nutné pro přiměřené a obvyklé použití při popisu
    původ Díla a reprodukování obsahu souboru OZNÁMENÍ.

  7. Zřeknutí se záruky. Pokud to nevyžaduje platný zákon resp
    s písemným souhlasem Poskytovatel licence poskytuje Dílo (a každé
    Přispěvatel poskytuje své příspěvky) „TAK, JAK JSOU“,
    BEZ ZÁRUK NEBO PODMÍNEK JAKÉHOKOLI DRUHU, ať výslovných, nebo
    předpokládané, včetně, bez omezení, jakýchkoli záruk nebo podmínek
    NÁZEV, BEZ PORUŠENÍ PRÁV, OBCHODOVATELNOST nebo VHODNOST PRO A
    URČITÝ ÚČEL. Jste výhradně zodpovědní za určení
    vhodnost použít nebo přerozdělit Dílo a převzít jakékoli
    rizika spojená s výkonem oprávnění podle této licence.

  8. Omezení odpovědnosti. V žádném případě a podle žádné právní teorie,
    ať už v deliktu (včetně nedbalosti), smlouvy nebo jinak,
    pokud to nevyžadují příslušné zákony (například úmyslné a hrubé
    z nedbalosti) nebo písemně odsouhlaseno, jakýmkoli přispěvatelem bude
    odpovídá vám za škody, včetně jakýchkoli přímých, nepřímých, zvláštních,
    náhodné nebo následné škody jakékoli povahy vzniklé jako a
    výsledkem této licence nebo z důvodu používání nebo nemožnosti používat
    Práce (mimo jiné včetně škod za ztrátu dobré vůle,
    přerušení práce, porucha nebo porucha počítače nebo cokoli jiného
    jiné komerční škody nebo ztráty), i když takový přispěvatel
    byl upozorněn na možnost takových škod.

  9. Přijetí záruky nebo dodatečné odpovědnosti. Při přerozdělování
    Dílo nebo odvozená díla z něj, které se můžete rozhodnout nabídnout,
    a účtovat poplatek za přijetí podpory, záruku, odškodnění,
    nebo jiné závazkové povinnosti a / nebo práva v souladu s tímto
    Licence. Při přijímání těchto povinností však můžete jednat pouze
    vaším jménem a na vaši výhradní odpovědnost, nikoli jménem
    jakéhokoli jiného přispěvatele a pouze v případě, že souhlasíte s odškodněním,
    hájit a udržovat každého přispěvatele neškodným za jakoukoli odpovědnost
    vzniklé takovému Přispěvateli z důvodu nebo nároky vůči němu uplatněné
    vašeho přijetí jakékoli takové záruky nebo dodatečné odpovědnosti.

    KONEC PODMÍNEK

    PŘÍLOHA: Jak použít licenci Apache na vaši práci.

    Chcete-li na svou práci použít licenci Apache, připojte následující
    standardní upozornění s poli uzavřenými v závorkách "[]"
    nahrazeny vlastními identifikačními údaji. (Nezahrnujte
    závorky!) Text by měl být přiložen příslušným způsobem
    syntaxe komentáře pro formát souboru. Také doporučujeme, aby a
    název souboru nebo třídy a popis účelu
    pro snazší stejnou „tištěnou stránku“ jako upozornění na autorská práva
    identifikace v archivech třetích stran.

    Autorské právo [rrrr] [jméno vlastníka autorských práv]

    Licencováno na základě licence Apache, verze 2.0 (dále jen „licence“);
    tento soubor nesmíte používat, pokud není v souladu s licencí.
    Kopii licence můžete získat na adrese

    http://www.apache.org/licenses/LICENSE-2.0

    Není-li to vyžadováno příslušným zákonem nebo písemně dohodnuto, software
    distribuovaný na základě licence je distribuován „TAK, JAK JE“,
    BEZ ZÁRUKY NEBO PODMÍNKÝCH JAKÝCHKOLI DRUHŮ, ať výslovných nebo předpokládaných.
    Viz Licence pro specifický jazyk upravující oprávnění a
    omezení na základě licence.

Licence = smlouva

Bezplatná licence, i když je zdarma, neumožňuje svolení a příklady omezení jsme již uvedli. Vyberte licenci s ohledem jak na vaše zájmy, tak na zájmy uživatele, protože open source software je navržen přímo pro něj. Uživatel projektu by měl licenci vnímat jako jakousi dohodu mezi ním a držitelem autorských práv, proto si před provedením jakýchkoli akcí se zdrojovým kódem pečlivě prostudujte omezení, která vám ukládá licence projektu.

Doufáme, že jsme téma licencí trochu osvětlili a i přes složitost problematiky by se neměly stát překážkou na vaší cestě k Open Source. Rozvíjejte svůj projekt a nezapomínejte na práva, vaše i ostatní.

Užitečné odkazy

Na závěr několik užitečných zdrojů, které nám pomohly při hledání informací o stávajících licencích a výběru té nejvhodnější pro naše účely:

Zdroj: www.habr.com

Přidat komentář