Copylefti mõju litsentsivalikul

Mis on copyleft?

Copyleft on meetod mingi töö või programmi 'vabaks' tegemiseks, kus algse töö edasiarendused või modifikatsioonid peavad vastama samadele vabakasutuskriteeriumitele (vaba siinkohal nagu vabadus, mitte tasuta) nagu esimene variant, ehk õigused peavad edasi kanduma samas vormis. Teisisõnu võib copylefti nimetada reegliks, kus mingi programmi/töö ümberjagamisel ei tohi lisada piiranguid teiste inimeste ligipääsu keelamiseks.

Artikli 'What is copyleft?' autor Ben Cotton lisab veel omapoolse variandi, kuidas copylefti eristada nn vabadest kasutusõigustest (ingl. k permissive licenses): '... vabamad kasutusõigused annavad maksimaalse vabaduse arendajatele (kaasa arvatud võimekuse kasutada avavara koodi mõnes kinnisema ligipääsuga projektis), ent copyleft õigused annavad maksimaalse vabaduse kuni lõppkasutajateni välja'.

Copylefti saab käsitleda neljas kategoorias (mõningate näidetega):

  • Väga tugev copyleft - AGPL
  • Tugev copyleft - GNU GPL
  • Nõrk copyleft - GNU LGPL, Mozilla Avalik Litsents
  • Puuduv copyleft - Apache, MIT, X11, BSD
Väga tugev copyleft

Väga tugevaks copylefti litsentsiks loetakse AGPL-i (Affero General Public License). Võrreldes GNU GPL-iga (General Public License), mis on ise tugev copylefti litsents, täidab AGPL ühe olulise augu GNU GPL-is: veebis kasutatavuse. GNU GPL ei loe üle võrgu jagamist levitamiseks, ning selle vastu kaitsebki AGPL, täpsemalt nende litsents annab kasutajale õiguse pääseda ligi sellise litsentsiga tarkvara algkoodile isegi kui see programm töötab veebis. Sellest tulenevalt ei soovitata AGPL litsentsi kasutada kommertslike projektide jaoks, mis plaanivad töötada üle võrgu.

Näiteprogrammiks võib tuua Launchpadi, mis pakub mitmeid erinevaid teenuseid, sealhulgas meililistid, spetsifikatsioonihaldus, koodiülevaated jne.

Tugev copyleft

Eelnevalt põgusalt mainitud GNU GPL litsents asub siin kategoorias. GNU GPL pole otseselt tuntud sellepärast, et teda on lihtne rakendada või mõista, vaid pigem seetõttu, et seda mainitakse ja viidatakse üsna regulaarselt. Tihti kiputakse arvama, et 'avatud litsents' (ingl. k. open license) tähendab siinkohal võimalust kasutada koodi oma äranägemist mööda, ning selle tulemusel valminud programmid on tasuta (tasuta siinkohal nagu null maksumust). Kuna tegemist on siiski copyleft litsentsiga, siis see muudab taolise kasutamise kõlbmatuks, sest selline tarkvara kuulub pigem patenteeritud tarkvara (ingl. k. proprietary software) alla.

Näitena tasub mainida üldiselt tuntud programme nagu Joomla ja Notepad++. Joomla pakub sisuhaldussüsteemi ja Notepad++ on tekstiredaktor.

Nõrk copyleft

LGPL (Lesser GPL) peetakse kompromissiks patenteeritud ja vabade kasutusõigustega tarkvara vahel. Selle litsentsiga võib tarkvara kasutada patenteeritud projektis kindlate tingimuste alusel, ja kohati ulatub see vabadus isegi koodini.

Tuntumaks näiteks nõrgast copyleftist on Qt. Qt on tööriistakomplekt graafiliste kasutajaliideste ja multi-platvormiliste rakenduste loomiseks, mida on võimalik jooksutada varieeruval tark- ja riistvaral.

Puuduv copyleft

Sellistest litsentsidest on praegu kõige populaarsemad Apache 2.0 ja BSD. Apache on koostatud mõttega olla kooskõlas modernsete autori- ja kasutusõigustega. Kommertslikes projektides võib Apachet kasutada tasuta, ning tuleb kinni pidada ainult kahest asjast: 1) projekti ei tohi nimetada nagu see oleks Apache poolt heaks kiidetud ja 2) Apache teada-tuntud sulega logo ei tohi kusagil projektis kasutada.

Apachet kasutavad sellised programmid (ja keeled!) nagu Kubernetes, Swift (programmeerimiskeel) ja Firebase. Kubernetes pakub konteineritel põhinevale süsteemile automatiseeritud arendust, skaleeritavust ja sellise rakenduse manageerimise võimekust. Firebase'i alusel saab luua funktsioneerivaid tarkvarasüsteeme, realiseerides neid ehitusfaasist kuni kasutajaskonna haldamiseni välja.

BSD (Berkeley Software Distribution) on võrreldav, kohati isegi sünonüümselt kasutatav MIT-iga, kuna mõlemad räägivad sama juttu sarnaselt kattuvatest põhiideedest. MIT litsents kui selline on koheldud nagu 'müüdina' ja osaliselt valetähenduslikult, sest seotud instituut (Massachusetts Institute of Technology) kasutas algselt mitmeid erinevaid litsentse, kaasa arvatud Expat ja X11. MIT litsentsi all enamasti mõeldaksegi nende Expat litsentsi.

Igatahes BSD (ja MIT/Expat) lubavad välja lasta patenteeritud tarkvara, ning kasutada seda tarkvara patenteeritud toodetes kuniks algsete autori- ja kasutusõiguste vastu ei eksita ning nendest tulenevad nõudmised on täidetud.

BSD näiteks võib tuua Reacti. React on JavaScripti raamistik, millega on võimalik luua komponentide abil interaktiivseid kasutajaliideseid.

Millist litsentsi valida?

Üldiselt tuleb suuta tuvastada, millised on need nõudmised, millele planeeritav toode/tarkvara vastama peab. Sellele võib kaasa aidata selline lehekülg Choose A License - kui asi puudutab muidugi vabavaralist lähenemist. Eelpool kirjeldatud litsentside mitmeti koos kasutamisel ei tohiks väga probleeme tekkida (a la väiksem osa koodist pärineb mõnelt copyleft tootelt/koodist), aga tasub alati üle uurida, millised litsentsid sobivad oma eesmärkidega paremini ja millised pigem mitte. Parema toote ja vabaduse suudavad tagada ainult hästi tehtud eeltöö, sest kuigi pealtnäha on litsentsid võibolla kompaktsed lahendused oma õiguste kaitsmiseks, või tööde vabaks levitamiseks, on tegemist siiski üsnagi detailsete ja keeruliste lahendustega.

Mainin veel lisaks, et viimases viidatud materjalis, 'Understanding Open Source and Free Software Licensing' on väga ilusasti lühidalt kokku võetud litsentsiteemasid puudutavad suuremad teemad illustratiivsete tabelite näol.

Kasutatud materjalid:

  • https://www.gnu.org/licenses/copyleft.en.html#:~:text=Copyleft%20is%20a%20general%20method,in%20the%20public%20domain%2C%20uncopyrighted.
  • https://opensource.com/resources/what-is-copyleft
  • https://moqod.com/understanding-open-source-and-free-software-licensing/

Comments

Popular posts from this blog

Uudistevoo mõju traditsioonilisele meediale

Netikett - väljanägemine võrgus