GNU projekt Not Unix® (GNU) oli algselt mõeldud tasuta operatsioonisüsteemi loomiseks ja GNU üldine avalik litsents (GPL) loodi selleks, et reguleerida, kuidas tarkvara levitamist ja muutmist käsitletakse. Seda litsentsi tuntakse ka copyleft litsentsina, kuna see erineb mitmel viisil tavalisest autoriõigusest. Litsentsi enda levitamine ja kasutamine on tasuta, kuigi muudatused ei pruugi olla lubatud. Mõned GNU üldise avaliku litsentsi põhipunktid on, et selle alusel välja antud tarkvara võib vabalt muuta ja edasi levitada ning sellisel viisil levitatav tarkvara peab säilitama GPL-i. GNU GPL-i lõi algselt Richard Stallman ja seda haldas mittetulundusühing Free Software Foundation (FSF).
Tarkvara, mida levitatakse GNU üldise avaliku litsentsi abil, võib müüa või pakkuda tasuta, kui järgitakse litsentsitingimusi. Vaba Tarkvara Fondi nimetuses viidatud vabadus on seotud teabevabadusega, mitte hinnaga. Kui müüakse GPL-i litsentsitud tarkvara, võivad tulevased litsentsisaajad saadud lähtekoodi muuta ja seejärel identse litsentsi alusel edasi levitada. Samuti on võimalik muuta GPL-i lähtekoodi erakasutuseks, kuna litsents ei nõua muudatuste avaldamist.
Aastatel 1989–2007 avaldati kolm erinevat GPL-i versiooni. Esimene versioon käsitles konkreetselt binaarfailide ja piiravamate litsentside kasutamise probleeme. See käsitles esimest probleemi, nõudes lähtekoodi levitamist koos binaaridega, kui tarkvara on litsentsinud GPL, ja käsitles piiravamaid litsentse, märkides, et muudetud GNU üldise avaliku litsentsi tarkvara peab säilitama GPL-i. 1991. aastal tehti teises versioonis mitmeid muudatusi, sealhulgas GPL-tarkvara binaarsel kujul avaldamise vältimine teatud tingimustel. Üks kolmandale versioonile tehtud muudatus võis püüda peatada teatud riistvaraseadmetel GPL-tarkvara kasutamine, kuid see takistab ka lõppkasutajatel oma muudatusi teha.
GNU üldist avalikku litsentsi võib kasutada ka muude asjade jaoks peale tarkvara, kui litsentsi järgitakse. GPL-i raames võib olla võimalik välja anda teksti või muud meediumit, kuigi GNU projekt lõi spetsiaalselt selleks otstarbeks erineva litsentsi. GNU vaba dokumentatsiooni litsents (GFDL) loodi spetsiaalselt kirjalike tööde jaoks, kuigi mõned võivad siiski valida GPL-i kasutamise. GFDL-i litsents võib välistada selle litsentsitud teksti lisamise GPL-i kasutavasse tarkvarasse, mis võib olla üheks põhjuseks GPL-i asemel.