ProHoster > Blogi > Haldamine > Kuidas valida GitHubi RAD-raamistiku jaoks avatud lähtekoodiga litsentsi
Kuidas valida GitHubi RAD-raamistiku jaoks avatud lähtekoodiga litsentsi
Selles artiklis räägime veidi autoriõigustest, kuid peamiselt RAD-raamistiku jaoks tasuta litsentsi valimisest IONDV. Raamistik ja sellel põhinevate avatud lähtekoodiga toodete jaoks. Me räägime teile loa litsentsist Apache 2.0, mis meid selleni viis ja milliste otsustega me selle käigus silmitsi seisime.
Litsentsi valimise protsess on üsna töömahukas ja sellele tuleks läheneda juba loetuna ning kui te pole just õnnelik õigushariduse omanik, siis avaneb teie ees kuni täielik infoväli erinevate tasuta litsentside kohta. Peamine asi, mida teha, on koostada mitmeid piiravaid kriteeriume. Arutelu ja järelemõtlemise käigus saate teie ja teie meeskond aru, mida soovite oma toote kasutajatele lubada ja mida keelata. Kui teil on juba kindel kirjeldus käes, peate selle olemasolevatele litsentsidele üle kandma ja valima selle, millel langeb kokku suurim arv punkte. See kõlab muidugi lihtsalt, kuid tegelikkuses, tavaliselt ka pärast arutelu, jäävad küsimused alles.
Esiteks link aadressile selectalicense.com, kasulik sait, mida kasutasime laialdaselt. Pöörake erilist tähelepanu võrdlustabel litsentsid vastavalt 13 põhikriteeriumile. Olgu teiega inglise keel ja kannatlikkus.
Valik jahu
Alustame litsentside üldistest funktsioonidest tasuta tarkvara. Avatud lähtekoodiga tarkvara eeldab eranditult tasuta litsentsi, mis ei piira kaubanduslikku ja mitteärilist levitamist vastavalt mudelile Ava Core. Sellest tulenevalt ei saa tarkvara tasuta litsentsi alusel võrku panemine täielikult piirata selle edastamist, levitamist ja müüki kolmandate osapoolte poolt ning selleks peate lihtsalt vaimselt valmis olema.
Tasuta litsents annab kasutajale õiguse osaleda tarkvara pöördprojekteerimises või muuta seda muul võimalikul viisil. Enamik litsentse ei luba teil toodet ümber nimetada ega sellega manipuleerida, muutes süsteemi autori ja/või omaniku õigusi.
Peamised küsimused, mis meid tasuta litsentside kohta huvitasid, olid:
Kas tarkvaras tehtud muudatused tuleks salvestada ja need ei tohiks olla seotud süsteemi autoriõiguste omanikuga?
Kas tuletatud tarkvara nimi ei peaks olema sama, mis autoriõiguse omaniku tarkvara nimi?
Kas uute versioonide litsentsi on võimalik vahetada mõne teise, sealhulgas patenteeritud versiooni vastu?
Olles hoolikalt uurinud kõige levinumate litsentside loendit, valisime välja mitu, mida kaalusime üksikasjalikumalt. Potentsiaalsed litsentsid IONDV. Raamistik olid: GNU GPLv3, Apache 2.0, MIT ja MPL. MIT peaaegu kohe välistatud, see on lubav mitte-copyleft litsents, mis lubab koodi peaaegu igal viisil kasutada, muuta ja levitada, kuid me ei olnud selle võimalusega rahul, soovisime siiski, et litsents reguleeriks autoriõiguste vahelist suhet. hoidja ja kasutaja. Enamik väiksemaid GitHubi projekte avaldatakse MIT-i litsentsi või selle erinevate variatsioonide all. Litsents ise on väga lühike ja ainsad keelud on näidata tarkvara looja autorsust.
Järgmine oli litsents mpl 2.0. Tõsi, me ei jõudnud selleni kohe, kuid pärast põhjalikumat uurimist välistasime selle kiiresti, kuna peamine puudus on see, et litsents ei kehti kogu projektile, vaid üksikutele failidele. Lisaks, kui kasutaja muudab faili, ei saa ta litsentsi muuta. Tegelikult, hoolimata sellest, kui usinalt te avatud lähtekoodiga projekti muudate, ei saa te seda sellise litsentsi tõttu kunagi raha teenida. Muide, see ei puuduta autoriõiguste valdajat.
Sarnane probleem püsib ka litsentsiga GNU GPLv3. See nõuab, et kõik failid jääksid selle alla. GNU GPL on copyleft litsents, mis nõuab, et tuletistööd oleksid avatud lähtekoodiga ja jääksid sama litsentsi alla. See tähendab: kahe koodirea ümberkirjutamisel olete sunnitud oma muudatused sisse viima ja edasise kasutamise või levitamise ajal salvestama koodi GNU GPL-i alla. Sel juhul on see piirav tegur meie projekti kasutajale, mitte meile. Kuid GPL-i muutmine mis tahes muuks litsentsiks on keelatud, isegi GPL-i versioonides. Näiteks kui muudate LGPL (GPL-i lisand) GPL-ile, siis pole LGPL-i tagasiteed. Ja see punkt sai otsustavaks selle vastu hääletamisel.
Üldiselt kaldus meie valik alguses selle poole GPL3 just seetõttu, et muudetud koodi levitatakse sama litsentsi all. Arvasime, et nii saame oma toote turvalisemaks muuta, kuid nägime Apache 2.0 puhul vähem riske. Free Software Foundationi andmetel ühildub GPLv3 Apache License v2.0-ga, mis tähendab, et Apache License v2.0 litsentsi on alati võimalik muuta GPL v3.0-ks.
Apache 2.0
Apache 2.0 — tasakaalustatud lubav litsents, rõhuasetusega autoriõigusele. Siin on vastused küsimustele, mis meid huvitasid. Kas tarkvaras tehtud muudatused tuleks salvestada ja need ei tohiks olla seotud süsteemi autoriõiguste omanikuga? Jah, kõik muudatused peavad olema dokumenteeritud ja me ei vastuta algse ega muudetud koodi eest. Muudatustega fail tuleb lisada koodile, milles need muudatused tegite. Kas tuletatud tarkvara nimi ei peaks olema sama, mis autoriõiguse omaniku tarkvara nimi? Jah, tuletatud tarkvara tuleks välja anda teise nime ja teise kaubamärgi all, kuid koos viitega autoriõiguste omanikule. Kas uute versioonide litsentsi on võimalik vahetada mõne teise, sealhulgas patenteeritud versiooni vastu? Jah, seda saab välja anda erinevate litsentside alusel, Apache 2.0 ei piira mitteäriliste ja kommertslitsentside kasutamist.
Samuti ei ole Apache 2.0 jaoks avatud lähtekoodil põhinevate uute toodete või lisafunktsionaalsusega toodete väljalaskmisel vaja sama litsentsi kasutada. Allpool näete pilti Apache 2.0 litsentsi tingimuste ja piirangutega.
Litsents seab nõude säilitada ja mainida autoriõigusi ja litsentsi, mille alusel tarkvara välja antakse. Kohustuslik kättesaadavus autoriõiguse teatis autoriõiguse omaniku nimega ja litsents kaitseb tarkvara algse autori õigusi, sest isegi kui see ümbernimetatakse, kinkitakse või müüakse teise litsentsi alusel, jääb autori märk ikkagi alles. Selleks saate kasutada ka faili TEADE ja lisage see kas lähtekoodile või projekti dokumentatsioonile.
Avaldame kõik meie tooted, mis on GitHubis Apache 2.0 litsentsi alusel avalikult saadaval, v.a IONDV. Sõja arhiiv, mille lähtekoodi avaldas Kaug-Ida sotsiaaltehnoloogiate keskus selle aasta aprillis GitHubis GPLv3 litsentsi all. Hetkel on lisaks raamistik ja moodulid avaldatud rakendused tehtud karkassil. Keskuses, millest me juba rääkisime Projektijuhtimissüsteem ja umbes Sideregister.
Need. üksikasjad raamistiku kohta
IONDV. Framework on node.js-l põhinev avatud lähtekoodiga raamistik kõrgetasemeliste metaandmetel põhinevate veebirakenduste loomiseks, mis ei nõua tõsiseid programmeerimisoskusi.
Rakenduse funktsionaalsuse aluseks on andmeregister - Registrimoodul. See on võtmemoodul, mis on loodud otse metaandmestruktuuridel põhinevate andmetega töötamiseks – sh projektide, programmide, sündmuste jms haldamiseks. Projektis kasutatakse ka portaali moodulit suvaliste andmemallide kuvamiseks – see juurutab arhiivi esiregistri.
DBMS-i jaoks kasutatakse MongoDb-d – see salvestab rakenduse sätted, metaandmed ja andmed ise.
Kuidas oma projektile litsentsi taotleda?
Lisage fail LITSENTSI litsentsi tekstiga teie projekti hoidlas ja voilà, Apache 2.0-ga kaitstud projekt. Peate märkima autoriõiguse omaniku, see on kõik autoriõiguse teatis. Seda saab teha lähtekoodis või failis TEADE (tekstifail, milles on loetletud kõik Apache litsentsi alusel litsentsitud raamatukogud koos nende loojate nimedega). Asetage fail ise kas lähtekoodi või koos tööga levitatavasse dokumentatsiooni. Meie jaoks näeb see välja selline:
KASUTAMISE, TAASKASUTAMISE JA LEVITAMISE TINGIMUSED
Mõisted.
"Litsents" tähendab kasutamise, reprodutseerimise,
ja levitamine, nagu on määratletud käesoleva dokumendi 1. – 9.
"Litsentsiandja" tähendab autoriõiguse omanikku või volitatud üksust
autoriõiguste omanik, kes annab litsentsi.
"Juriidiline isik" tähendab tegutseva üksuse ja kõige muu liitu
muud üksused, mis kontrollivad, on tema kontrolli all või on ühise kontrolli all
kontrolli selle üksusega. Selle määratluse tähenduses
"kontroll" tähendab (i) otsest või kaudset jõudu, mis põhjustab
sellise üksuse juhtimine või juhtimine, kas lepinguga või
muul juhul või (ii) viiekümne protsendi (50%) või suurema osaluse omamine
(iii) sellise üksuse tegelikud omanikud.
"Teie" (või "Teie") tähendab füüsilist või juriidilist isikut
käesoleva litsentsiga antud õiguste kasutamine.
"Allikas" tähendab eelistatud vormi muudatuste tegemiseks,
sh tarkvara lähtekood, dokumentatsioon, kuid mitte ainult
lähte- ja konfiguratsioonifailid.
Objekti vorm tähendab mehaaniliselt saadud mis tahes vormi
Allika vormi teisendamine või tõlkimine, sh
mitte ainult kompileeritud objektikood, loodud dokumentatsioon,
ja teisendused muudele meediumitüüpidele.
"Teos" tähendab autoriteost, olgu siis allikas või
Objekti vorm, mis on kättesaadav litsentsi alusel, millele viitab a
autoriõiguse teade, mis on teosesse lisatud või lisatud
(näide on toodud allolevas lisas).
"Tuletatud teosed" tähendab mis tahes teost, olgu siis allikas või objektis
vorm, mis põhineb teosel (või on sellest tuletatud) ja mille jaoks
toimetuse redaktsioonid, märkused, täiendused või muud muudatused
esindavad tervikuna originaalset autoriteost. Eesmärkidel
käesoleva litsentsi kohaselt ei hõlma tuletatud teosed allesjäänud teoseid
liideseid eraldada või lihtsalt linkida (või siduda nimega)
teos ja selle tuletatud teosed.
"Kaastöö" tähendab mis tahes autoriteost, sealhulgas
teose algversioon ja kõik muudatused või täiendused
selle teose või selle tuletatud teoste juurde, see tähendab tahtlikult
esitas litsentsiandjale autoriõiguste omanik teosesse lisamiseks
või füüsiline või juriidiline isik, kellel on õigus esitada
autoriõiguse omanik. Selle määratluse tähenduses on „esitatud”
tähendab mis tahes vormis saadetud elektroonilist, suulist või kirjalikku suhtlust
litsentsiandjale või tema esindajatele, sealhulgas, kuid mitte ainult
suhtlemine elektroonilistes meililistides, lähtekoodi juhtimissüsteemides,
ja väljastada jälgimissüsteeme, mida haldab või haldab
Litsentsiandja töö arutamiseks ja täiustamiseks, kuid
välja arvatud silmatorkavalt tähistatud või muul viisil suhtlemine
autoriõiguse omaniku poolt kirjalikult märgitud "ei ole kaastöö".
"Kaasautor" tähendab litsentsiandjat ja mis tahes füüsilist või juriidilist isikut
kelle nimel litsentsiandja on saanud kaastöö ja
hiljem töö sisse lülitatud.
Autoriõiguse litsentsi andmine. Vastavalt tingimustele
käesoleva litsentsi annab iga kaastöötaja teile igavese,
kogu maailmas, mitte ainuõiguslik, tasuta, autoritasuta, tühistamatu
autoriõigusega litsents reprodutseerida, valmistada
avalikult kuvama, avalikult esitama, alllitsentsima ja levitama
Teos ja sellised tuletatud teosed allika või objekti kujul.
Patendilitsentsi andmine. Vastavalt tingimustele
käesoleva litsentsi annab iga kaastöötaja teile igavese,
kogu maailmas, mitte ainuõiguslik, tasuta, autoritasuta, tühistamatu
patendilitsentsi (välja arvatud käesolevas osas märgitu korral)
teost kasutada, müüa, müüa, importida ja muul viisil üle anda,
kui selline litsents kehtib ainult litsentsitavate patendinõuete kohta
sellise Contributori poolt, mida nad tingimata rikuvad
Kaastöö (d) üksi või nende panuse kombinatsioon
tööga, millele selline kaastöö (d) esitati. Kui sa
algatada patendivaidlusi mis tahes üksuste (sealhulgas a
vastuhagi või vastuhagi kohtuasjas), milles väidetakse, et Töö
või teosesse lisatud kaastöö on otsene
või kaasaaitavat patendi rikkumist, siis kõik patendilitsentsid
selle töö jaoks antud litsentsi alusel teile antud teenus lõpeb
sellise kohtuvaidluse esitamise kuupäeva seisuga.
Ümberjagamine. Saate selle koopiaid paljundada ja levitada
Teos või selle tuletatud teosed mis tahes andmekandjas koos või ilma
muudatused ning vormis Allikas või Objekt, tingimusel et teie
vastavad järgmistele tingimustele:
a) Te peate andma teistele teose saajatele või
Tuletis töötab selle litsentsi koopia; ja
(b) Kõik muudetud failid peavad kandma silmapaistvaid märguandeid
teatades, et muutsite faile; ja
(d) Kui teos sisaldab osana tekstifaili „MÄRKUS”.
levitamine, siis peavad kõik levitatavad tööd, mida levitate
lisada loetavate koopiate omistamisteatistest
sellises MÄRKUS-failis, välja arvatud need teated, mis seda ei tee
on seotud vähemalt ühe tuletatud teose osaga
järgmistest kohtadest: levitatud tekstifailis NOTICE
tuletatud teoste osana; vormis Allikas või
dokumentatsioon, kui see on koos tuletatud töödega; või
tuletatud teoste loodud kuvas, kui ja
kus sellised kolmandate isikute teated tavaliselt ilmuvad. Sisu
faili MÄRKUS on ainult informatiivsel eesmärgil ja
ärge muutke litsentsi. Võite lisada oma omistamise
tuletatud teoste teated, mida levitate koos
või lisatud töö TEATIS teksti lisana
et selliseid täiendavaid omistamisteateid ei saa tõlgendada
kui litsentsi muutmine.
Võite oma muudatustele lisada oma autoriõiguse avalduse ja
võib pakkuda täiendavaid või erinevaid litsentsitingimusi
teie modifikatsioonide kasutamiseks, reprodutseerimiseks või levitamiseks või
mis tahes selliste tuletatud teoste jaoks tervikuna, tingimusel et teie
teose reprodutseerimine ja levitamine vastab muidu
käesolevas litsentsis sätestatud tingimustel.
Kaastööde esitamine. Kui te ei ole sõnaselgelt teisiti öelnud,
kõik kaastööd, mis on tahtlikult esitatud töö lisamiseks
mille te litsentsiandjale edastate, tuleb järgida
käesolevat litsentsi, ilma täiendavate tingimusteta.
Vaatamata ülaltoodule ei asenda miski käesolevat dokumenti ega muuda seda
kõigi teie poolt sõlmitud eraldi litsentsilepingute tingimused
selliste panuste kohta litsentsiandjaga.
Kaubamärgid. See litsents ei anna luba kaubanduse kasutamiseks
litsentsiandja nimed, kaubamärgid, teenusemärgid või tootenimed,
välja arvatud juhul, kui see on vajalik mõistliku ja tavapärase kasutamise jaoks
teose päritolu ja faili MÄRKUS sisu reprodutseerimine.
Garantiist loobumine. Kui seda ei nõua kohaldatav seadus või
kirjalikult kokku lepitud, annab Litsentsiandja Teose (ja igaüks
Contributor esitab oma kaastööd) „NAGU ON”,
ILMA GARANTIIDE VÕI TINGIMUSTEGA, KÕIGI VÕIMALIKUD, otsesed või
kaudselt, kaasa arvatud piiranguteta garantiid või tingimused
jaotisest TITLE, rikkumisi, rikkumisi, müümisvõimet või sobivust A-le
Konkreetne eesmärk. Selle määramise eest vastutate ainuisikuliselt
Teose kasutamise või ümberjagamise asjakohasus ja eeldage, et see on olemas
riskid, mis on seotud selle litsentsi alusel teie õiguste kasutamisega.
Vastutuse piirang. Mitte mingil juhul ja õigusteooria alusel
kas delikti (sealhulgas hooletuse), lepingu alusel või muul viisil,
välja arvatud juhul, kui kohaldatav seadus seda nõuab (näiteks tahtlik ja jämedalt
hooletute tegude korral) või kirjalikult kokku lepitud, peab kaastöötaja olema
vastutab teie ees kahjude eest, sealhulgas otsese, kaudse, erilise,
mis tahes laadi juhuslikud või tagajärglikud kahjud, mis tekivad a
selle litsentsi tagajärjel või selle kasutamise või võimetuse tõttu
Töö (sealhulgas, kuid mitte ainult, firmaväärtuse kaotamise,
tööseisak, arvuti rike või talitlushäired või kõik
muud kaubanduslikud kahjud või kahjud), isegi kui selline kaastöötaja
on selliste kahjude võimalikkusest teavitatud.
Garantii või lisavastutuse aktsepteerimine. Ümberjagamise ajal
või selle tuletatud teoseid, võite valida, kas pakkuda
ja võtta tasu toetuse aktsepteerimise, garantii, hüvitise,
või muid sellega vastutavaid kohustusi ja / või õigusi
Litsents. Selliste kohustuste vastuvõtmisel võite aga tegutseda ainult
enda nimel ja ainult teie vastutusel, mitte nimel
mis tahes muu kaastöötaja poolt ja ainult siis, kui nõustute hüvitama,
kaitsta ja hoida iga kaastöötajat vastutustundetuna
sellise Kaasautori poolt põhjustatud või tema vastu esitatud nõuded
sellise garantii või täiendava vastutuse võtmisest.
LÕPP TINGIMUSED
LISA: kuidas Apache'i litsentsi oma tööle rakendada.
Apache'i litsentsi rakendamiseks oma tööle lisage järgmine
katlaplaadi teade, mille väljad on sulgudes "[]"
asendatakse teie enda identifitseerimisandmetega. (Ärge lisage
sulgudes!) Tekst tuleks lisada vastavasse
failivormingu kommentaari süntaks. Samuti soovitame a
faili või klassi nimi ja eesmärgi kirjeldus tuleb lisada
sama "prinditud leht" nagu autoriõiguse teatis, et hõlbustada
identifitseerimine kolmandate isikute arhiivides.
Autoriõigus [aaaa] [autoriõiguste omaniku nimi]
Litsentsitud Apache litsentsi versiooni 2.0 ("Litsents") alusel;
te ei tohi seda faili kasutada, välja arvatud vastavalt litsentsile.
Litsentsi koopia saate hankida aadressil
Tarkvara, kui see pole kohaldatava seadusega nõutud või kirjalikult kokku lepitud
litsentsi alusel levitatud levitatakse "NAGU ON",
ILMA GARANTIIDE VÕI MISTE TINGIMUSTE OSAS, olenemata sellest, kas need on otsesed või kaudsed.
Vaadake litsentsi konkreetsete keelte ja litsentside kohta
litsentsi alusel.
Litsents = leping
Tasuta litsents, kuigi see on tasuta, ei luba lubadust ja oleme juba toonud näiteid piirangutest. Vali litsents nii enda kui ka kasutaja huve arvestades, sest avatud lähtekoodiga tarkvara on loodud just tema jaoks. Projekti kasutaja peaks litsentsi tajuma kui omamoodi lepingut tema ja autoriõiguste omaniku vahel, nii et enne lähtekoodiga seotud toimingute tegemist uurige hoolikalt projekti litsentsiga teile seatud piiranguid.
Loodame, et oleme litsentside teemat veidi valgustanud ja vaatamata probleemi keerukusele ei tohiks see saada takistuseks teie teel avatud lähtekoodiga. Arendage oma projekti ja ärge unustage enda ja teiste õigusi.
Kasulikud lingid
Lõpetuseks mõned kasulikud ressursid, mis aitasid meid olemasolevate litsentside kohta teabe otsimisel ja meie eesmärkide jaoks sobivaima valikul: