I den hÀr artikeln kommer vi att prata lite om upphovsrÀtt, men mestadels om valet av en fri licens för RAD-ramverket och för open-source-produkter baserade pÄ det. Vi kommer att berÀtta om den tillÄtande licensen Apache 2.0, vad som ledde oss till den och vilka lösningar vi stötte pÄ under processen.
Processen att vÀlja licens Àr ganska arbetskrÀvande och bör nÀrmas med en rimlig mÀngd litteratur, och om du inte Àr lycklig Àgare av en juridisk utbildning, sÄ ligger en oöverskÄdlig mÀngd information om olika fria licenser framför dig. Det viktigaste du bör göra Àr att sÀtta upp ett antal begrÀnsande kriterier. I processen av diskussion och reflektion kan ditt team förstÄ vad ni vill tillÄta anvÀndare av er produkt att göra och vad ni vill förbjuda. NÀr ni har en beskrivning i handen Àr det dags att jÀmföra den med existerande licenser och identifiera den dÀr flest punkter matchar. Det lÄter enkelt, men i verkligheten kvarstÄr ofta frÄgor Àven efter diskussion.

Först â en lĂ€nk till , en nyttig webbplats som vi anvĂ€nde flitigt. SĂ€rskilt bör ni lĂ€gga mĂ€rke till av licenser enligt 13 grundlĂ€ggande kriterier. MĂ„ engelskan och tĂ„lamodet vara med er.
Valets plÄgor
Vi börjar med allmÀnna kÀnnetecken för licenser för . FPS innebÀr uteslutande en fri licens som inte begrÀnsar kommersiell och icke-kommersiell spridning enligt modellen . DÀrmed, genom att publicera programvara under en fri licens kan man inte helt begrÀnsa dess överföring, spridning och försÀljning av tredje part, och man mÄste vara mentalt förberedd pÄ detta.
En fri licens ger anvÀndaren rÀtt att delta i omvÀnd utveckling av programvaran eller förÀndra den med andra tillgÀngliga metoder. De flesta licenser tillÄter inte att man byter namn pÄ produkten eller utför nÄgon manipulation som Àndrar upphovsmannens eller/och systemÀgarens rÀttigheter.
De huvudsakliga frÄgor vi var intresserade av angÄende fria licenser handlade om:
- Ăndringar i programvaran mĂ„ste dokumenteras och har ingen relation till systemets rĂ€ttighetsinnehavare?
- Namn pÄ den hÀrledda programvaran fÄr inte vara detsamma som rÀttighetsinnehavarens programvarunamn?
- Ăr det möjligt att Ă€ndra licensen för alla nya versioner till en annan, Ă€ven till en proprietĂ€r licens?
Efter att noggrant ha granskat listan över de mest populÀra licenserna har vi valt ut nÄgra som vi har granskat mer detaljerat. Potentiella licenser för var: GNU GPLv3, Apache 2.0, MIT och MPL. MIT Vi uteslöt nÀstan omedelbart den, eftersom det Àr en tillstÄndslisens utan copyleft-bestÀmmelser som tillÄter anvÀndning, modifiering och distribution av koden nÀstan som man vill, vilket inte passade oss; vi ville att licensen skulle reglera relationen mellan rÀttighetsinnehavaren och anvÀndaren. De flesta av de mindre projekten pÄ GitHub publiceras under MIT-licensen eller dess olika varianter. Licensen i sig Àr mycket kort och den enda begrÀnsningen Àr att skaparen av programvaran ska anges.
Den nĂ€sta licensen var MPL 2.0. Ărligt talat kom vi inte omedelbart till den, men efter att ha studerat den noggrant uteslöt vi den snabbt, eftersom den stora nackdelen Ă€r att licensen inte gĂ€ller för hela projektet, utan för enskilda filer. Dessutom, om anvĂ€ndaren Ă€ndrar en fil, kan de inte Ă€ndra licensen. Faktum Ă€r att oavsett hur flitigt du Ă€ndrar ett Open Source-projekt, sĂ„ kommer du inte att kunna monetisera det pĂ„ grund av en sĂ„dan licens. Detta gĂ€ller för övrigt inte rĂ€ttighetsinnehavaren.
Ett liknande problem kvarstÄr ocksÄ i licensen GNU GPLv3. Den krÀver att varje fil stannar under densamma. GNU GPL Àr en copyleft-licens som krÀver att kÀllkoden för hÀrledda verk ska vara öppen och stanna under samma licens. Med andra ord: genom att skriva om tvÄ rader kod kommer du att tvingas dokumentera dina Àndringar och vid vidare anvÀndning eller distribution behÄlla koden under GNU GPL. I det hÀr fallet Àr det en begrÀnsande faktor för anvÀndaren av vÄrt projekt, inte för oss. Men att byta frÄn GPL till vilken annan licens som helst Àr förbjudet, Àven inom versionerna av GPL. Till exempel om man byter LGPL (en uppsÀttning över GPL) till GPL, sÄ finns det ingen vÀg tillbaka till LGPL. Och denna punkt var avgörande i omröstningen emot.
Ăverlag lutade vĂ„rt val ursprungligen Ă„t GPL3 just pĂ„ grund av spridningen av modifierad kod under samma licens. Vi trodde att vi dĂ€rigenom kunde skydda vĂ„r produkt, men vi sĂ„g mindre risker med Apache 2.0. Enligt Free Software Foundation Ă€r GPLv3 kompatibel med Apache License v2.0, vilket innebĂ€r att det alltid finns möjlighet att byta licens frĂ„n Apache License v2.0 till GPL v3.0.
Apache 2.0
â en balanserad permissiv licens med fokus pĂ„ upphovsrĂ€tt. HĂ€r Ă€r de svar den gav pĂ„ vĂ„ra frĂ„gor. Ska modifieringar av mjukvaran dokumenteras och har inget med rĂ€ttighetsinnehavaren att göra? Ja, alla Ă€ndringar mĂ„ste dokumenteras och vi tar inte ansvar för varken kĂ€llkoden eller de modifierade versionerna. En fil med Ă€ndringar ska bifogas till den kod dĂ€r dessa Ă€ndringar har gjorts. Ska namnet pĂ„ den hĂ€rledda mjukvaran skilja sig frĂ„n namnet pĂ„ rĂ€ttighetsinnehavarens programvara? Ja, den hĂ€rledda mjukvaran ska ges ett annat namn och varumĂ€rke, men med angivande av rĂ€ttighetsinnehavarens upphovsrĂ€tt. Kan licensen Ă€ndras för nya versioner till en annan, inklusive en proprietĂ€r? Ja, det gĂ„r att ge ut under olika licenser, Apache 2.0 begrĂ€nsar inte anvĂ€ndningen av nĂ„gra kommersiella och icke-kommersiella licenser.
Ăven nĂ€r nya produkter baseras pĂ„ öppen kĂ€llkod under Apache 2.0 eller produkter med tillĂ€ggsfunktionalitet behöver man inte anvĂ€nda samma licens. Nedan kan du se en bild med villkoren och begrĂ€nsningarna för licensen Apache 2.0.

Licensen stÀller krav pÄ att upphovsrÀtt och licens ska bevaras och nÀmnas under vilken mjukvaran ges ut. Obligatoriskt krav copyright notice med namnet pÄ rÀttighetsinnehavaren och licensen skyddar rÀttigheterna för den ursprungliga programvaruförfattaren, eftersom Àven om det byter namn, ges bort eller sÀljs under en annan licens, sÄ kommer rÀttighetsinnehavarens namn att kvarstÄ. För detta kan man ocksÄ anvÀnda filen NOTICE och bifoga den antingen i kÀllkoden eller i dokumentationen till projektet.
Vi publicerar alla vĂ„ra produkter öppet pĂ„ GitHub under licensen Apache 2.0, förutom , vars kĂ€llkod publicerades under GPLv3-licensen pĂ„ GitHub av Ăstra Malmöns sociala teknikcentrum i april i Ă„r. För nĂ€rvarande, förutom sjĂ€lva och dess som offentlig domĂ€n ( gjorda pĂ„ ramverket. PĂ„ HabrĂ© har vi redan berĂ€ttat om och om .
Tekniska detaljer om ramverket
IONDV. Framework â en öppen kĂ€llkodsramverk pĂ„ node.js för att skapa högkvalitativa webbaserade applikationer baserade pĂ„ metadata, utan krav pĂ„ avancerade programmeringskunskaper.
KĂ€rnfunktionaliteten i applikationen bestĂ„r av ett databasregister â Registreringsmodulen. Det Ă€r en nyckelmodul som Ă€r avsedd för arbete med data baserat pĂ„ metadata strukturer â inklusive projekt, program, evenemang och mer. Projektet anvĂ€nder Ă€ven portalmodulen för att visa anpassade datamallar â fronten för registret över arkiverade Ă€renden Ă€r implementerat dĂ€r.
För databashanteraren anvĂ€nds MongoDb â hĂ€r lagras bĂ„de applikationens instĂ€llningar, metadata och sjĂ€lva datan.
Hur tillÀmpar jag licensen pÄ mitt projekt?
LÀgg till filen LICENSE med licensvillkoren i ditt projekts repository och voilà , projektet Àr skyddat av Apache 2.0. Du mÄste ange upphovsrÀttsinnehavaren, det Àr copyright notice. Detta kan göras i kÀllkoden eller i filen NOTICE (textfil som listar alla bibliotek licensierade under Apache-licensen tillsammans med deras skapare). SjÀlva filen ska placeras antingen i kÀllkoden eller i den dokumentation som distribueras tillsammans med arbetet. Det ser ut som följande:
Copyright © 2018 LLC «ION DV».
Licensierad under Apache License, Version 2.0
Texten i Apache License 2.0
Apache License
Version 2.0, januari 2004
VILLKOR FĂR ANVĂNDNING, Ă TERPRODUKTION OCH DISTRIBUTION
Definitioner.
»Licens« ska betyda villkoren för anvÀndning, reproduktion,
och distribution som definieras av avsnitt 1 till 9 i detta dokument.»Licensgivare« ska betyda upphovsrÀttsinnehavaren eller en enhet som Àr godkÀnd av
upphovsrÀttsinnehavaren som ger Licensen.»Juridisk person« ska betyda unionen av den verkstÀllande enheten och alla
andra enheter som kontrollerar, kontrolleras av, eller Àr under gemensam
kontroll med den enheten. För syftet med denna definition
betyder »kontroll« (i) makten, direkt eller indirekt, att orsaka
styrning eller ledning av sÄdan enhet, vare sig genom avtal eller
annars, eller (ii) Àgande av femtio procent (50%) eller mer av de
utstÄende aktier eller (iii) fördelaktigt Àgande av sÄdan enhet.»Du« (eller »Ditt«) ska betyda en individ eller juridisk person
som utövar de rÀttigheter som beviljas av denna Licens.»KÀlla« form ska betyda den föredragna formen för att göra Àndringar,
inklusive men inte begrÀnsat till mjukvarukÀllkod, dokumentations
kÀlla och konfigurationsfiler.»Objekt« form ska betyda alla former som hÀrrör frÄn mekanisk
transformering eller översÀttning av en kÀllaform, inklusive men
inte begrÀnsat till kompilerad objektkod, genererad dokumentation,
och konverteringar till andra mediatyper.»Verk« ska betyda det konstverk, vare sig i kÀlla- eller
objektform, som görs tillgÀngligt under Licensen, som anges av en
upphovsrÀttsanmÀrkning som ingÄr i eller Àr bifogad till verket
(ett exempel ges i bilagan nedan).»Deriverade verk« ska betyda alla verk, oavsett om de Àr i KÀlla eller Objekt
form, som Àr baserat pÄ (eller hÀrlett frÄn) Verket och för vilket
redaktionella Àndringar, anmÀrkningar, förklaringar eller andra modifieringar
representerar, som helhet, ett originalverk av upphovsrÀtt. För syften
med denna Licens, ska Derivatinverk inte inkludera verk som förblir
separabla frÄn, eller bara lÀnkar (eller binder vid namn) till grÀnssnitten av,
Verket och Derivatinverk dÀrav.«Bidrag» ska betyda varje verk av upphovsrÀtt, inklusive
den ursprungliga versionen av Verket och eventuella modifieringar eller tillÀgg
till det Verket eller Derivatinverk dÀrav, som medvetet
skickas till Licensgivaren för inkludering i Verket av upphovsrÀttsinnehavaren
eller av en individ eller juridisk person som Àr behörig att skicka pÄ uppdrag av
upphovsrÀttsinnehavaren. För syften med denna definition, «skickat»
betyder varje form av elektronisk, verbal eller skriftlig kommunikation som sÀnds
till Licensgivaren eller dess representanter, inklusive men inte begrÀnsat till
kommunikation pÄ elektroniska e-postlistor, system för kÀllkodskontroll,
och issuespÄrningssystem som hanteras av, eller Ä Licensgivarens vÀgnar,
för att diskutera och förbÀttra Verket, men
exkluderar kommunikation som tydligt Àr markerad eller pÄ annat sÀtt
angiven skriftligen av upphovsrÀttsinnehavaren som «Inte ett Bidrag.»«Bidragsgivare» ska betyda Licensgivaren och varje individ eller juridisk person
Ä vars vÀgnar ett Bidrag har mottagits av Licensgivaren och
som dĂ€refter inkorporerats i Verket.ĂverlĂ„telse av upphovsrĂ€ttslös. Med förbehĂ„ll för villkoren i
denna Licens, ger varje Bidragsgivare hÀrmed till Dig en evig,
global, icke-exklusiv, kostnadsfri, royaltyfri, oÄterkallelig
upphovsrÀttslös till att Äterskapa, förbereda Derivatinverk av,
offentligt visa, offentligt framföra, sublicensiera och distribuera Verket
och sĂ„dana Derivatinverk i KĂ€lla eller Objektform.ĂverlĂ„telse av patentlicens. Med förbehĂ„ll för villkoren i
denna Licens, ger varje Bidragsgivare hÀrmed till Dig en evig,
global, icke-exklusiv, kostnadsfri, royaltyfri, oÄterkallelig
(utom vad som anges i denna sektion) patentlicens för att göra, lÄta göra,
anvÀnda, erbjuda att sÀlja, sÀlja, importera och pÄ annat sÀtt överföra Verket,
dÀr sÄdan licens endast gÀller för de patentkrav som kan licensieras
av sÄdan Bidragsgivare som nödvÀndigtvis krÀnks av deras
Bidrag ensam eller i kombination med deras Bidrag
med Verket till vilket sÄdana Bidrag lÀmnades. Om Du
inleder patenttvist mot nÄgon enhet (inklusive en
motkrav eller motkrav i en rÀttegÄng) som pÄstÄr att Verket
eller ett Bidrag som inkorporerats i Verket utgör direkt
eller medverkande patentkrÀnkning, ska alla patentlicenser
som beviljas Dig under denna Licens för Verket upphöra
frÄn och med det datum dÄ sÄdan tvist vÀcktes.à terdistribution. Du kan Äterskapa och distribuera kopior av
Verket eller Derivatinverk dÀrav i vilket medium som helst, med eller utan
modifieringar, och i KÀlla eller Objektform, förutsatt att Du
uppfyller följande villkor:(a) Du mÄste ge alla andra mottagare av Verket eller
Derivatinverk en kopia av denna Licens; och(b) Du mÄste se till att alla modifierade filer har framtrÀdande meddelanden
som anger att Du har Àndrat filerna; och(c) Du mÄste behÄlla, i KÀllaformen av alla Derivatinverk
som Du distribuerar, alla upphovsrÀtts-, patent-, varumÀrkes- och
erkÀnnandemeddelanden frÄn KÀllaformen av Verket,
exklusive sÄdana meddelanden som inte rör nÄgon del av
Derivatinverken; och(d) Om Verket inkluderar en «NOTICE» textfil som en del av sin
distribution, dÄ mÄste alla Derivatinverk som Du distribuerar
inkludera en lÀsbar kopia av erkÀnnandemeddelandena som finns
i den textfilen «NOTICE», exklusive sÄdana meddelanden som inte
rör nÄgon del av Derivatinverken, pÄ minst ett
av följande stÀllen: inom en textfil «NOTICE» distribuerad
som en del av Derivatinverken; inom KĂ€llaform eller
dokumentation, om sÄdan tillhandahÄlls tillsammans med Derivatinverken; eller,
inom en visning som genereras av Derivatinverken, om och
dÀr sÄdana tredje parts meddelanden normalt visas. InnehÄllet
NOTIS-filen Àr endast för informationsÀndamÄl och
Àndra inte licensen. Du kan lÀgga till din egen attribution
notiser inom hÀrledda verk som du distribuerar, bredvid
eller som ett tillÀgg till TEXTEN i NOTISEN frÄn verket, förutsatt
att sÄdana ytterligare attributionnotiser inte kan tolkas
som en Àndring av licensen.Du kan lÀgga till ditt eget upphovsrÀttsuttalande till dina Àndringar och
kan erbjuda ytterligare eller olika licensvillkor och förutsÀttningar
för anvÀndning, reproduktion eller distribution av dina Àndringar, eller
för sÄdana hÀrledda verk som helhet, förutsatt att din anvÀndning,
reproduktion och distribution av verket i övrigt följer
villkoren som anges i denna licens.InlÀmning av bidrag. Om du inte uttryckligen anger nÄgot annat,
ska alla bidrag avsiktligt lÀmnade för inkludering i verket
av dig till Licensgivaren ske under villkoren och förutsÀttningarna för
denna licens, utan nÄgra ytterligare villkor eller förutsÀttningar.
Oavsett ovanstÄende ska inget hÀrigenom överordna eller Àndra
villkoren i nÄgot separat licensavtal som du kan ha undertecknat
med Licensgivaren angÄende sÄdana bidrag.VarumÀrken. Denna licens ger inte tillstÄnd att anvÀnda varumÀrkena,
varumÀrkesskyltarna, tjÀnstemÀrkena eller produktnamnen frÄn Licensgivaren,
utöver vad som krÀvs för rimlig och sedvanlig anvÀndning vid beskrivning av
ursprunget av verket och reproduktion av innehÄllet i NOTIS-filen.Friskrivning av garanti. SÄvida det inte krÀvs av tillÀmplig lag eller
överenskommits skriftligen, tillhandahÄller Licensgivaren verket (och varje
bidragsgivare tillhandahĂ„ller sina bidrag) pĂ„ en «SOM DET ĂR» BAS,
UTAN GARANTIER ELLER VILLKOR AV NĂ GOT SLAG, varken uttryckliga eller
underförstÄdda, inklusive, utan begrÀnsning, eventuella garantier eller villkor
för TITEL, INTE INBLANDNING, SĂLJBARHET eller LĂMPLIGHET FĂR EN
SĂRSKILD PĂ LITLIGANDE. Du Ă€r ensam ansvarig för att avgöra
lÀmpligheten av att anvÀnda eller Äterdistribuera verket och Äta dig alla
risker förenade med din utövning av rÀttigheter enligt denna licens.BegrÀnsning av ansvar. Under inga omstÀndigheter och under ingen juridisk teori,
oavsett om det Àr i skadestÄnd (inklusive vÄrdslöshet), avtal eller annat,
sÄvida det inte krÀvs av tillÀmplig lag (sÄsom avsiktliga och grovt
vÄrdslösa handlingar) eller överenskommits skriftligen, ska nÄgon bidragsgivare
vara ansvarig gentemot dig för skador, inklusive nÄgra direkta, indirekta, sÀrskilda,
tillfÀlliga eller följdskador av nÄgot slag som uppstÄr som en
resultat av denna licens eller av anvÀndning eller oförmÄga att anvÀnda verket
(inklusive men inte begrÀnsat till skador för förlust av goodwill,
arbetsstopp, datorkrasch eller fel, eller alla andra
kommersiella skador eller förluster), Àven om sÄdan bidragsgivare
har informerats om möjligheten av sÄdana skador.Accepterande av garanti eller ytterligare ansvar. Vid omdistribution av
verket eller hÀrledda verk dÀrav, kan du vÀlja att erbjuda,
och ta ut en avgift för, acceptans av stöd, garanti, ersÀttning,
eller andra ansvarsförpliktelser och/eller rÀttigheter som överensstÀmmer med detta
licens. Men vid acceptans av sÄdana förpliktelser fÄr du endast agera
för din egen rÀkning och pÄ ditt eget ansvar, inte pÄ uppdrag
av nÄgon annan bidragsgivare, och endast om du gÄr med pÄ att ersÀtta,
försvara och hÄlla varje bidragsgivare skadeslös för alla
ansvar som ÄlÀggs, eller krav som görs mot, sÄdan bidragsgivare pÄ grund av
din acceptans av sĂ„dan garanti eller ytterligare ansvar.SLUTET AV VILLKOR OCH FĂRUTSĂTTNINGAR
BILAGA: Hur man tillÀmpar Apache-licensen pÄ sitt arbete.
För att tillÀmpa Apache-licensen pÄ ditt arbete, fÀst följande
mallnotis, med fÀlten inneslutna i hakparenteser «[]»
ersatta med din egen identifierande information. (Inkludera inte
hakparenteserna!) Texten bör vara innesluten i lÀmplig
kommentarssyntax för filformatet. Vi rekommenderar ocksÄ att en
fil- eller klassnamn och beskrivning av syftet inkluderas pÄ samma «tryckta sida»
som upphovsrÀttsnotisen för enklare
identifiering inom tredje parts arkiv.UpphovsrÀtt [ÄÄÄÄ] [namn pÄ upphovsrÀttsinnehavaren]
Licensierad under Apache License, Version 2.0 ("Licensen");
du fÄr inte anvÀnda den hÀr filen utom i enlighet med Licensen.
Du kan fÄ en kopia av Licensen pÄOm inte annat krÀvs av tillÀmplig lag eller avtalas skriftligt, sÄ distribueras programvara
som distribueras under Licensen pĂ„ en "SOM DET ĂR" GRUND,
UTAN GARANTIER ELLER VILLKOR AV Nà GOT SLAG, varken uttryckliga eller underförstÄdda.
Se Licensen för den specifika sprÄkregleringen av rÀttigheter och
begrÀnsningar enligt Licensen.
Licens = avtal
En öppen licens Àr fri, men den tillÄter inte total frihet och vi har redan gett exempel pÄ begrÀnsningar. VÀlj licens med hÀnsyn till bÄde dina egna intressen och anvÀndarens, eftersom öppen programvara Àr avsedd för denne. AnvÀndaren av projektet bör betrakta licensen som ett slags avtal mellan denne och rÀttighetsinnehavaren, sÄ innan du gör nÄgra ÄtgÀrder med kÀllkoden, studera noggrant de begrÀnsningar som licensen ÄlÀgger dig.
Vi hoppas att vi har belyst Ă€mnet licenser nĂ„got och att, trots frĂ„gans komplexitet, det inte ska bli ett hinder pĂ„ din vĂ€g i Ăppen KĂ€llkod. Utveckla ditt projekt och glöm inte bort rĂ€ttigheterna, bĂ„de dina och andras.
Nyttiga lÀnkar
Till slut nÄgra anvÀndbara resurser som hjÀlpte oss i vÄr informationssökning om befintliga licenser och för att vÀlja den mest lÀmpliga för vÄra mÄl:
- Super anvÀndbar frÄn
KĂ€lla: habr.com
