I denne artikkelen skal vi snakke litt om opphavsrett, men mest om valg av fri lisens for RAD-rammeverket og for Äpne produkter basert pÄ det. Vi vil fortelle om den tillatende lisensen Apache 2.0, om hva som fÞrte oss dit og hvilke lÞsninger vi mÞtte i prosessen.
Prosessen med Ä velge lisens er ganske tidkrevende, og det er viktig Ä ha gjort en del lesing fÞr man gÄr i gang. Og hvis du ikke er heldig eier av juridisk utdannelse, sÄ stÄr du overfor et ubrukt felt med informasjon om ulike frie lisenser. Det viktigste man bÞr gjÞre er Ä lage en rekke begrensende kriterier. I prosessen med diskusjon og refleksjon vil du og teamet ditt kunne forstÄ hva dere Þnsker Ä tillate brukerne av produktet deres, og hva som skal forbys. NÄr dere allerede har en slags beskrivelse, mÄ dere legge den opp mot eksisterende lisenser og finne den der flest punkter stemmer overens. Det hÞres selvfÞlgelig enkelt ut, men i virkeligheten er det ofte spÞrsmÄl som gjenstÄr, selv etter diskusjonen.

FĂžrst â en lenke til , en nyttig nettside som vi aktivt brukte. Spesiell oppmerksomhet bĂžr rettes mot av lisenser pĂ„ 13 hovedkriterier. MĂ„tte engelsk og tĂ„lmodighet vĂŠre med deg.
The agonies of choice
La oss begynne med de generelle egenskapene ved lisenser for . Fritt programvare innebÊrer utelukkende en fri lisens som ikke begrenser kommersiell og ikke-kommersielt distribusjon etter modellen . Dermed, nÄr man legger programvare under en fri lisens pÄ nett, kan man ikke fullt ut begrense overfÞring, distribusjon og salg av den til tredjeparter, og man mÄ bare vÊre mentalt forberedt pÄ dette.
En fri lisens gir brukeren rett til selv Ä delta i reversering av programvaren eller endre det pÄ andre tilgjengelige mÄter. De fleste lisenser tillater ikke Ä omdÞpe produktet eller utfÞre noen manipulasjoner som endrer forfatterens eller/eierens rettigheter til systemet.
De viktigste spÞrsmÄlene vi var interessert i om frie lisenser var:
- Endringer gjort i programvaren mÄ dokumenteres og har ingen tilknytning til rettighetshaveren av systemet?
- Navnet pÄ det avledede programmet mÄ ikke vÊre det samme som navnet pÄ rettighetshaverens programvare?
- Er det mulig Ă„ endre lisensen for nye versjoner til en annen, inkludert en proprietĂŠr lisens?
Etter Ä ha sett nÞye pÄ listen over de mest populÊre lisensene, valgte vi noen som vi sÄ nÊrmere pÄ. Potensielle lisenser for var: GNU GPLv3, Apache 2.0, MIT og MРL. MIT Vi utelukket raskt dette, da det er en tillatende copyleft-lisens som tillater bruk, modifikasjon og distribusjon av koden nÊrmest som man vil, men vi Þnsket at lisensen skulle regulere forholdet mellom rettighetshaver og bruker. De fleste ikke de stÞrste prosjektene pÄ GitHub er lagt ut under MIT-lisensen eller dens ulike varianter. Selve lisensen er veldig kort, og den eneste restriksjonen er Ä oppgi opphavsretten til programvareutvikleren.
Neste var lisensen MPL 2.0. MÄ innrÞmme at vi ikke kom til den med en gang, men etter Ä ha studert den nÊrmere, utelukket vi den raskt, da den stÞrste ulempen er at lisensen kun gjelder for enkelte filer og ikke for hele prosjektet. I tillegg kan brukeren ikke endre lisensen hvis de endrer en fil. Faktisk, uansett hvor hardt du jobber med Ä endre et open source-prosjekt, vil du ikke kunne kommersialisere det pÄ grunn av en slik lisens. Dette gjelder for Þvrig ikke rettighetshaveren.
Det samme problemet er til stede med lisensen GNU GPLv3. Den krever at enhver fil forblir under den samme lisensen. GNU GPL er en copyleft-lisens som krever at kildekoden for avledede verk skal vÊre offentlig og forbli under den samme lisensen. Det vil si: hvis du omskriver to linjer med kode, vil du mÄtte dokumentere endringene dine, og ved videre bruk eller distribusjon mÄ koden forbli under GNU GPL. I dette tilfellet er dette en begrensning for brukeren av prosjektet vÄrt, og ikke for oss. Men det er forbudt Ä endre fra GPL til en annen lisens, selv innen versjoner av GPL. For eksempel, hvis du endrer LGPL (forlÞper for GPL) til GPL, vil det ikke vÊre noen vei tilbake til LGPL. Og dette punktet var avgjÞrende i avstemningen mot.
Generelt har vÄrt valg i utgangspunktet vÊrt rettet mot GPL3 nettopp pÄ grunn av spredning av modifisert kode under den samme lisensen. Vi trodde at vi dermed kunne sikre produktet vÄrt, men vi sÄ fÊrre risikoer med Apache 2.0. IfÞlge Free Software Foundation er GPLv3 kompatibel med Apache License v2.0, sÄ det er alltid mulig Ä endre lisensen fra Apache License v2.0 til GPL v3.0.
Apache 2.0
â en balansert tillatende lisens med fokus pĂ„ opphavsrett. Her er hva den svarte pĂ„ spĂžrsmĂ„lene vi er interessert i. MĂ„ endringene i programvaren dokumenteres og har de ingenting Ă„ gjĂžre med rettighetshaverens system? Ja, alle endringer mĂ„ dokumenteres, og vi har ikke ansvar for verken kildekoden eller endret kode. En fil med endringer mĂ„ vedlegges koden der du gjorde disse endringene. Skal navnet pĂ„ den avledede programvaren ikke samsvare med navnet til opphavsrettshaveren? Ja, den avledede programvaren mĂ„ bli gitt ut med et annet navn og under et annet varemerke, men med kreditering til opphavsrettshaveren. Kan lisensen for eventuelle nye versjoner endres til en annen, inkludert proprietĂŠr? Ja, det kan utgis under ulike lisenser, Apache 2.0 begrenser ikke bruken av kommersielle eller ikke-kommersielle lisenser.
OgsÄ ved Ä utgi nye produkter basert pÄ Äpen kildekode under Apache 2.0 eller produkter med ekstra funksjonalitet er det ikke nÞdvendig Ä bruke den samme lisensen. Nedenfor kan du se et bilde med betingelsene og begrensningene for Apache 2.0-lisensen.

Lisensen stiller krav om bevaring og henvisning til opphavsrett og lisensen som programvaren utgis under. Obligatorisk tilstedevÊrelse copyright notice med navnet pÄ opphavsrettshaveren og lisensen beskytter rettighetene til den opprinnelige forfatteren av programvaren, siden selv om det blir gitt et annet navn, gitt bort eller solgt under en annen lisens, vil opphavsmannens navn fortsatt vÊre der. For dette kan man ogsÄ bruke filen NOTICE og legge den enten i kildekoden eller i dokumentasjonen til prosjektet.
Vi gir ut alle vÄre produkter pÄ GitHub under Apache 2.0-lisensen, unntatt , kildekoden til hvilken ble publisert under GPLv3-lisensen pÄ GitHub av Den fjerne Þstlige sentrum for sosiale teknologier i april i Är. For Þyeblikket, bortsett fra selve og dets publisert laget pÄ rammeverket. PÄ Habr har vi allerede fortalt om og om .
Tekniske detaljer om rammeverket
IONDV. Framework â et Ă„pen kildekode-rammeverk basert pĂ„ node.js for Ă„ lage hĂžy-nivĂ„ nettapplikasjoner basert pĂ„ metadata, som ikke krever omfattende programmeringsferdigheter.
Kjernen i applikasjonens funksjonalitet er databaseregisteret â Registreringsmodulen. Dette er en nĂžkkelmodul designet for Ă„ arbeide med data basert pĂ„ metadata-strukturer â inkludert for prosjektledelse, programmer, arrangementer og mer. Prosjektet benytter ogsĂ„ portalmodulen for Ă„ vise vilkĂ„rlige datamal â som implementerer fronten av arkivregisteret.
MongoDb brukes som databasen â den lagrer bĂ„de applikasjonsinnstillinger, metadata og dataene selv.
Hvordan bruke lisensen pÄ prosjektet ditt?
Legg til filen LICENSE med lisens teksten i prosjektets repository, og voilà , prosjektet er beskyttet av Apache 2.0. Du mÄ oppgi rettighetshaveren, som er copyright notice. Dette kan gjÞres i kildekoden eller i filen NOTICE (en tekstfil som lister opp alle biblioteker lisensiert under Apache-lisensen sammen med navnene pÄ syersene deres). Selv filen bÞr plasseres enten i kildekoden eller i dokumentasjonen som fÞlger med arbeidet. Hos oss ser det slik ut:
Copyright © 2018 LLC «ION DV».
Lisensert under Apache License, Versjon 2.0
Teksten til Apache 2.0-lisensen
Apache-lisens
Versjon 2.0, Januar 2004
VILKĂ R OG BETINGELSER FOR BRUK, REPRODUKSJON OG DISTRIBUSJON
Definisjoner.
«Lisens» betyr vilkÄrene for bruk, reproduksjon,
og distribusjon som definert i Seksjoner 1 til 9 av dette dokumentet.«Lisensgiver» betyr rettighetshaveren eller enheten autorisert av
rettighetshaveren som gir Lisenzen.«Juridisk enhet» betyr sammenslutningen av den handlende enheten og alle
andre enheter som kontrollerer, blir kontrollert av, eller er under felles
kontroll med den enheten. For formÄlene til denne definisjonen,
«kontroll» betyr (i) makten, direkte eller indirekte, til Ä forÄrsake
retningen eller ledelsen av en slik enhet, enten ved kontrakt eller
ellers, eller (ii) eierskap av femti prosent (50%) eller mer av de
uavgjorte aksjene, eller (iii) fordelaktig eierskap av enheten.«Du» (eller «Ditt») betyr en enkeltperson eller Juridisk Enhet
som utÞver rettigheter gitt av denne Lisenzen.«Kilde»-form betyr den foretrukne formen for Ä gjÞre modifikasjoner,
inkludert, men ikke begrenset til programvare kildekode, dokumentasjon
kilde, og konfigurasjonsfiler.«Objekt»-form betyr enhver form som er et resultat av mekanisk
transformasjon eller oversettelse av en Kilde-form, inkludert, men
ikke begrenset til kompilert objektkode, generert dokumentasjon,
og konverteringer til andre medietyper.«Verk» betyr verket av forfatterskap, enten i Kilde eller
Objektform, gjort tilgjengelig under Lisenzen, som angitt av en
copyright notice som er inkludert i eller vedlagt verket
(et eksempel er gitt i Vedlegget nedenfor).«Avledede verk» betyr ethvert verk, enten i Kilde eller Objekt
form, som er basert pÄ (eller avledet fra) Verket og for hvilket
redaksjonelle revisjoner, merknader, utdypninger eller andre endringer
representerer, som helhet, et originalverk av forfatterskap. For formÄlene
til denne lisensen, skal avledede verk ikke inkludere verk som forblir
separerte fra, eller bare lenker (eller binder ved navn) til grensesnittene til
Verket og avledede verk derav.«Bidrag» skal bety ethvert verk av forfatterskap, inkludert
den originale versjonen av Verket og eventuelle modifikasjoner eller tillegg
til dette Verket eller avledede verk derav, som bevisst
sendes til Liscensgiver for inkludering i Verket av rettighetsinnehaver
eller av en enkeltperson eller juridisk enhet som er autorisert til Ä sende inn pÄ vegne av
rettighetsinnehaveren. For formÄlene med denne definisjonen betyr «sendt inn»
enhver form for elektronisk, verbal, eller skriftlig kommunikasjon sendt
til Liscensgiver eller dens representanter, inkludert men ikke begrenset til
kommunikasjon pÄ elektroniske e-postlister, systemer for kildekodekontroll,
og systemer for problemtracking som administreres av, eller pÄ vegne av, Liscensgiver
for formÄlet med Ä diskutere og forbedre Verket, men
unntatt kommunikasjon som tydelig er merket eller pÄ annen mÄte
angitt skriftlig av rettighetsinnehaveren som «Ikke et Bidrag».«Bidragsyter» skal bety Liscensgiver og enhver enkeltperson eller juridisk enhet
pÄ vegne av hvem et Bidrag har blitt mottatt av Liscensgiver og
senere innlemmet i Verket.Tildeling av opphavsrettslisens. Med forbehold om vilkÄrene og betingelsene i
denne lisensen, gir hver Bidragsyter herved deg en evigvarende,
verdensomspennende, ikke-eksklusiv, gebyrfri, royalty-fri, uoppsigelig
opphavsrettslisens til Ă„ reprodusere, lage avledede verk av,
offentlig vise, offentlig fremfĂžre, sublicensiere, og distribuere
Verket og slike avledede verk i kilde- eller objektform.Tildeling av patentlisens. Med forbehold om vilkÄrene og betingelsene i
denne lisensen, gir hver Bidragsyter herved deg en evigvarende,
verdensomspennende, ikke-eksklusiv, gebyrfri, royalty-fri, uoppsigelig
(unntatt som angitt i dette kapittelet) patentlisens til Ä lage, fÄ laget,
bruke, tilby Ä selge, selge, importere, og pÄ annen mÄte overfÞre Verket,
hvor slik lisens kun gjelder for de patentkrav som kan lisensieres
av en slik Bidragsyter som nĂždvendigvis krenkes av deres
Bidrag(e) alene eller ved kombinasjon av deres Bidrag(e)
med Verket som slike Bidrag(e) ble sendt inn til. Hvis du
innfĂžrer patentprosess mot noe enhet (inkludert en
felleskrav eller motkrav i en rettssak) som pÄstÄr at Verket
eller et Bidrag innlemmet i Verket utgjĂžr direkte
eller medvirkende patenthÄndhevelse, sÄ skal enhver patentlisens
som er gitt deg under denne lisensen for det Verket opphĂžre
fra den datoen slik rettssak er innlevert.Redistribusjon. Du kan reprodusere og distribuere kopier av
Verket eller avledede verk derav i hvilket som helst medium, med eller uten
modifikasjoner, og i kilde- eller objektform, forutsatt at du
oppfyller fÞlgende betingelser:(a) Du mÄ gi eventuelle andre mottakere av Verket eller
avledede verk en kopi av denne lisensen; og(b) Du mÄ sÞrge for at eventuelle modifiserte filer bÊrer synlige merknader
som angir at du har endret filene; og(c) Du mÄ beholde, i kildeformen av ethvert avledet verk
som du distribuerer, alle opphavsretts-, patent-, varemerke- og
anerkjennelsesnotiser fra kildeformen av Verket,
unntatt de notiser som ikke vedrĂžrer noen del av
de avledede verkene; og(d) Hvis Verket inkluderer en «MERK» tekstfil som en del av sin
distribusjon, sÄ mÄ alle avledede verk som du distribuerer
inkludere en lesbar kopi av anerkjennelsesnotiser som finnes
i slike MERK-filer, unntatt de notiser som ikke vedrĂžrer noen del av
de avledede verkene, pÄ minst ett av de fÞlgende stedene: innenfor en MERK tekstfil distribuert
som en del av de avledede verkene; innen kildeformen eller
dokumentasjonen, hvis gitt sammen med de avledede verkene; eller,
innenfor en visning generert av de avledede verkene, hvis og
hvor som helst slike tredjepartsnotiser vanligvis vises. Innholdet
i MERK-filen er kun for informasjonsformÄl og
i MERKSEMALET i NOTICE-filen er kun for informasjonsformÄl og
du ikkje kan endre lisensen. Du kan legge til din eigen tilskriving
merknader innan avledede verk som du distribuerer, saman med
eller som eit tillegg til merknadsteksten frÄ verket, forutsatt
at slike tilleggsmerknader om tilskriving ikkje kan tolkast
som Ă„ endre lisensen.Du kan legge til din eigen opphavsrettserklĂŠring til dine endringar og
kan gi tillegg eller forskjellige lisensvilkÄr og -betingelser
for bruk, reproduksjon eller distribusjon av dine endringar, eller
for slike avledede verk som heilskap, forutsatt at bruken din,
reproduksjon, og distribusjon av verket elles overheld
vilkÄra som er angitt i denne lisensen.Innsending av bidrag. Med mindre du uttrykkjeleg seier noko anna,
skal ethvert bidrag som med vilje blir sendt inn for inkludering i verket
av deg til lisensgivar vere under vilkÄra i
denne lisensen, utan nokre tilleggsvilkÄr eller -betingelser.
Ikke medstanding av det overstÄende, skal ingenting her i inne
oppheve eller endre vilkÄra i nokon separat lisensavtale du mÄtte ha inngÄtt
med lisensgivar vedrĂžrende slike bidrag.Varemerker. Denne lisensen gir ikkje tillatelser til Ă„ bruke handels-
navn, varemerker, tjenestemerker eller produktnavn til lisensgivar,
unntatt sÄ langt det er nÞdvendig for rimelig og vanlig bruk til Ä beskrive
oppsprunget til verket og reprodusere innholdet i merknadsfilen.Ansvarsfraskrivelse. Med mindre det er pÄkrevd av gjeldende lov eller
enige skriftleg, gir lisensgivar verket (og hver
bidragsyter gir sine bidrag) pÄ en «SOM DET ER»-BASIS,
UTEN GARANTIER ELLER BETINGELSER AV NOEN SLAG, verken uttrykkelige eller
impliserte, inkludert, uten begrensning, noen garantier eller betingelser
for TITTEL, IKKE-OVERTRAMP, SALGBARHET, eller BRUKBARHET FOR EN
SPESIFIK FORMĂ L. Du er eneansvarlig for Ă„ avgjĂžre
hvorvidt det er hensiktsmessig Ä bruke eller redistribuere verket og tar pÄ deg
alle risikoer knyttet til din utĂžvelse av tillatelser under denne lisensen.Ansvarsbegrensning. I ingen hending og under ingen juridisk teori,
hverken i tort (inkludert forsÞmmelse), kontrakt eller pÄ annen mÄte,
med mindre det er pÄkrevd av gjeldende lov (slik som forsettlige og grovt
forsĂžmmelige handlinger) eller avtalt skriftlig, skal noen bidragsyter vĂŠre
ansvarlig overfor deg for skader, inklusive noen direkte, indirekte, spesielle,
tilfeldige, eller fÞlgeskader av enhver karakter som oppstÄr som en
resultat av denne lisensen eller av bruken eller manglende evne til Ă„ bruke
verket (inkludert, men ikke begrenset til skader for tap av goodwill,
arbeidstopp, datamaskinfeil eller -malfunksjon, eller enhver og alle
andre kommersielle skader eller tap), selv om slik bidragsyter
har blitt informert om muligheten for slike skader.Akseptering av garanti eller tilleggskap. Mens du redistribuerer
verket eller avledede verk derav, kan du velge Ă„ tilby,
og ta betalt for, aksept av stĂžtte, garanti, erstatningsplikt,
eller andre ansvar og/eller rettigheter som er i samsvar med denne
lisensen. Imidlertid, i aksept av slike forpliktelser, kan du kun handle
pÄ din egen vegne og pÄ ditt eget ansvar, ikke pÄ vegne
av noen annen bidragsyter, og kun hvis du samtykker til Ă„ erstatte,
forvare, og holde hver bidragsyter skadeslĂžs for noe ansvar
som pÄdras av, eller krav fremsatt mot, slik bidragsyter pÄ grunn av
din aksept av noen slik garanti eller tilleggskap.SLUTT PĂ VILKĂ R OG BETINGELSER
TILLEGG: Hvordan anvende Apache-lisensen pÄ arbeidet ditt.
For Ä anvende Apache-lisensen pÄ arbeidet ditt, fest fÞlgende
standardmerknad, med feltene innelukket av klammer «[]»
erstatta med din eigen identifiserende informasjon. (Ikke inkluder
klammene!) Teksten bĂžr vĂŠre innelukket i den passende
kommentarsyntaks for filformatet. Vi anbefaler ogsÄ at en
fil- eller klassens navn og beskrivelse av formÄl er inkludert pÄ den
samme «trykte siden» som opphavsrettserklÊringen for enklere
identifikasjon innen tredjepartsarkiver.Opphavsrett [Är] [navn pÄ opphavsrettseier]
Lisensiert under Apache-lisensen, versjon 2.0 (den «Lisensen»);
Du kan ikke bruke denne filen unntatt i samsvar med lisensen.
Du kan fÄ en kopi av lisensen hosMed mindre annet er pÄkrevd av gjeldende lov eller avtalt skriftlig, programvare
distribuert under lisensen blir distribuert pÄ en «SOM DEN ER» BASIS,
UTEN GARANTIER ELLER VILKà R AV NOE SLAG, verken uttrykkelig eller underforstÄtt.
Se lisensen for det spesifikke sprÄket som regulerer tillatelser og
begrensninger under lisensen.
Lisens = avtale
En fri lisens er, selv om den er fri, ikke en tillatelse til Ä gjÞre hva som helst, og vi har allerede gitt eksempler pÄ begrensningene. Velg lisens med tanke pÄ bÄde dine interesser og brukerens, fordi Äpen kildekode er ment for dem. Brukeren av prosjektet bÞr se pÄ lisensen som en slags avtale mellom ham og rettighetshaveren, sÄ fÞr du gjÞr noe med kildekoden, mÄ du nÞye studere begrensningene som lisensen pÄlegger deg.
Vi hÄper at vi har kastet litt lys over emnet lisensiering, og til tross for spÞrsmÄlet som kan virke komplisert, bÞr det ikke bli en hindring pÄ din vei inn i Open Source. Utvikle prosjektet ditt og ikke glem rettighetene, bÄde dine og andres.
Nyttige lenker
Til slutt noen nyttige ressurser som har hjulpet oss med Ä finne informasjon om eksisterende lisenser og velge den mest passende for vÄre mÄl:
- Super nyttig fra
Kilde: habr.com
