Ako si vybrať licenciu Open Source pre framework RAD na GitHub
V tomto článku si povieme niečo málo o autorských právach, ale hlavne o výbere bezplatnej licencie pre framework RAD IONDV. Rámec a pre produkty s otvoreným zdrojom, ktoré sú na ňom založené. Povieme vám o povoľovacej licencii Apache 2.0, o tom, čo nás k tomu viedlo a akým rozhodnutiam sme pri tom čelili.
Proces výberu licencie je dosť pracný a treba k nemu pristupovať už dobre prečítaný, a ak nie ste šťastným majiteľom právnického vzdelania, tak sa pred vami otvára nekonečné pole informácií o rôznych bezplatných licenciách. Hlavná vec, ktorú musíte urobiť, je vypracovať niekoľko obmedzujúcich kritérií. Prostredníctvom procesu diskusie a reflexie budete vy a váš tím schopní pochopiť, čo chcete používateľom vášho produktu povoliť a čo zakázať. Keď už máte určitý popis v rukách, musíte ho prekryť na existujúce licencie a vybrať tú, kde sa zhoduje najväčší počet bodov. Znie to samozrejme jednoducho, ale v skutočnosti väčšinou aj po diskusii zostávajú otázky.
Najprv odkaz na selectalicense.com, užitočná stránka, ktorú sme hojne využívali. Venujte zvláštnu pozornosť porovnávacia tabuľka licencie podľa 13 hlavných kritérií. Nech vás sprevádza angličtina a trpezlivosť.
Voľba múky
Začnime všeobecnou charakteristikou licencií pre slobodný softvér. Open source softvér zahŕňa výlučne bezplatnú licenciu, ktorá neobmedzuje komerčnú a nekomerčnú distribúciu podľa vzoru Otvorte jadro. Uvedenie softvéru do siete na základe bezplatnej licencie teda nemôže úplne obmedziť jeho prenos, distribúciu a predaj tretími stranami a musíte byť na to mentálne pripravený.
Bezplatná licencia dáva používateľovi právo podieľať sa na spätnom inžinierstve softvéru alebo ho meniť inými dostupnými spôsobmi. Väčšina licencií vám neumožňuje premenovať produkt alebo s ním vykonávať akékoľvek manipulácie, čím sa menia práva autora a/alebo vlastníka systému.
Hlavné otázky, ktoré nás zaujímali o bezplatných licenciách, boli:
Mali by sa zmeny vykonané v softvéri zaznamenávať a nemali by sa vzťahovať na držiteľa autorských práv systému?
Nemal by byť názov odvodeného softvéru rovnaký ako názov softvéru držiteľa autorských práv?
Je možné zmeniť licenciu pre akékoľvek nové verzie na inú, vrátane proprietárnej?
Po dôkladnom prezretí zoznamu najbežnejších licencií sme vybrali niekoľko, ktoré sme podrobnejšie zvážili. Potenciálne licencie pre IONDV. Rámec boli: GNU GPLv3, Apache 2.0, MIT a MPL. S takmer okamžite vylúčená, ide o permisívnu non-copyleft licenciu, ktorá umožňuje použitie, úpravu a šírenie kódu takmer akýmkoľvek spôsobom, no s touto možnosťou sme neboli spokojní, stále sme chceli, aby licencia upravovala vzťah medzi autorskými právami držiteľa a užívateľa. Väčšina menších projektov na GitHub je publikovaná pod licenciou MIT alebo jej rôznymi variáciami. Samotná licencia je veľmi krátka a jedinými zákazmi je uviesť autorstvo tvorcu softvéru.
Ďalej bola licencia MPL 2.0. Pravdaže, neprišli sme na to hneď, ale po podrobnejšom preštudovaní sme to rýchlo vylúčili, keďže hlavnou nevýhodou je, že licencia sa nevzťahuje na celý projekt, ale na jednotlivé súbory. Okrem toho, ak používateľ zmení súbor, nemôže zmeniť licenciu. V skutočnosti, bez ohľadu na to, ako usilovne zmeníte projekt s otvoreným zdrojovým kódom, nikdy ho nebudete môcť speňažiť kvôli takejto licencii. To sa mimochodom netýka držiteľa autorských práv.
Podobný problém pretrváva aj s licenciou GNU GPLv3. Vyžaduje, aby pod ním zostal akýkoľvek súbor. GNU GPL je copyleft licencia, ktorá vyžaduje, aby odvodené diela boli open source a zostali pod rovnakou licenciou. To znamená: prepísaním dvoch riadkov kódu budete nútení potvrdiť svoje zmeny a pri ďalšom používaní alebo distribúcii uložiť kód pod GNU GPL. V tomto prípade je to limitujúci faktor pre užívateľa nášho projektu, nie pre nás. Ale zmena GPL na akúkoľvek inú licenciu je zakázaná, dokonca aj vo verziách GPL. Napríklad, ak sa zmeníte LGPL (doplnok ku GPL) ku GPL, potom už nebude cesty späť k LGPL. A tento bod bol rozhodujúci pri hlasovaní proti.
Celkovo sa naša voľba spočiatku prikláňala k GPL3 práve kvôli šíreniu upraveného kódu pod rovnakou licenciou. Mysleli sme si, že týmto spôsobom môžeme zabezpečiť náš produkt, ale v Apache 2.0 sme videli menej rizík. Podľa Free Software Foundation je GPLv3 kompatibilná s Apache License v2.0, čo znamená, že vždy je možné zmeniť licenciu z Apache License v2.0 na GPL v3.0.
Apache 2.0
Apache 2.0 — vyvážená permisívna licencia s dôrazom na autorské práva. Tu sú jej odpovede na otázky, ktoré nás zaujímali. Mali by sa zmeny vykonané v softvéri zaznamenávať a nemali by sa vzťahovať na držiteľa autorských práv systému? Áno, všetky zmeny musia byť zdokumentované a nezodpovedáme za pôvodný ani upravený kód. Súbor so zmenami musí byť pripojený ku kódu, v ktorom ste tieto zmeny vykonali. Nemal by byť názov odvodeného softvéru rovnaký ako názov softvéru držiteľa autorských práv? Áno, odvodený softvér by mal byť vydaný pod iným názvom a pod inou ochrannou známkou, ale s uvedením držiteľa autorských práv. Je možné zmeniť licenciu pre akékoľvek nové verzie na inú, vrátane proprietárnej? Áno, môže byť vydaný pod rôznymi licenciami, Apache 2.0 neobmedzuje používanie žiadnych nekomerčných a komerčných licencií.
Taktiež pri vydávaní nových produktov založených na otvorenom zdrojovom kóde pre Apache 2.0 alebo produktov s dodatočnou funkcionalitou nie je potrebné používať rovnakú licenciu. Nižšie vidíte obrázok s podmienkami a obmedzeniami licencie Apache 2.0.
Licencia ukladá požiadavku na zachovanie a uvedenie autorských práv a licencie, na základe ktorej je softvér uvoľnený. Povinná dostupnosť oznámenie o autorských právach s menom držiteľa autorských práv a licenciou chráni práva pôvodného autora softvéru, pretože aj keď je softvér premenovaný, darovaný alebo predaný pod inou licenciou, značka autora zostane zachovaná. Na to môžete použiť aj súbor UPOZORNENIE a priložte ho buď k zdrojovému kódu alebo k projektovej dokumentácii.
Všetky naše produkty verejne dostupné na GitHub vydávame pod licenciou Apache 2.0, okrem IONDV. Vojnový archív, ktorého zdrojový kód bol zverejnený pod licenciou GPLv3 na GitHub v apríli tohto roku Far Eastern Center for Social Technologies. V súčasnosti sa okrem rámec a modulov publikovaný aplikácie vyrobené na ráme. Na hube, o ktorej sme už hovorili Systém riadenia projektov a asi Komunikačný register.
Tie. podrobnosti o rámci
IONDV. Framework je open source framework založený na node.js na vytváranie webových aplikácií na vysokej úrovni založených na metadátach, ktoré si nevyžadujú vážne programátorské znalosti.
Základom funkcionality aplikácie je register údajov - modul Register. Ide o kľúčový modul určený priamo pre prácu s dátami na báze metadátových štruktúr - vrátane správy projektov, programov, podujatí a pod. Projekt využíva aj portálový modul na zobrazovanie ľubovoľných dátových šablón - implementuje predný register archívu.
MongoDb sa používa pre DBMS - ukladá nastavenia aplikácie, metadáta a samotné údaje.
Ako uplatniť licenciu na svoj projekt?
Pridajte súbor LICENCIE s textom licencie v úložisku vášho projektu a voilà, projekt chránený Apache 2.0. Musíte uviesť držiteľa autorských práv, to je všetko upozornenie o autorských právach. Dá sa to urobiť v zdrojovom kóde alebo v súbore UPOZORNENIE (textový súbor so zoznamom všetkých knižníc licencovaných pod licenciou Apache spolu s menami ich tvorcov). Umiestnite samotný súbor buď do zdrojového kódu alebo do dokumentácie distribuovanej spolu s dielom. U nás to vyzerá takto:
„Licencia“ znamená podmienky používania, reprodukcie,
a distribúcia, ako je definované v oddieloch 1 až 9 tohto dokumentu.
„Poskytovateľ licencie“ znamená vlastníka autorských práv alebo subjekt poverený
vlastník autorských práv, ktorý udeľuje licenciu.
„Právnická osoba“ znamená spojenie konajúcej osoby a všetkých
iné subjekty, ktoré kontrolujú, sú nimi kontrolované alebo sú spoločné
kontrolu s týmto subjektom. Na účely tejto definície
„kontrola“ znamená (i) priamu alebo nepriamu moc spôsobiť
vedenie alebo vedenie tohto subjektu, či už na základe zmluvy alebo
inak, alebo (ii) vlastníctvo najmenej päťdesiatich percent (50%) z
nesplatené akcie alebo (iii) skutočné vlastníctvo takéhoto subjektu.
„Vy“ (alebo „Vaše“) znamená fyzickú osobu alebo právnickú osobu
vykonávanie povolení udelených touto licenciou.
„Zdrojový“ formulár znamená preferovaný formulár na vykonávanie úprav,
vrátane, nie však výlučne, zdrojového kódu softvéru, dokumentácie
zdrojové a konfiguračné súbory.
Forma „predmet“ znamená akúkoľvek formu, ktorá je výsledkom mechanického spracovania
transformácia alebo preklad zdrojového formulára vrátane, ale
neobmedzuje sa iba na kompilovaný objektový kód, vygenerovanú dokumentáciu,
a konverzie na iné typy médií.
„Dielo“ znamená autorské dielo, či už v Zdroji alebo
Formulár objektu, sprístupnený na základe licencie, ako je označený písmenom a
poznámka o autorských právach, ktorá je súčasťou alebo pripojená k dielu
(príklad je uvedený v prílohe).
„Odvodené diela“ znamenajú akékoľvek dielo, či už v Zdroji alebo Objekte
forma, ktorá je založená na (alebo z nich odvodenej) Diele a pre ktorú
redakčné úpravy, anotácie, spracovanie alebo iné úpravy
predstavuje ako celok originálne autorské dielo. Na účely
tejto licencie nebudú odvodené diela zahŕňať zostávajúce diela
oddeliteľné od, alebo iba odkazovať (alebo viazať menom) na rozhrania,
ich diela a odvodené diela.
„Príspevok“ znamená akékoľvek autorské dielo, vrátane
pôvodná verzia Diela a všetky úpravy alebo doplnky
k uvedenému Diu alebo odvodeným dielam, a to zámerne
odovzdané Poskytovateľovi licencie na zaradenie do Diela vlastníkom autorských práv
alebo fyzická alebo právnická osoba oprávnená predložiť v mene
vlastníkom autorských práv. Na účely tejto definície „predložené“
znamená akúkoľvek formu zaslanej elektronickej, verbálnej alebo písomnej komunikácie
poskytovateľovi licencie alebo jeho zástupcom, okrem iného vrátane
komunikácia na elektronických konferenciách, systémy riadenia zdrojových kódov,
a systémy sledovania problémov, ktoré sú spravované organizáciou
Poskytovateľ licencie za účelom diskusie a vylepšenia diela, ale
okrem komunikácie, ktorá je viditeľne označená alebo inak
písomne označené vlastníkom autorských práv ako „Nie je príspevok“.
„Prispievateľ“ znamená poskytovateľa licencie a akúkoľvek fyzickú alebo právnickú osobu
v mene ktorého získal Príspevok Poskytovateľ licencie a
následne začlenené do Diela.
Udelenie licencie na autorské práva. V súlade so zmluvnými podmienkami
tejto licencie vám každý prispievateľ týmto udeľuje trvalé,
celosvetový, nevýhradný, bezplatný, bez licenčných poplatkov, neodvolateľný
autorská licencia na reprodukciu, prípravu odvodených diel,
verejne zobrazovať, verejne vykonávať, sublicencovať a distribuovať
Dielo a takéto odvodené diela vo forme zdroja alebo objektu.
Udelenie patentovej licencie. V súlade so zmluvnými podmienkami
tejto licencie vám každý prispievateľ týmto udeľuje trvalé,
celosvetový, nevýhradný, bezplatný, bez licenčných poplatkov, neodvolateľný
(pokiaľ nie je uvedené v tejto časti) patentová licencia na výrobu, výrobu,
používať, ponúkať na predaj, predávať, dovážať a inak prevádzať Dielo,
kde sa takáto licencia vzťahuje iba na tie patentové nároky, ktoré možno licencovať
takým prispievateľom, ktoré sú nevyhnutne porušené ich
Samotné príspevky alebo ich kombinácie
s Dielom, na ktoré sa takýto Príspevok (príspevky) predložili. Ak ty
začať patentové spory proti akýmkoľvek subjektom (vrátane a
vzájomný nárok alebo vzájomný nárok v súdnom spore), v ktorom sa tvrdí, že dielo
alebo Príspevok začlenený do Diela predstavuje priamy príspevok
alebo prispievajúce porušenie patentu, potom akékoľvek patentové licencie
udelené na základe tejto licencie pre dané Dielo, bude ukončené
ku dňu podania takéhoto sporu.
prerozdeľovanie. Môžete reprodukovať a distribuovať kópie
Práce alebo odvodené diela z nich v akomkoľvek médiu, s alebo bez
úpravách a vo forme zdroja alebo objektu, ak ste
splniť nasledujúce podmienky:
(a) Musíte dať akýmkoľvek ďalším príjemcom Diela alebo
Odvodené dielo - kópia tejto licencie; a
(b) Musíte upraviť, aby všetky upravené súbory niesli zreteľné oznámenia
vyhlásenie, že ste zmenili súbory; a
(d) Ak Dielo obsahuje ako súčasť textový súbor „OZNÁMENIE“.
distribúcia, potom musia byť odvodené diela, ktoré distribuujete
zahrnúť čitateľnú kópiu obsiahnutých oznámení o priradení
v takomto súbore NOTICE, s výnimkou tých, ktoré tak nerobia
sa týkajú akejkoľvek časti odvodených diel, najmenej v jednej
z nasledujúcich miest: v rámci distribuovaného textového súboru NOTICE
ako súčasť odvodených diel; v rámci formulára Zdroj alebo
dokumentácia, ak je poskytnutá spolu s odvodenými prácami; alebo
v rámci obrazovky generovanej odvodenými prácami, ak a
všade, kde sa takéto oznámenia tretích strán bežne vyskytujú. Obsah
súboru NOTICE slúžia iba na informačné účely a
nemeňte licenciu. Môžete pridať svoje vlastné uvedenie zdroja
oznámenia v rámci odvodených diel, ktoré distribuujete
alebo ako dodatok k textu OZNÁMENIA z Diela, za predpokladu
že takéto ďalšie oznámenia o pripísaní nemožno vykladať
ako úprava Licencie.
K svojim úpravám a môžete pridať svoje vlastné vyhlásenie o autorských právach
môže poskytnúť ďalšie alebo odlišné licenčné podmienky
na použitie, reprodukciu alebo distribúciu vašich úprav alebo
pre akékoľvek také odvodené diela ako celok, za predpokladu, že ich použijete,
rozmnožovanie a distribúcia Diela inak vyhovuje
podmienky uvedené v tejto licencii.
Predkladanie príspevkov. Pokiaľ výslovne neuvediete inak,
akýkoľvek Príspevok zámerne odoslaný na zaradenie do Diela
poskytovateľom licencie sa riadite zmluvnými podmienkami spoločnosti
tejto licencie, bez akýchkoľvek ďalších podmienok alebo podmienok.
Bez ohľadu na vyššie uvedené, nič v tomto dokumente nesmie byť nahradené alebo upravené
podmienky akejkoľvek samostatnej licenčnej zmluvy, ktorú ste podpísali
ohľadom týchto Príspevkov s Poskytovateľom licencie.
Ochranné známky. Táto licencia neudeľuje povolenie na používanie obchodu
názvy, ochranné známky, servisné značky alebo názvy produktov poskytovateľa licencie,
okrem prípadov, keď je to potrebné na rozumné a obvyklé použitie pri opise
pôvod Diela a reprodukcia obsahu súboru NOTICE.
Vylúčenie záruky. Pokiaľ to nevyžaduje platný zákon resp
s písomným súhlasom, Poskytovateľ licencie poskytuje Dielo (a každé z nich
Prispievateľ poskytuje svoje príspevky) NA ZÁKLADE „AKO SÚ“,
BEZ ZÁRUK ALEBO PODMIENOK AKÉHOKOĽVEK DRUHU, či už výslovných, alebo
implikované, vrátane, bez obmedzenia, akýchkoľvek záruk alebo podmienok
NÁZOVU, NEPORUŠOVANIA PREDPISOV, PREDAJNOSTI alebo VHODNOSTI PRE A
KONKRÉTNY ÚČEL. Ste výhradne zodpovední za určenie
vhodnosť použitia alebo prerozdelenia Diela a akékoľvek predpokladať
riziká spojené s vašim výkonom povolení podľa tejto licencie.
Obmedzenie zodpovednosti. V žiadnom prípade a podľa žiadnej právnej teórie,
v prípade deliktu (vrátane nedbanlivosti), zmluvy alebo iného dôvodu,
pokiaľ to nevyžadujú príslušné zákony (napríklad zámerné a hrubé
z nedbanlivosti) alebo písomne dohodnuté, bude každý prispievateľ
zodpovedá vám za škody, vrátane akýchkoľvek priamych, nepriamych, zvláštnych,
náhodné alebo následné škody akejkoľvek povahy, ktoré vzniknú ako a
výsledkom tejto licencie alebo z dôvodu používania alebo nemožnosti použitia
Práca (vrátane (ale nielen) škôd za stratu dobrého mena,
prerušenie práce, porucha alebo porucha počítača alebo akékoľvek iné
iné komerčné škody alebo straty), aj keď je tento prispievateľ
bol poučený o možnosti takýchto škôd.
Prijatie záruky alebo dodatočnej zodpovednosti. Pri prerozdeľovaní
Dielo alebo dielo z neho odvodené, môžete sa rozhodnúť ponúknuť,
a účtovať poplatok za prijatie podpory, záruku, náhradu škody,
alebo iné zodpovednostné povinnosti a / alebo práva v súlade s týmto
Licencia. Prijatím týchto záväzkov však môžete konať iba vy
vo vašom vlastnom mene a na vašu výlučnú zodpovednosť, nie v mene
ktoréhokoľvek iného prispievateľa a iba ak súhlasíte s odškodnením,
brániť a udržiavať každého prispievateľa neškodným v prípade akejkoľvek zodpovednosti
vzniknuté takýmto prispievateľom z dôvodu alebo nároky, ktoré sú voči nim uplatnené
vášho prijatia akejkoľvek takejto záruky alebo ďalšej zodpovednosti.
KONIEC PODMIENOK
DODATOK: Ako použiť licenciu Apache na svoju prácu.
Ak chcete na svoju prácu použiť licenciu Apache, priložte nasledovné
štandardný oznam s poliami uzavretými v zátvorkách "[]"
nahradiť vlastnými identifikačnými údajmi. (Nezahŕňajte
v zátvorkách!) Text by mal byť priložený príslušným spôsobom
syntax komentára pre formát súboru. Odporúčame tiež, aby a
názov súboru alebo triedy a popis účelu sú uvedené na serveri
rovnakú „vytlačenú stranu“ ako oznámenie o autorských právach
identifikácia v archívoch tretích strán.
Autorské práva [rrrr] [meno vlastníka autorských práv]
Licencované na základe licencie Apache, verzia 2.0 (ďalej len „licencia“);
tento súbor nesmiete použiť, iba ak to je v súlade s licenciou.
Kópiu licencie môžete získať na adrese
Softvér, pokiaľ to nevyžaduje platný zákon alebo písomne dohodnuté
distribuovaný na základe licencie sa distribuuje „TAK, AKO JE“,
BEZ ZÁRUK ALEBO PODMIENOK AKÉHOKOĽVEK DRUHU, či už výslovných alebo implicitných.
Konkrétny jazyk upravujúci povolenia nájdete v licencii
obmedzenia podľa Licencie.
Licencia = zmluva
Bezplatná licencia, hoci je bezplatná, neumožňuje tolerantnosť a príklady obmedzení sme už uviedli. Vyberte si licenciu s ohľadom na vaše záujmy a záujmy používateľa, pretože softvér s otvoreným zdrojovým kódom je navrhnutý špeciálne pre neho. Používateľ projektu by mal licenciu vnímať ako akúsi dohodu medzi ním a držiteľom autorských práv, preto si pred vykonaním akýchkoľvek úkonov na zdrojovom kóde dôkladne preštudujte obmedzenia, ktoré vám ukladá licencia projektu.
Dúfame, že sme do témy licencií vniesli trochu svetla a napriek zložitosti problematiky by sa nemala stať prekážkou na vašej ceste k Open Source. Rozvíjajte svoj projekt a nezabúdajte na práva, vaše a iné.
Užitočné odkazy
Na záver niekoľko užitočných zdrojov, ktoré nám pomohli pri hľadaní informácií o existujúcich licenciách a výbere tej najvhodnejšej pre naše účely: