GNU General Public License (kraticeGNU GPL i samoGPL) je vjerojatno najpoznatija i najšire korištenalicenca zaslobodan softver, koju je originalno kreiraoRichard Stallman za projektGNU, a o kojoj se danas brineFree software foundation (FSF). GPL je napisan tako da sačuva slobode korisnika softvera: pravo na korištenje u bilo koju svrhu, pravo na izradu kopija i pravo na proučavanje, mijenjanje i redistribuciju modificiranog programa.[1] GNU GPL je,copyleft licenca, što znači da zahtjeva da sav softver koji nastane kao modifikacija ovog softvera, također garantira iste slobode (tj. bude distribuiran pod istom licencom), a za razliku od srodneLGPL licence, to se odnosi i na onaj softver koji se koristi u sprezi s njime.
Prva verzija izdana je u siječnju 1989., uvela je dva važna ograničenja: Softver pod ovom licencom ne može se kombinirati sa softverom pod ostalim, manje slobodnim licencama (za razliku odLGPL-a) i drugo, program ne može distribuirati samo u binarnom formatu, već distributor mora pružiti pristup čitljivom izvornom kodu. Prije GPL verzije 2, Linux je koristio ovu verziju licence. Danas većina softvera koristi GPL2 i GPL3.
Glavna promjena u verziji 2 je, po Stallmanu, stavka 7 "sloboda ili smrt", koja kaže da ako zakon zabrani distribucijuizvornog koda uz izvršnu datoteku, program se uopće ne može distribuirati.[2] Ovu licencu koristi npr. Linux, jezgra operativnog sustavaGNU/Linux, ali i mnogi programi za Linux.
GPL verzija 3, najnovija je GPL licenca koja je nastala 2005, između ostalog iz potrebe ta sprečavanje tzv. "tivoizacije" - slučaj gdje proizvođač nekoghardwarea daje slobodno softver za njega, ali u isto vrijeme onemogućava učitavanje promijenjenog softvera u taj hardware[3](naziv tivoizacija dolazi od imena tvrtke TiVo).Linus Torvalds, izvorni autorLinuxa usprotivio se ovome, rekavši da je to pravo proizvođača hardvera. Važno je napomenuti da ni samaLinux jezgra, nije prešla na GPL3 zbog navodnih mana iste.[4] Unatoč tome, koristi ju sve više projekata slobodnog softvera za operacijski sustav GNU/Linux - dakle korisnički i sistemski software izvan jezgre sustava uključujući i softverGNU projekta - kao i projekti za druge operacijske sustave.