GNU General Public License | ||
---|---|---|
GPLv3-logo | ||
Informasjon | ||
Forfatter | Free Software Foundation og Richard Stallman | |
Versjon | 3 | |
Utgave | Free Software Foundation | |
Dato | 25. februar 1989 | |
DFSG- kompatibel | Ja [ 1 ] | |
FSF godkjent | Ja | |
Gratis programvare | Ja [ 2 ] | |
OSI- godkjent | Ja [ 3 ] | |
Copyleft | Ja [ 2 ] [ 4 ] | |
Kan brukes sammen med andre lisenser | Ikke [ merknad 1 ] | |
Nettsted | https://www.gnu.org/licenses/gpl.html | |
GNU General Public License eller bedre kjent under navnet på engelsk GNU General Public License (eller ganske enkelt forkortelsen på engelsk GNU GPL ) er en opphavsrettslisens som er mye brukt i verden av fri programvare og åpen kildekode, [ 6 ] og garanterer sluttbrukere (enkeltpersoner, organisasjoner, bedrifter) friheten til å bruke, studere, dele (kopiere) og modifisere programvaren. Formålet er todelt: å erklære at programvaren som dekkes av denne lisensen er gratis, og å beskytte den (gjennom en praksis kjent som copyleft ) mot tilegnelsesforsøk som begrenser disse frihetene til nye brukere hver gang verket distribueres, endres eller utvides. . Denne lisensen ble opprinnelig opprettet av Richard Stallman , grunnlegger av Free Software Foundation (FSF) for GNU-prosjektet .
Free Software Foundation gjør GPL tilgjengelig for alle som ønsker å beskytte rettighetene til sluttbrukerne (bruke, dele, studere og endre), og for å gi mottakerne av et dataprogram eller annet arbeid rettighetene til GPL- definisjonen av gratis programvare . [ 7 ] GPL skiller seg fra offentlig domene eller andre kjente fri programvarelisenser som tillatte ved å fremheve copyleft, eller bare tillate kopier og avledninger av et verk under GPL å opprettholde den samme lisensen.
Det meste av GNU-programvare er copyleft, men ikke alt; imidlertid må all GNU-programvare være fri programvare.
Noe av GNU-programvaren ble skrevet av Free Software Foundation-teamet, men det meste kommer fra frivillige. Free Software Foundation eier opphavsretten til noe av programvaren, noe er under opphavsretten til forfatterne.
David A. Wheeler hevder at copyleften levert av GPL var avgjørende for suksessen til Linux- baserte systemer , og ga programmererne som bidro til kjernen forsikringen om at arbeidet deres ville komme alle til gode og forbli gratis, uansett. i stedet for å bli utnyttet av programvareselskaper som ikke trenger å gi noe tilbake til samfunnet . [ 8 ]
Brukere eller selskaper som distribuerer verkene sine under GPL kan belaste eller distribuere dem gratis. Dette skiller GPL fra programvarelisenser som forbyr kommersiell distribusjon. FSF argumenterer for at kommersiell distribusjon av programvaren (inkludert redistribusjon) ikke bør begrenses, [ 9 ] og i den forbindelse sier GPL eksplisitt at verk som dekkes av denne lisensen kan selges til enhver pris.
GPL ble opprettet av Richard Stallman i 1989, for å beskytte programmer utgitt som en del av GNU-prosjektet. Den originale GPL var basert på foreningen av lignende lisenser brukt i tidligere versjoner av GNU Emacs , GNU Debugger og GNU C Compiler . [ 10 ] Disse lisensene inneholdt bestemmelser som ligner på gjeldende GPL, men var spesifikke for hvert program, noe som gjorde dem inkompatible, til tross for at de var samme lisens. Stallmans mål var å produsere en lisens som kunne brukes på ethvert prosjekt, noe som gjør det mulig å bruke den i mange prosjekter for å dele kode.
Den andre delen av denne lisensen, versjon 2, ble utgitt i 1991. I løpet av de neste 15 årene ble medlemmer av FOSS -fellesskapet bekymret for problemer i GPLv2 som gjorde at GPL-programvare kunne utnyttes til formål i strid med lisensen. [ 11 ] Disse problemene inkluderte tivoization , som er inkludering av GPL-programvare på maskinvare som vil nekte å kjøre modifiserte versjoner av programvaren deres, kompatibilitetsproblemer som med Affero General Public License ; og patenttvister mellom Microsoft og gratis og åpen kildekode-leverandører, som ble sett på som et forsøk på å våpengjøre patenter mot FOSS-fellesskapet.
Historisk har GPL -familien av lisenser vært en av de mest populære programvarelisensene i fri programvaredomenet . [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ 17 ] [ 18 ] Den tredje versjonen av denne lisensen (GNU GPLv3) ble utviklet for å prøve å løse disse problemene og ble offisielt utgitt den 25. juli 2007. Dette er den første copyleft -lisensen for generell bruk, noe som betyr at avledede verk kun kan distribueres under vilkårene i samme lisens.
Versjon 1 av GNU GPL, [ 19 ] utgitt 25. februar 1989, [ 20 ] forhindret de to viktigste måtene programvaredistributører begrenset frihetene definert av fri programvare på. Det første problemet var at distributørene bare publiserte de binære filene, funksjonelle og kjørbare, men ikke forståelige eller modifiserbare av mennesker. For å forhindre dette, etablerte GPLv1 at enhver leverandør av fri programvare, i tillegg til å distribuere den binære filen, også må frigi forståelig kildekode som kan endres av mennesker, under samme lisens (del 3a og 3b i lisensen).
Det andre problemet var at distributører kunne legge til ytterligere begrensninger, enten ved å legge til begrensninger i lisensen eller ved å kombinere programvaren med programvare som hadde andre begrensninger på distribusjonen. Hvis dette ble gjort, ville foreningen av de to settene med begrensninger bli brukt på den kombinerte jobben slik at uakseptable begrensninger kunne legges til. For å forhindre dette ga GPLv1 mandat at modifiserte versjoner som helhet måtte distribueres under GPLv1-vilkårene (del 2b og 4 i lisensen). Derfor kan programvare distribuert under GPLv1 kombineres med programvare under mer tillatelige vilkår og ikke med programvare under mer restriktive lisenser, noe som ville være i konflikt med kravet om at all programvare må distribueres under vilkårene i GPLv1.
I følge Richard Stallman var den største endringen i GPLv2 "Liberty or Death"-klausulen, som han kaller det i avsnitt 7 i det dokumentet. [ 21 ] Denne delen sier at hvis noen pålegger begrensninger som forbyr deg å distribuere GPL-kode på en måte som påvirker brukernes friheter (for eksempel hvis en lov krever at personen bare distribuerer programvaren i binært format), kan vedkommende ikke distribuere GPL programvare. Håpet er at dette vil gjøre det mindre fristende for bedrifter å ty til patenttrusler for å kreve godtgjørelse fra fri programvareutviklere.
I 1991 ble det klart at en mindre restriktiv lisens ville være strategisk nyttig for C-biblioteket og for programvarebiblioteker som i hovedsak gjorde det arbeidet som andre eksisterende kommersielle biblioteker gjorde. [ 22 ] Da versjon 2 av GPL ble utgitt i juni 1991, ble en andre Library General Public License introdusert samtidig og nummerert versjon 2 for å markere at de to er komplementære. Versjonstallene divergerte i 1999 da versjon 2.1 av LGPL ble utgitt, den ble omdøpt til GNU Lesser General Public License for å gjenspeile dens plass i denne filosofien.
På slutten av 2005 kunngjorde Free Software Foundation (FSF) at de jobbet med versjon 3 av GPL (GPLv3). 16. januar 2006 ble det første utkastet til GPLv3 publisert, og offentlig høring startet. Den offentlige høringen var opprinnelig planlagt å vare fra ni til femten måneder, men ble til slutt utvidet til atten måneder, hvor fire utkast ble publisert. Den offisielle GPLv3 ble utgitt av FSF 29. juni 2007. [ 23 ]
I følge Stallman skjedde de viktigste endringene innen programvarepatenter, kompatibiliteten til fri programvarelisenser, definisjonen av kildekode og maskinvarerestriksjoner angående maskinvaremodifikasjoner. [ 23 ] [ 24 ] Andre endringer er relatert til internasjonalisering, hvordan lisensbrudd håndteres, og hvordan ytterligere tillatelser kan gis av opphavsrettsinnehaveren. Den legger også til bestemmelser for å frata DRM dens juridiske verdi, slik at det er mulig å bryte DRM i GPL-programvare uten å bryte lover som DMCA . [ 25 ]
Den offentlige konsultasjonsprosessen ble koordinert av Free Software Foundation med bistand fra Software Freedom Law Center, Free Software Foundation Europe , [ 26 ] og andre fri programvaregrupper. Offentlige kommentarer ble samlet inn gjennom gplv3.fsf.org-portalen. [ 27 ]
I løpet av den offentlige høringsprosessen ble det sendt inn 962 merknader til det første utkastet. [ 28 ] Til slutt, på slutten av prosessen, ble antallet 2 636 kommentarer nådd. [ 29 ] [ 30 ] [ 31 ]
Det tredje utkastet ble utgitt 28. mars 2007. [ 32 ] Dette utkastet inkluderer mekanismer som tar sikte på å unngå avtaler knyttet til patenter, slik som den kontroversielle avtalen mellom Microsoft og Novell og begrenser anti-tivoiseringsklausulene til en juridisk definisjon av et patent. "bruker" eller "forbrukerprodukt". Det eliminerer også delen "Geografiske begrensninger", hvis sannsynlige sletting ble annonsert ved lanseringen av den offentlige høringen.
Det fjerde utkastet, [ 33 ] som var det siste, ble utgitt 31. mai 2007. Det introduserte kompatibilitet med Apache-lisenser , klargjorde rollen til tredjepartskontraktører og gjorde et unntak for å unngå problemene forårsaket av avtalen. Microsoft -Novell, som i paragraf 6 i seksjon 11 sier følgende:
Du kan ikke distribuere et dekket verk hvis du er part i en ordning med en tredjepart som driver med distribusjon av programvare, der du betaler til tredjeparten basert på omfanget av distribusjonsaktiviteten til verket, og i kraft av hvilken den gir, til enhver av partene som vil motta det dekkede verket, en diskriminerende patentlisensMålet med dette er å gjøre denne typen avtaler ineffektive. Lisensen er rettet mot at Microsoft må utvide patentlisenser for å gi Novell-kunder bruk av GPLv3, noe som kun er mulig dersom Microsoft er en lovlig distributør av programvaren under GPLv3. [ 34 ] [ 35 ]
Noen Linux-kjerneutviklere på høyt nivå kommenterte og kom med offentlige uttalelser til media om deres innvendinger mot utkast 1 og 2. [ 36 ]
GPLs vilkår og betingelser må gjøres tilgjengelige for alle som mottar en kopi av verket som denne lisensen er brukt på. Enhver lisens som disse vilkårene gjelder gir tillatelse til å gjøre endringer i et verk, lage kopier av det og distribuere det eller distribuere noen av dets avledede versjoner. Med denne lisensen har du lov til å ta betalt for distribusjonen av hvert eksemplar, eller ikke ta betalt i det hele tatt. Dette siste punktet skiller GPL-lisenser fra programvarelisenser som forbyr kommersiell distribusjon. FSF argumenterer for at det ikke bør være rom for kommersielle begrensninger i fri programvare, [ 37 ] og verk under denne type lisens kan selges til enhver pris.
GPL sier videre at en distributør ikke kan pålegge "begrensninger på rettighetene gitt av GPL." Dette forbyr aktiviteter som distribusjon av programvare under en konfidensialitetsavtale eller kontrakt. Distributører under GPL gir også en lisens til alle deres programvarepatenter, som skal brukes i GPL-programvare.
Den fjerde delen av versjon 2-lisensen og den syttende delen av versjon 3 krever at programmer distribuert som forhåndskompilerte binære filer ledsages av en kopi av kildekoden, et skriftlig tilbud om å distribuere kildekoden gjennom samme mekanisme som den forhåndskompilerte binære filen. , eller et skriftlig tilbud om å få kildekoden til den mottatte binære filen under GPL. Den andre delen av versjon 2 og den femte delen av versjon 3 sier også at du må gi "alle mottakere en kopi av denne lisensen sammen med programmet." Versjon 3 av lisensen lar kildekoden gjøres tilgjengelig på forskjellige plattformer i samsvar med den syvende delen. Disse inkluderer nedlasting av kildekode fra en tilstøtende nettverksserver eller skaffe den gjennom peer-to-peer, så lenge den kompilerte koden er tilgjengelig og det er "klare instruksjoner" om hvor du finner kildekoden.
FSF tillater ikke bruk av opphavsrett til et verk lisensiert under GPL, med mindre forfatteren eksplisitt bruker dem (dette skjer sjelden med unntak av programmer som er en del av GNU-prosjektet). Bare individuelle rettighetshavere har myndighet til å saksøke et lisensbrudd når det oppstår.
Distribusjonsrettighetene gitt av GPL for modifiserte versjoner av verket er ikke ubetingede. Når noen distribuerer under GPL ved å legge til egne modifikasjoner på verket, kan ikke kravene til distribusjon av hele verket være større enn kravene som er i GPL.
Dette kravet er kjent som copyleft . Det når sitt sanne potensial når det gjelder opphavsrett på programvare. Hvis et GPL-verk er opphavsrettsbeskyttet, har du ikke rett til å distribuere dette verket, gjøre endringer (bortsett fra til eget bruk). Ved å bruke en GPL på et verk, vil rettighetene til verket være beskyttet av lov om opphavsrett. Og hvis du på den annen side distribuerer kopier av verket (lisensiert under GPL) uten å overholde vilkårene i GPL (for eksempel ved å holde kildekoden hemmelig), kan du bli saksøkt av den opprinnelige forfatteren for opphavsrett. Forfatter.
Copyleft bruker derfor opphavsrettsloven for å oppnå det motsatte av sitt vanlige formål: i stedet for å pålegge begrensninger, gir det rettigheter, på en slik måte at det garanteres at rettighetene ikke senere kan tas bort eller begrenses. Det sikrer også at hvis ubegrensede rettigheter til omfordeling ikke gis eller det oppstår en juridisk svikt, er du under lovens beskyttelse.
Mange distributører av GPLed-programmer samler kildekoden med den kjørbare filen. Et alternativ som oppfyller begrunnelsen for copyleft er å gi et skriftlig tilbud om å distribuere kildekoden på fysiske medier (som en CD) på forespørsel. I praksis blir mange programmer under GPL distribuert over Internett, og koden vert på FTP , HTTP , etc. servere.
Copyleft gjelder kun når det kommer til redistribuering av programmet. I henhold til grunnlaget er det tillatt å gjøre endringene som er gjort private, uten forpliktelse til å avsløre endringene så lenge denne programvaren er til eget bruk (ikke videredistribuert).
Det var en debatt om hvorvidt det var et brudd på GPL å frigi kildekoden både i uklar form og i en form som var bevisst kompleks å forstå. Den generelle konsensus var at selv om det var uetisk, ble det ikke ansett som et brudd. Saken ble oppklart da lisensen ble endret til å kreve at "foretrukket" versjon av kildekoden måtte være tilgjengelig. [ 38 ]
GPL ble designet for å være lisensorientert i stedet for kontraktsorientert. [ 39 ] [ 40 ] I noen jurisdiksjoner er det juridiske skillet mellom en lisens og en kontrakt svært viktig: kontrakter kan håndheves under kontraktslovgivningen, mens lisenser håndheves under lov om opphavsrett. Denne forskjellen er imidlertid ikke nyttig i de ulike jurisdiksjonene der det ikke er noen forskjell mellom kontrakter og lisenser, for eksempel sivilrettslige systemer. [ 41 ]
De som ikke godtar GPLs vilkår og betingelser, har ikke lov til å kopiere eller distribuere GPLed-programvare eller avledede verk. Men hvis du ikke omdistribuerer programmet, kan du bruke programvaren i organisasjonen din slik du ønsker, og disse verkene (inkludert programmer) bygget under denne bruken er ikke nødvendig for å være lisensiert under denne lisensen.
Teksten som utgjør GPL er i seg selv opphavsrettsbeskyttet og eies av FSF. FSF eier imidlertid ikke opphavsretten til et verk publisert under GPL, med mindre forfatteren eksplisitt tildeler opphavsretten til FSF (noe som sjelden skjer med unntak av programmer som er en del av GNU-prosjektet). Bare individuelle rettighetshavere har myndighet til å saksøke et lisensbrudd når det oppstår.
FSF tillater publikum å opprette nye lisenser basert på GPL, så lenge de avledede lisensene ikke bruker GPL uten tillatelse. Dette anbefales ikke, da en slik lisens kan være uforenlig med GPL. Andre lisenser opprettet av GNU-prosjektet inkluderer GNU Lesser General Public License og GNU Free Documentation License.
Kode lisensiert under flere lisenser kan kombineres med GPL-lisensierte programmer uten konflikt, forutsatt at kombinasjonen av restriksjoner på arbeidet som helhet ikke legger noen ytterligere begrensninger utover det som er tillatt av GPL. [ 42 ] I tillegg til de vanlige vilkårene for GPL, er det ytterligere begrensninger og tillatelser som kan gjelde:
FSF opprettholder en liste [ 46 ] over GPL-kompatible fri programvarelisenser [ 47 ] [ 48 ] med mange av de vanligste fri programvarelisensene, for eksempel den originale MIT/X-lisensen, BSD-lisensen (i sin nåværende form av tre klausuler) og Artistic 2.0-lisensen. [ 49 ]
David A. Wheeler har tatt til orde for frie/åpne programvareutviklere til å kun bruke GPL-kompatible lisenser, fordi det ellers gjør det vanskeligere for andre å delta og bidra til koden. [ 50 ] Som et spesifikt eksempel på inkompatibilitet kan ikke Sun Microsystems ' ZFS inkluderes i GPL til Linux-kjernen, fordi den er under en GPL-inkompatibel CDDL . ZFS er også beskyttet av patenter, så uavhengig distribusjon utviklet av en GPL-implementering vil kreve tillatelse fra Oracle. [ 51 ]
Flere selskaper bruker flere lisenser for å distribuere en GPL-versjon og selge en proprietær til andre selskaper som ønsker å kombinere kodepakken med proprietær kode, ved bruk av dynamisk lenking eller ikke. Eksempler på disse selskapene inkluderer MySQL AB , Digia PLC (Qt-rammeverk, Nokia før 2011), Red Hat ( Cygwin ) og RiverBank Computing ( PyQt ). Andre selskaper, som Mozilla Foundation (noen av produktene deres inkluderer Mozilla Application Suite , Mozilla Thunderbird og Mozilla firefox ), bruker flere lisenser for å distribuere versjoner under GPL og andre åpen kildekode-lisenser.
GPL, som er et dokument som tildeler visse rettigheter til brukeren, har form av en kontrakt, og det er derfor det vanligvis kalles en lisensavtale eller lisensavtale. [ 52 ] [ 53 ] I land med en angelsaksisk tradisjon er det et doktrinært skille mellom lisenser og kontrakter, men dette forekommer ikke i land med sivil eller kontinental tradisjon. Som en kontrakt må GPL oppfylle de juridiske kravene for kontraktsdannelse i hver jurisdiksjon.
Lisensen har blitt anerkjent, blant annet [ 54 ] av domstoler i Tyskland , spesielt i tilfelle av en dom i en domstol i München , [ 55 ] som positivt indikerer dens gyldighet i sivilrettslige jurisdiksjoner.
Programvare under GPL kan brukes til alle formål, inkludert kommersielle formål og til og med som et verktøy for å lage proprietær programvare . Ved rent proprietær (eller intern) bruk, uten salg eller distribusjon involvert, kan programvaren endres uten å frigi kildekoden, men ellers må kildekoden og eventuelle endringer som gjøres i den gjøres tilgjengelig for brukerne, siden i dette tilfellet brukerens rettigheter er beskyttet av copyleft . På denne måten trenger ikke applikasjoner installert på fremtredende GPL - operativsystemer som Linux og også GNU Compiler Collection å være lisensiert under GPL eller distribuert med kildekoden tilgjengelig siden lisensene ikke er plattformavhengige. . For eksempel, hvis et program utelukkende består av originalkode, eller hvis det er kombinert med programvare som ikke overholder copyleft-kravene, trenger det ikke være lisensiert under GPL eller distribuert med kildekoden tilgjengelig. Bare hvis et program bruker GPL -kodebiter (og programmet er distribuert) må hele kildekoden gjøres tilgjengelig under samme lisens. Den andre GNU-lisensen, LGPL ( GNU Lesser General Public License ) ble opprettet for å ha mindre restriktive rettigheter enn GPL , så i dette tilfellet i et program som bruker LGPL-kodefragmenter, er det ikke nødvendig å frigi den originale koden. Noen andre gratis programvareprogrammer (som MySQL er et fremtredende eksempel ) er dobbeltlisensiert under flere lisenser, ofte med et av sertifikatene GPL .