Kuidas valida Open Source litsents RAD raamistikule GitHubis.

Selles artiklis rÀÀgime natuke autoriÔigusest, kuid peamiselt RAD raamistikule vabade litsentside valimisest. IONDV. Raamistik ja avatud lÀhtekoodiga toodete kohta selle pÔhjal. RÀÀgime lubava litsentsi kohta, Apache 2.0mis meid selle juurde viis ja milliste lahendustega me protsessi kÀigus kokku puutusime.

Litsentsi valimise protsess on ĂŒsna töömahukas ja sellele tuleks lĂ€heneda juba piisavalt harituna. Kui te ei ole Ă”nnelik seaduse alase hariduse omanik, avaneb teie ees segane informatsiooni vĂ€li erinevate vabade litsentside kohta. PĂ”hiĂŒlesanne on koostada teatud piiravad kriteeriumid. Arutlemise ja mĂ”tlemise kĂ€igus suudate koos meeskonnaga mĂ”ista, mida soovite oma toote kasutajatele lubada ja mida keelata. Kui teil on juba mingisugune kirjeldus, tuleks see kohaldada olemasolevatele litsentsidele ja vĂ€lja selgitada see, millel on kĂ”ige rohkem ĂŒhtivusi. See kĂ”lab loomulikult lihtsasti, kuid reaalne olukord on see, et tavaliselt jÀÀb isegi pĂ€rast arutelu kĂŒsimusi alles.

Kuidas valida Open Source litsents RAD raamistikule GitHubis.

Esmalt — viide choosealicense.com, kasulikule veebisaidile, mida me aktiivselt kasutasime. Erakordselt pöörake tĂ€helepanu vĂ”rdlevale tabelile litsentsidest 13 pĂ”hikriteeriumi alusel. Olgu inglise keel ja kannatlikkus teiega.

Valikute vaev

Alustame vabade litsentside ĂŒldistest tunnustest vaba tarkvara jaoks.Vaba tarkvara eeldab ainul vabade litsentside olemasolu, mis ei piira kaubanduslikku ega mittekaubanduslikku levitamist mudeli alusel Open Core. Vastavalt, jagades Internetis tarkvara vabade litsentside alusel, ei saa tĂ€ielikult piirata selle edastamist, levitamist ja mĂŒĂŒki kolmandate isikute poolt, ning sellega tuleb lihtsalt moraalselt ette valmistuda.

Vaba litsents annab kasutajale Ă”iguse iseseisvalt osaleda tarkvara tagumise arendamise protsessis vĂ”i seda muul viisil muuta. Enamiku litsentside puhul ei lubata toote ĂŒmber nimetada ega kasutada sellega seotud manipulatsioone, muutes autori Ă”igusi ja/vĂ”i sĂŒsteemi omaniku Ă”igusi.

Peamised meid huvitavad kĂŒsimused vabade litsentside kohta olid:

  1. Tarkvaras tehtud muudatused tuleb fikseerida ega ole seotud sĂŒsteemi Ă”iguste omaniku?
  2. Tulevase tarkvara nimi ei tohi kattuda autori tarkvara nimega?
  3. Kas on vÔimalik muuta litsentsi uute versioonide jaoks teiseks, sealhulgas ka omandiÔigusega litsentsiks?

Hoolikalt vaadates kĂ”ige levinumate litsentside loetelu, valisime mĂ”ned, mida kĂ€sitlesime pĂ”hjalikumalt. Potentsiaalsed litsentsid IONDV. Framwork olid: GNU GPLv3, Apache 2.0, MIT ja MPL. MIT praktiliselt kohe vĂ€listasime, see on lubav mitte-kopilife litsents, mis vĂ”imaldab koodi kasutada, muuta ja levitada praktiliselt kuidas iganes, ja see variant ei rahuldanud meid, kuna soovisime, et litsents reguleeriks Ă”iguste omaniku ja kasutaja vahelisi suhteid. Enamik mitte nii suuri projekte GitHubis on vĂ€lja pandud just MIT litsentsi vĂ”i selle erinevate variantide alla. Litsents ise on vĂ€ga lĂŒhike ning keeludest on ainult autoriĂ”iguse sĂ€ilitamine.

JĂ€rgmiseks oli litsents MPL 2.0. Pean tunnistama, et me ei jĂ”udnud selle juurde kohe, kuid uurides lĂ€hemalt vĂ€listasime selle kiiresti, kuna peamine puudus on see, et litsents kehtib mitte kogu projekti, vaid ĂŒksikute failide kohta. Lisaks, kui kasutaja muudab faili, ei saa ta litsentsi muuta. Tegelikult, kui sa kui hoolikalt ei muudaks avatud lĂ€htekoodiga projekti, ei saa sa seda litsentsi tĂ”ttu monetiseerida. See, muide, ei kehti Ă”iguste omaniku kohta.

Sarnane probleem pĂŒsib ka litsentsil GNU GPLv3. See nĂ”uab, et iga fail pĂŒsiks selle litsentsi all. GNU GPL on kopilife litsents, mis nĂ”uab, et tuletatud tööde lĂ€htekoodid oleksid avatud ja jÀÀksid selle sama litsentsi alla. See tĂ€hendab: kui kirjutad ĂŒle kaks rida koodi, pead oma muudatused registreerima ja edasise kasutamise vĂ”i levitamise korral hoidma koodi GNU GPL all. Antud juhul on see piirav tegur meie projekti kasutajale, mitte meile. Kuid GPL-i muutmine mĂ”nele teisele litsentsile on keelatud, isegi GPL-i versioonide vahel. NĂ€iteks, kui muuta LGPL (GPL-i laiendus) GPL-iks, siis tagasi teed LGPL-ile juba ei ole. Ja see punkt oli otsustav hÀÀletamisel vastu.

KokkuvÔttes kaldus meie valik esialgu GPL3 just because of the distribution of modified code under the same license. We thought that this way we could secure our product, but we saw fewer risks in Apache 2.0. According to the Free Software Foundation, GPLv3 is compatible with Apache License v2.0, which means there is always the option to change the license from Apache License v2.0 to GPL v3.0.

Apache 2.0

Apache 2.0 — a balanced permissive license with a focus on copyright. Here are the answers it provided to our questions. Should changes to the software be documented and have no relation to the rights holder of the system? Yes, all changes must be documented, and we are not responsible for either the original or modified code. A file with changes must be attached to the code where you made those changes. Should the name of the derivative software not match the name of the rights holder's software? Yes, the derivative software should be released under a different name and trademark, but with the attribution of the rights holder. Is it possible to change the license for any new versions to another, including a proprietary one? Yes, it is permissible to release under different licenses; Apache 2.0 does not restrict the use of any non-commercial and commercial licenses.

Additionally, when releasing new products based on Apache 2.0 licensed code or products with additional functionality, it is not mandatory to use the same license. Below you can see an image with the terms and conditions of the Apache 2.0 license.

Kuidas valida Open Source litsents RAD raamistikule GitHubis.

The license imposes a requirement to retain and mention the copyrights and the license under which the software is released. Mandatory presence of copyright notice with the name of the rights holder and the license protects the rights of the original author of the software, as even if it is renamed, given away, or sold under another license, the author's signature will still remain. For this, a file called NOTICE can also be used and attached either to the source code or to the project's documentation.

We release all our products as open source on GitHub under the Apache 2.0 license, except for IONDV. War archive, the source code of which was published in April of this year under the GPLv3 license on GitHub by the Far Eastern Center for Social Technologies. Currently, besides the actual GNUnet raamistikust ja selle mooduleid avaldatud rakenduse done on the framework. We have already talked about it on Habr. Project Management System and about Side registrite.

Tehnilised ĂŒksikasjad raamistiku kohta

IONDV. Raamistik – avatud lĂ€htekoodiga raamistik node.js-il, et luua kĂ”rgetasemelisi veebirakendusi metaandmete alusel, mis ei nĂ”ua tĂ”siseid programmeerimisoskusi.

Rakenduse funktsionaalsuse aluseks on andmeregister – Registri moodul. See on peamine moodul, mis on otseselt mĂ”eldud töötamiseks andmetega, tuginedes metaandmete struktuuridele – sealhulgas projektide, programmide, ĂŒrituste jms haldamiseks. Samuti kasutatakse projektis portaali moodulit, et kuvada ĂŒkskĂ”ik milliseid andmete malle – sellel on rakendatud arhiivi toimingute registri esileht.

Andmebaasina kasutatakse MongoDb-d – selles hoitakse rakenduse seadeid, metaandmeid ja ise andmeid.

Kuidas rakendada litsentsi oma projektile?

Lisage fail LICENSE litsentsitekstiga oma projekti hoidlasse ja voilà, projekt on kaitstud Apache 2.0 all. Tuleb mÀrkida Ôiguste omanik, see on copyright notice. Seda saab teha kas lÀhtekoodis vÔi failis NOTICE (tekstifail, kus loetletakse kÔik Apache litsentsi alusel litsentseeritud teegid koos nende autorite nimedega). Fail tuleb asetada kas lÀhtekoodi vÔi dokumentatsiooni, mis levitatakse koos tööga. Meil nÀeb see vÀlja nii:

Copyright © 2018 OÜ «ION DV».
Kaitstud Apache litsentsi, versioon 2.0

Apache litsentsi tekst 2.0

Apache License
Versioon 2.0, jaanuar 2004
http://www.apache.org/licenses/

KASUTAMISE, TAASTAMISE JA JAOTUSE TINGIMUSED

  1. MÔisted.

    «Litsents» tÀhendab kÀesolevas dokumendis mÀÀratletud kasutamise, taastamise ja jaotamise tingimusi ja nÔudeid,
    nagu on mÀÀratletud kÀesoleva dokumendi lÔigetes 1 kuni 9.

    «Litsentsiandja» tÀhendab autoriÔiguse omaniku vÔi autoriÔiguse omaniku volitatud isiku,
    kes annab litsentsi.

    «Juriidiline isik» tĂ€hendab tegutseva isiku ja kĂ”igi muude isikute ĂŒhendust,
    kes kontrollivad, kelle all on kontroll vÔi kes on selle isiku all.
    Selle mÀÀratlemise eesmÀrgil tÀhendab «kontroll» (i) vÔimet, otseselt vÔi kaudselt, suunata selle isiku
    suunamist vĂ”i juhtimist, kas lepinguga vĂ”i muul viisil, vĂ”i (ii) viiekĂŒmne protsendi (50%) vĂ”i rohkem kui
    ĂŒle vĂ€ljakuulutatud aktsiate omamist, vĂ”i (iii) kasu omamist selle isiku suhtes.
    «Teie» (vÔi «Teie») tÀhendab individuaalset isikut vÔi juriidilist isikut,
    kes kasutavad selle litsentsi antud Ôigusi.

    «Allikas» tÀhendab eelistatud vormi muudatuste tegemiseks,
    sealhulgas, kuid mitte piiratud tarkvara lÀhtekoodiga, dokumentatsiooni

    allikaga ja seadistusfailidega.
    «Objekt» tÀhendab mis tahes vormi, mis tuleneb mehhaanilisest
    muundamisest vÔi tÔlkimisest, sealhulgas, kuid mitte piiratud, koostatud objekti koodiga, genereeritud dokumentatsiooniga,

    ja muundamistega teistesse meedianormidesse.
    «Töö» tÀhendab autoriÔiguse teost, olenemata Allika vÔi
    Objekti vormist, mis on litsentsi alusel saadaval ja millel on autoriÔiguse teatise nÀidis,
    mis on lisatud vÔi sellele teosele kinnitatud (nÀidis on esitatud allolevas lisas).

    «Tuletatud teosed» tÀhendavad mis tahes tööd, olenemata Allika vÔi Objekti
    vormist, mis pÔhineb (vÔi tuleneb) Töö ja mille suhtes
    kui selle pÔhjal on mÀÀratletud.
    (nÀide on esitatud allolevas lisas).

    «Loodud Teosed» tÀhistavad igasugust teost, olgu see siis Allika- vÔi Objekti vormis,
    mis pÔhineb (vÔi tuleneb) Teosest ning mille
    toimetusredaktsioonid, mÀrkused, seletused vÔi muud muudatused
    esindavad tervikuna originaalloomingut. Selle Litsentsi mÔttes
    ei hÔlma tuletised tööd, mis jÀÀvad
    eraldatuks vÔi lihtsalt lingivad (vÔi seovad nime kaudu) tööde liideste juurde,
    ja nende tuletiste tööde juurde.

    «Panus» tÀhendab igasugust autoriÔiguse teost, sealhulgas
    originaalversiooni tööst ja mistahes muudatusi vÔi lisandeid
    sellele tööle vÔi tuletistele, mida on teadlikult
    esitatud litsentsile andjale, et lisada see tööle autorite poolt
    vÔi isiku vÔi juriidilise isiku poolt, kellel on volitus esitada autoriÔiguse
    omaniku nimel. Selle mÀÀratlemise eesmÀrkidel tÀhendab «esitatud»
    kÔik vormid elektroonilisest, suulisest vÔi kirjalikust suhtlusest, mis on saadetud
    litsentsile andjale vÔi tema esindajatele, sealhulgas, kuid mitte ainult,
    suhtlus elektroonilistes postilistides, allika koodide haldamise sĂŒsteemides,
    ja probleemide jĂ€lgimise sĂŒsteemides, mida haldab vĂ”i haldava isiku eest,
    litsentsi andja, et arutada ja parandada tööd, kuid
    vÀlja arvatud suhtlus, mis on silmatorkavalt mÀrgitud vÔi muul viisil
    autoriÔiguse omaniku poolt kirjalikult mÀÀratletud kui «Ei ole panus».

    «Panustaja» tÀhendab litsentsi andjat ja igasugust isikut vÔi juriidilist isikut,
    kelle nimel on litsentsile andja saanud panuse ja
    see on hiljem kaasatud tööse.

  2. AutoriÔiguse litsentsi andmine. KÀesoleva Litsentsi tingimustest ja
    pakkumistest lÀhtuvalt annab iga Panustaja Teile igavese,
    maailmasisese, mitteexklusiivse, tasuta, kunagi tagasi vÔetava
    autoriÔiguse litsentsi, et kopeerida, ette valmistada tuletised,
    avalikult kuvada, avalikult esitada, edasi litsenseerida ja levitada
    tööd ja selliseid tuletisi kas allika vÔi objekti vormis.

  3. Patendi litsentsi andmine. KĂ€esoleva Litsentsi tingimustest ja
    pakkumistest lÀhtuvalt annab iga Panustaja Teile igavese,
    maailmasisese, mitteexklusiivse, tasuta, kunagi tagasi vÔetava
    (vÀlja arvatud selles jaotises nimetatud) patendi litsentsit tootmiseks, tootmiseks,
    kasutamiseks, mĂŒĂŒmiseks, mĂŒĂŒgiks pakkumiseks, impordiks ja muuks vahendamiseks
    tööle, kus see litsents kehtib ainult nende patentide nÔuete puhul, mida
    selle Panustaja poolt, mis on tingimata rikutud nende
    panustamisega ĂŒksinda vĂ”i koos nende panuste ja
    tööga, millele need panused esitati. Kui Te
    algatate patendi kohtuasja mis tahes ĂŒksuse (sealhulgas
    vastu- vÔi vastukÀimise kohtuasjas), vÀites, et töö
    vÔi Kate, mis on kaasatud töösse, on otsene
    vÔi tÀiendav patendi rikkumine, siis kÔiki patendi litsentse
    Teile antud meie selle Litsentsi raames antud töö puhul katkestatakse
    alates kuupÀevast, mil selline kohtuasja on esitatud.

  4. Taaskasutamine. Te vÔite kopeerida ja levitada koopiaid
    tööst vÔi selle tuletustest aegade, olenemata muudatustest, ja sooritatud
    allika vÔi objekti vormis, tingimusel et Te
    tÀidate jÀrgmisi tingimusi:

    (a) Te peate andma töö vÔi
    tuletustest teistele saajatele selle Litsentsi tasuta koopia; ja

    (b) Te peate tÔendama mistahes muudetud faile, millel on esile toodud teated
    seda, et Te muutsid faile; ja

    (c) Te peate sÀilitama, allika vormis mistahes tuletisi,
    mida Te jaotate, kÔik autoriÔiguse, patendi, kaubamÀrgi ja
    tunnustuse teated allika vormist,
    vĂ€lja arvatud need teated, mis ei puuduta ĂŒhtegi osa
    tuletustest; ja

    (d) Kui töö sisaldab «TEATE» tekstifaili osana selle
    jaotamisest, siis mistahes tuletisi, mida Te jaotate, peaks
    kaasa sisaldama loetavat koopia tunnustuse teadetest, mis on sisaldatud
    selles teatefailis, vÀlja arvatud need teated, mis ei puuduta
    ĂŒhtki osa tuletustest, vĂ€hemalt ĂŒhes
    jÀrgmistest kohtadest: koos teatefailiga, mis on jaotatud
    tuletustega; allika vormis vÔi
    dokumentatsioonis, kui see on esitatud koos tuletustega; vÔi,
    kuva tuletustes, kui ja
    kui sellised kolmandate osapoolte teated tavaliselt ilmuvad. Teatefaili
    sisu on ainult teabeks ja
    Àrge muutke litsentsi. VÔite lisada oma autoriÔiguse tunnustuse
    teateid tuletatud töödes, mida te levitate, koos
    vÔi kui lisamaterjali NOTICE tekstis, tingimusel
    et selliseid lisatunnustusi ei saa tÔlgendada
    kui litsentsi muutmist.

    VÔite lisada oma autoriÔiguse avalduse oma muudatustele ja
    vÔite kehtestada lisatingimusi ja -tingimusi
    oma muudatuste kasutamiseks, paljususele, vÔi levitamiseks, vÔi
    iga sellise tuletatud töö osas tervikuna, tingimusel et teie kasutamine,
    levitamine ja jagamine vastab muidu
    selles litsentsis esitatud tingimustele.

  5. Panuste esitamine. Kui te ei deklareeri selgelt teisiti,
    kÔik panused, mille te esitate eesmÀrgil tööle
    licensorile, kuuluvad selle litsentsi tingimustele,
    ilma lisatingimusteta.
    Sellegipoolest ei kÔrvalda ega muuda midagi siinset
    separaatse litsentsilepingu tingimusi, mille olete vÔinud sÔlmida
    licensoriga selliste panuste osas.

  6. KaubamÀrgid. See litsents ei anna luba kasutada kaubamÀrgi
    nimesid, kaubamÀrke, teenuse mÀrke vÔi tootemÀrke licensorilt,
    vÀlja arvatud juhul, kui see on vajalik mÔistlikuks ja tavaliseks kasutamiseks töö
    pÀritolu kirjeldamisel ja NOTICE failide sisu taasloome.

  7. Garantii loobumise teade. Kui seadus ei nÔua
    vÔi ei ole kirjutatud kokku lepitud, annab licensor töö (ja iga
    panustaja annab oma panused) «NAGU ON» PÕHISELT,
    ILMA GARANTIIDE vÔi OLUKORDADE IGASUGUSE KINDLA, kas otsest vÔi
    kaudset, sealhulgas, ilma piiramata, mingeid garantiisid vÔi tingimusi
    PEALKIRI, MITTE-RIKKUMINE, KAUPLUSVÕIME vĂ”i KASUTAMISE SOBIVUSE KOHTA. Te olete tĂ€ielikult vastutav
    tööturu sobivuse kindlaksmÀÀramise eest vÔi töö taasloomise eest ja vastutate
    iga riskiga, mis tuleneb teie Ôiguste kasutamisest selle litsentsi alusel.
    Vastutuse piiramine. Sel juhul ei tohi mingil juhul

  8. ja Ôigusteaduse alusel, olenemata sellest, kas tegemist on torti (sealhulgas hooletus) vÔi
    lepingu alusel, mingil muul viisil, kui seadus ei nÔua (nÀiteks tahtlikud
    ja raskelt hooletud tegevused) vĂ”i pole kokku lepitud kirjalikult, ei tohi ĂŒkski panustaja olla
    teile vastutav kahjude eest, sealhulgas kÔik otsesed, kaudsed, erilised,
    juhtumikohased, vÔi palga vÔrdsed kahjud, mis tuleneb
    sellest litsentsist vÔi töö kasutamisest vÔi vÔimetusest kasutada
    tööd (sealhulgas, kuid mitte ainult kahju hea tahte,
    töö lÔpetamine, arvuti rike vÔi rike, vÔi kÔik ja kÔik
    muud kaubanduslikud kahjud vÔi kaotused), isegi kui selline panustaja
    on olnud teadlik selliste kahjustuste vÔimalusest.
    Garantii vÔi tÀiendava vastutuse aktsepteerimine. Samuti, kui te levitate

  9. tööd vÔi tuletatud töid, vÔite otsustada pakkuda
    ja kĂŒsida tasu, et aktsepteerida toetust, garantiid, hĂŒvitise
    vÔi muid vastutuse kohustusi ja / vÔi Ôigusi, mis on kooskÔlas
    selle litsentsiga. Siiski, selliste kohustuste aktsepteerimise korral vÔite tegutseda ainult
    oma nimel ja oma vastutusalas, mitte kellegi teise panustaja nimel, vaid ainult juhul
    kui nĂ”ustute hĂŒvitama, kaitsma ja hoidma iga panustajat vabana mistahes vastutusest
    vÔi nÔuetest, mida sellise panustaja vastu esitatakse, pÔhjuseks
    teie aktsepteerimine selliste garantiide vÔi tÀiendavate vastutuste osas.
    TINGIMUSED JA MUDALUS
    LISAAINE: Kuidas kasutada Apache litsentsi oma tööl.

    Apache litsentsi rakendamiseks oma tööl lisage jÀrgmine

    standardne mÀrkus, mille vÀljad, mis on paigutatud nurksulgudesse «[]»,

    asendage oma identifitseerivate andmetega. (Ärge lisage
    nurgasulgusid!) Tekst peaks olema paigaldatud vastava
    failiformaadi kommentaarisĂŒntaksiga. Samuti soovitame, et fail vĂ”i klassi nimi ja eesmĂ€rgi kirjeldus
    oleksid seal kohal sama «trĂŒkitud lehe» peal Ă”igusemĂ€rkusega, et tagada
    lihtsam tuvastamine kolmandate osapoolte arhiividesse.
    AutoriÔigus [aasta] [autoriÔiguse omaniku nimi]
    Antud Apache litsentsi, versioon 2.0 (edaspidi «litsents»);
    tuvastamine kolmandate osapoolte arhiivides.

    AutoriÔigus [aaaa] [autoriÔiguse omaniku nimi]

    Antud Apache litsentsi, versioon 2.0 (edaspidi «Litsents»);
    te ei tohi seda faili kasutada muu kui litsentsiga kooskÔlas.
    Sa saad litsentsi koopia hankida

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

    VÀlja arvatud juhul, kui kohaldatav seadus nÔuab teisiti vÔi on kirjalikult kokku lepitud, tarkvara
    mida jaotatakse litsentsi alusel, jagatakse "NII NAGU ON" ALUSEL,
    ILMA IGASUGU GARANTIIDETA VÕI TINGIMUSTETA, olgu need siis vĂ€ljendatud vĂ”i kaudsed.
    Vaata litsentsi, et leida spetsiifilised tingimused, mis kÀsitlevad Ôigusi ja
    piiranguid litsentsi alusel.

Litsents = leping

Vaba litsents, kuigi on vaba, ei luba meelevaldset tegevust ning oleme juba toonud vÀlja piirangute nÀiteid. Valige litsents, arvestades nii oma huve kui ka kasutaja omi, kuna avatud tarkvara on suunatud just temale. Projekti kasutaja peaks suhtuma litsentsi kui omamoodi lepingusse enda ja autori vahel, seega enne mis tahes tegevust lÀhtekoodiga tutvuge hoolikalt teie peale kehtivate piirangutega.

Loodame, et oleme valgustanud litsentside teemat ning vaatamata kĂŒsimuse keerukusele ei tohiks see takistada teid avatud lĂ€htekoodiga teel. Arendage oma projekti ja Ă€rge unustage Ă”igusi, oma ja teiste omi.

Kasulikud lingid

LÔpetuseks mÔned kasulikud ressursid, mis aitasid meil teavet leidmisel olemasolevate litsentside kohta ning parima sobiva leidmisel meie eesmÀrkidele:

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster