GNU Bendroji Viešoji Licencija (angl. GNU General Public License arba GPL) – laisvosios programinės įrangos licencija, pradžioje sukurta GNU projektui, šiuo metu tai viena populiariausių atvirojo kodo licencijų.[1][2] Ši licenzija reikalauja dalintis kodo pakeitimais, patobulinimais, tokiu būdu kartu vystant projektą ir taip sukuriant „kooperacijos zoną“.[3] Komercinis naudojimas galimas (žr. RedHat, Ubuntu, Android) tačiau ne visada paprastas, reikalingi tam pritaikyti verslo modeliai.[4] Draudžiama imti licencijos mokestį už naudojimąsi GPL kompiuterinės programos turtinėmis autorių teisėmis, tačiau galima imti mokestį už GPL programinės įrangos kopijų suteikimą (pardavimą) ir/ar įvairias techninio palaikymo paslaugas.
Kuriant programinę įrangą buvo pastebėta, kad norint sukurti tam tikrą programą dažnai pakaktų tiesiog paimti kitą panašią ir prisitaikyti savo reikmėm, bet dėl autorinių teisių bei licencijų keliamų apribojimų tai daryti nėra leidžiama. Tenka dubliuoti darbą kuriant tai, kas jau sukurta.
Programuotojai identifikavo poreikį laisvai programinei įrangai, kurią būtų leidžiama platinti ir tobulinti.
1984 metais atsirado GNU projektas[5], kurio tikslas buvo sukurti laisvą Unix šeimos operacinę sistemą GNU. Dabar GNU programinė įranga labai paplitusi ir dažnai naudojama – Unix bei Linux operacinės sistemos, įvairios taikomosios programos – The GIMP (piešimo programa), OpenOffice.org (biuro programų paketas).
Šių programų naudojimą reguliuoja GNU GPL [6], kurią galima pasiskaityti ir lietuviškai. Pagrindiniai licencijos reikalavimai yra šie:
Kai kurie stambūs gamintojai reikalauja prieš platinant pakeistą programą pašalinti iš jos pirmesnio autoriaus vardą ir prekinį ženklą, kurie nėra laisvai platinami.
GPL dažniausiai taikoma kompiuterių programoms, tačiau kai kada ją turi ir kitokia informacija (pavyzdžiui, muzikos natos).
2006 m. sausio 16 d. buvo paskelbtas pirmasis GNU GPL trečiosios versijos projektas. Tuo metu labai dideliam skaičiui laisvųjų programų (pvz., Linux branduoliui) taikomai antroji versijai jau buvo penkiolika metų – programavimo pasaulyje tai labai daug. Be to, GPLv2 laisvosios programinės įrangos plėtrai trukdė su programine įranga susijusių patentų išplitimas ir kiti gamybiniai apribojimai į įrenginius įdiegti modifikuotą laisvąją programinę įrangą. Free Software Foundation siekė, kad naujosios versijos kūrime dalyvautų kuo daugiau laisvųjų programų kūrėjų iš viso pasaulio bei didieji prorgaminės įrangos gamintojai. Licencijai skirtame tinklalapyje (http://gplv3.fsf.org/) kiekvienas galėjo aptarti jam nepatinkančius punktus ir siūlyti pataisas. GPL versija Nr. 3 buvo patvirtinat 2007 m. birželio 29 d.
Palyginus su ankstesne antrąja versija, naujojoje griežčiau apibrėžta išeities kodo sąvoka, stengiantis užtikrinti, jog turint šį kodą tikrai neiškils sunkumų iš jo sugeneruoti veikiančią programą. Kodo sąvoka dabar tiesiogiai apima taip pat ir įvairius šiame procese reikalingus skriptus ir specifines pagalbines programas, jei tokios naudojamos. Savo esme GPL antroji ir trečioji versijos išliko panašios, jose laisvosios programinės įrangos naudotojams suteiktos pagrindinės laisvės, teisės ir pareigos liko nepakitusios.
GPL versijoje Nr. 3 šią licenciją turinčios programos turtinių autorių teisių turėtojas taip pat turi teisę (bet ne pareigą) reikalauti:
Licencijoje aiškiau suformuluoti su patentais susiję klausimai. Programos autoriai jiems priklausančius ir programoje naudojamus patentus turi suteikti kiekvienam programos naudotojui.
GPL nereikalauja, kad serveryje veikiančios GPL programos, kuria naudojasi naudotojai per tinklą, išeities kodas būtų pateiktas ar padarytas prieinamu jos naudotojams. Tačiau to reikalaujama pagal GNU Affero GPL licenciją.