Giay phep Cong cong GNU (tieng Anh: GNU General Public License, viet tat GNU GPL hay chi GPL) la giay phep phan mem tu do đuoc su dung rong rai, đam bao cho nguoi dung cuoi tu do chay, nghien cuu, sua đoi va chia se phan mem. Giay phep ban đau đuoc viet boi Richard Stallman cua Quy Phan mem Tu do (FSF) cho Du an GNU, va cap cho nguoi nhan chuong trinh may tinh quyen cua Đinh nghia Phan mem Tu do. GPL la giay phep copyleft, co nghia la tac pham phai sinh chi co the đuoc phan phoi theo cac đieu khoan cap phep tuong tu. Đay la su phan biet đoi voi giay phep phan mem tu do cho phep, trong đo giay phep BSD va Giay phep MIT đuoc su dung rong rai la vi du. GPL la giay phep copyleft đau tien đe su dung chung.
Trong lich su, gia đinh giay phep GPL la mot trong nhung giay phep phan mem pho bien nhat trong linh vuc phan mem tu do va nguon mo. Cac chuong trinh phan mem mien phi noi bat đuoc cap phep theo GPL bao gom nhan Linux va Bo bien dich GNU (GCC). David A. Wheeler cho rang copyleft đuoc cung cap boi GPL la rat quan trong đoi voi su thanh cong cua cac he thong dua tren Linux, giup cac lap trinh vien đong gop cho hat nhan su đam bao rang cong viec cua ho se mang lai loi ich cho toan the gioi. cac cong ty phan mem se khong phai tra lai cho cong đong.
Trong nam 2007, phien ban thu ba cua giay phep (GNU GPLv3) đa đuoc phat hanh đe giai quyet mot so van đe nhan thuc voi phien ban thu hai (GNU GPLv2) đa đuoc phat hien trong qua trinh su dung lau dai cua no. Đe giu cho giay phep cap nhat, giay phep GPL bao gom mot đieu khoan "bat ky phien ban sau" tuy chon, cho phep nguoi dung lua chon giua cac đieu khoan goc hoac cac đieu khoan trong cac phien ban moi nhu đuoc FSF cap nhat. Cac nha phat trien co the bo qua no khi cap phep phan mem cua ho; vi du hat nhan Linux đuoc cap phep theo GPLv2 ma khong co menh đe "bat ky phien ban nao sau nay".


Lich su GPL đuoc viet boi Richard Stallman nam 1989, đe su dung voi cac chuong trinh đuoc phat hanh nhu la mot phan cua du an GNU. GPL ban đau đa đuoc dua tren mot su thong nhat cua giay phep tuong tu su dung cho cac phien ban đau tien cua GNU Emacs (1985), GNU Debugger va GNU C Compiler. Cac giay phep nay chua cac đieu khoan tuong tu nhu GPL hien đai, nhung cu the cho tung chuong trinh, khien chung khong tuong thich, mac du la cung mot giay phep. Muc tieu cua Stallman la tao ra mot giay phep co the đuoc su dung cho bat ky du an nao, do đo lam cho nhieu du an co the chia se ma.
Phien ban thu hai cua giay phep, GPL v2, đuoc phat hanh vao nam 1991. Trong vong 15 nam tiep theo, cac thanh vien cua cong đong phan mem tu do tro nen lo ngai ve cac van đe trong giay phep GPLv2 co the cho ai đo khai thac phan mem cap phep GPL theo nhung cach trai voi muc tieu cua giay phep. Nhung van đe nay bao gom tivoization (bao gom phan mem đuoc cap phep GPL trong phan cung tu choi chay cac phien ban phan mem cua no), cac van đe tuong thich tuong tu nhu cua Affero General Public License - va cac giao dich bang sang che giua Microsoft va cac nha phan phoi phan mem tu do nguon mo, ma mot so đuoc xem nhu la mot no luc đe su dung cac bang sang che nhu mot vu khi chong lai cong đong phan mem tu do.
Phien ban 3 đa đuoc phat trien đe co gang giai quyet nhung moi quan ngai nay va đa chinh thuc đuoc phat hanh vao ngay 29 thang 6 nam 2007.


= Phien ban 1 =
Phien ban đau tien cua GNU GPL, phat hanh ngay 25/2/1989, ngan chan hai cach chinh ma cac nha phan phoi phan mem han che cac quyen tu do đinh nghia phan mem tu do. Van đe đau tien la cac nha phan phoi co the xuat ban cac file nhi phan chi co the thuc thi đuoc, nhung khong the đoc hoac sua đoi đuoc boi con nguoi. Đe ngan chan đieu nay, GPLv1 đa tuyen bo rang viec sao chep va phan phoi cac ban sao hoac bat ky phan nao cua chuong trinh cung phai lam cho ma nguon co the đoc đuoc theo cac đieu khoan cap phep giong nhau.
Van đe thu hai la cac nha phan phoi co the them cac han che, hoac them giay phep, hoac bang cach ket hop phan mem voi cac phan mem khac co cac han che khac ve phan phoi. Su ket hop cua hai bo han che se ap dung đoi voi viec ket hop, do đo bo sung cac han che khong đuoc chap nhan. Đe ngan chan đieu nay, GPLv1 đa tuyen bo rang cac phien ban sua đoi, noi chung, phai đuoc phan phoi theo cac đieu khoan trong GPLv1. Do đo, phan mem đuoc phan phoi theo cac đieu khoan cua GPLv1 co the đuoc ket hop voi phan mem theo cac đieu khoan de hieu hon, vi đieu nay se khong thay đoi cac đieu khoan ma toan bo co the đuoc phan phoi. Tuy nhien, phan mem đuoc phan phoi theo GPLv1 khong the đuoc ket hop voi phan mem đuoc phan phoi theo giay phep han che hon, vi đieu nay se xung đot voi yeu cau toan bo đuoc phan phoi theo cac đieu khoan cua GPLv1.


= Phien ban 2 =
Theo Richard Stallman, thay đoi lon trong GPLv2 la menh đe "Tu do hoac chet", nhu ong goi no – Phan 7. Phan nay noi rang nguoi đuoc cap phep co the phan phoi tac pham đuoc GPL cung cap chi khi ho co the đap ung tat ca cac nghia vu cua giay phep, mac du co bat ky nghia vu phap ly nao khac ma ho co the co. Noi cach khac, nghia vu cua giay phep co the khong bi cat đut do cac nghia vu mau thuan nhau. Quy đinh nay nham ngan can bat ky ben nao su dung khieu nai vi pham bang sang che hoac kien tung khac đe lam giam su tu do cua nguoi dung theo giay phep.
Đen nam 1990, no tro nen ro rang rang mot giay phep it han che hon se mang tinh chien luoc huu ich cho thu vien C va cac thu vien phan mem ve co ban đa thuc hien cong viec cua nhung nguoi so huu đoc quyen hien co; khi phien ban 2 cua GPL (GPLv2) đuoc phat hanh vao thang 6 nam 1991, do đo, giay phep thu hai – the GNU Library General Public License – đuoc gioi thieu cung mot luc va đuoc đanh so bang phien ban 2 đe cho thay ca hai đeu bo sung cho nhau. Cac so phien ban đuoc phan tach vao nam 1999 khi phien ban 2.1 cua LGPL đuoc phat hanh, đuoc đoi ten thanh GNU Lesser General Public License đe phan anh vi tri cua no trong triet ly.
Pho bien nhat "GPLv2 hoac bat ky phien ban nao sau nay" đuoc nguoi dung cua giay phep neu ro, cho phep nang cap len GPLv3.


= Phien ban 3 =
Cuoi 2005, Free Software Foundation (FSF) đa cong bo phien ban 3 cua GPL (GPLv3). Vao ngay 16 thang 1 nam 2006, "ban du thao" đau tien cua GPLv3 đa đuoc xuat ban, va viec tham van cong đong đa bat đau. Cac tham van cong đong đuoc ke hoach ban đau cho 9-15 thang, nhung cuoi cung keo dai đen muoi tam thang voi bon du thao đuoc cong bo. Cac GPLv3 chinh thuc đuoc phat hanh boi FSF tren 29 Thang Sau 2007. GPLv3 đuoc viet boi Richard Stallman, voi co van phap ly tu Eben Moglen va Richard Fontana tu Software Freedom Law Center.
Theo Stallman, nhung thay đoi quan trong nhat lien quan đen bang sang che phan mem, kha nang tuong thich giay phep phan mem tu do, đinh nghia "ma nguon", va han che phan cung ve sua đoi phan mem ("tivoization"). Cac thay đoi khac lien quan đen quoc te hoa, cach xu ly vi pham giay phep va cach chu so huu ban quyen cap quyen bo sung.
No cung bo sung mot đieu khoan "tuoc quyen" (DRM) ve gia tri phap ly, đe moi nguoi co the pha vo bat cu đieu gi ma toa an co the nhan ra la DRM tren phan mem GPL ma khong vi pham luat nhu DMCA.
Qua trinh tham van cong đong đuoc đieu phoi boi Quy Phan mem Tu do voi su ho tro cua Software Freedom Law Center, Free Software Foundation Europe, va cac nhom phan mem tu do khac. Nhan xet đuoc thu thap tu cong chung thong qua cong web gplv3.fsf.org, su dung phan mem đuoc viet co muc đich đuoc goi la stet.
Trong qua trinh tham van cong đong, 962 y kien đa đuoc đe trinh cho du thao đau tien. Đen cuoi giai đoan thao luan, tong cong 2.636 y kien đa đuoc đe trinh.
Du thao thu ba đuoc phat hanh vao ngay 28/3/2007. Du thao nay bao gom ngon ngu nham ngan chan thoa thuan bang sang che lien quan đen nhu thoa thuan bang sang che gay tranh cai giua Microsoft-Novell, va han che cac đieu khoan chong tivoization đen mot đinh nghia phap ly cua mot "nguoi su dung" va mot " san pham tieu dung ". No cung loai bo mot cach ro rang phan "Gioi han đia ly", co the loai bo kha nang đa đuoc cong bo tai buoi ra mat tham van cong đong.

Du thao thao luan thu tu, la ban cuoi cung, đuoc phat hanh vao ngay 31/5/2007. No đuoc gioi thieu la tuong thich voi Apache License v2.0 (cac phien ban truoc khong tuong thich), lam ro vai tro cua cac nha thau ben ngoai, va thuc hien mot ngoai le đe tranh cac van đe nhan thuc cua Microsoft - Thoa thuan theo phong cach khong chinh xac, noi trong Phan 11 đoan 6 rang:Ban khong the chuyen nhuong cong viec đuoc bao hiem neu ban la mot ben tham gia mot thoa thuan voi ben thu ba trong kinh doanh phan phoi phan mem, theo đo ban thanh toan cho ben thu ba dua tren muc đo hoat đong cua ban trong viec truyen đat cong viec va theo đo ben thu ba cap cho bat ky ben nao nhan đuoc cong viec đuoc bao hiem tu ban, giay phep bang sang che phan biet đoi xu...Đieu nay nham muc đich lam cho cac giao dich tuong lai nhu vay khong hieu qua. Giay phep nay cung co nghia la lam cho Microsoft gia han giay phep bang sang che cho khach hang cua Novell ve viec su dung phan mem GPLv3 cho tat ca nguoi dung cua phan mem GPLv3 đo; đieu nay chi co the xay ra neu Microsoft la mot "conveyor" hop phap cua phan mem GPLv3..
Du thao ban đau cua GPLv3 cung cho phep nguoi cap phep them yeu cau giong nhu Affero co the đa cam lo hong ASP trong GPL. Vi co nhung lo ngai ve chi phi hanh chinh cua viec kiem tra ma cho yeu cau bo sung nay, nen đa quyet đinh giu GPL va giay phep Affero đuoc tach ra.
Nhung nguoi khac, đac biet la mot so nha phat trien Linux kernel cao cap, vi du Linus Torvalds, Greg Kroah-Hartman, va Andrew Morton, đa binh luan voi cac phuong tien thong tin đai chung va đua ra tuyen bo cong khai ve phan đoi cua ho đoi voi cac du thao 1 va 2. cac nha phat trien đa đe cap đen cac đieu khoan du thao GPLv3 lien quan đen DRM/Tivoization, bang sang che va "han che bo sung" va canh bao ve viec Balkanisation cua "Open Source Universe". Linus Torvalds, nguoi đa quyet đinh khong chap nhan GPLv3 cho nhan Linux, nhac lai nhung loi chi trich cua ong vai nam sau đo.
GPLv3 cai thien kha nang tuong thich voi mot so giay phep phan mem nguon mo nhu Giay phep Apache, phien ban 2.0 va Giay phep Cong cong GNU Affero, ma GPLv2 khong tuong thich. Tuy nhien, phan mem GPLv3 chi co the đuoc ket hop va chia se ma voi phan mem GPLv2 neu giay phep GPLv2 đuoc su dung co menh đe "hoac sau" tuy chon va phan mem đuoc nang cap len GPLv3. Trong khi đieu khoan "GPLv2 hoac bat ky phien ban sau nay" nao đuoc FSF coi la dang pho bien nhat cua phan mem cap phep GPLv2, Nha phat trien Toybox Rob Landley đa mo ta no nhu la mot đieu khoan cuu sinh. Cac du an phan mem đuoc cap phep voi menh đe tuy chon "hoac sau nay" bao gom Du an GNU, trong khi mot vi du noi bat khong co menh đe la hat nhan Linux.
Phien ban cuoi cung cua van ban giay phep đa đuoc xuat ban vao ngay 29/6/2007.


Y tuong cua giay phep Giay phep GPL phien ban 2 gom 12 đieu khoan, phien ban 3 gom 17 đieu khoan. Y tuong cua no la:
1. Phan mem GPL phai la phan mem tu do.
Tuc la nguoi su dung co 4 quyen sau voi phan mem GPL:

Tu do chay chuong trinh, cho bat cu muc đich nao.
Tu do tim hieu cach hoat đong cua chuong trinh, va tu do sua đoi no. (Quyen truy cap ma nguon la đieu kien tien quyet cho quyen tu do nay.)
Tu do tai phan phoi ban sao.
Tu do cai tien chuong trinh, va phat hanh nhung gi cai tien ra cong cong. (Quyen truy cap ma nguon la đieu kien tien quyet cho quyen tu do nay.)
So sanh voi thoa thuan giay phep nguoi dung cuoi cua phan mem thuong mai thuong khong cho nguoi dung cuoi quyen nao tru quyen su dung phan mem va luon han che ky thuat phan tich nguoc (reverse engineering).


Xem them Đa giay phep
Giay phep MIT
Giay phep BSD
Giay phep Apache
Giay phep LGPL
Giay phep Tai lieu Tu do GNU (GFDL)
Giay phep Cong cong Mozilla (MPL)


Chu thich Lien ket ngoai Ban dich tieng Viet GPL v2 luu tai OpenOffice.org
Giay phep Cong cong GNU v2.0 (3 ngon ngu)
Giay phep Cong cong GNU v1.0 – phien ban nay khong con đuoc khuyen khich (tieng Anh)
Hoi đap ve GPL (8 ngon ngu)
Ban so thao cua Giay phep Cong cong GNU v3 – Quy Phan mem Tu do (tieng Anh)