Günümüzde Linux çekirdeğini kullanan işletim sistemleri büyük bir kitle tarafından genel olarak “Linux” adıyla anılmaktadır. Diğer yandan Özgür Yazılım Vakfı ve çeşitli özgür yazılım toplulukları, bir işletim sistemi olarak Linux’dan bahsederken, GNU araç ve yazılımlarını barındırıyor olması nedeniyle “GNU/Linux” tanımını kullanmaktadır. Bu makalemizde GNU yani Genel Kamu Lisansını inceleyeceğiz.
GNU Genel Kamu Lisansı (GNU GPL ya da GPL) birçok yerde kullanılan, özgür bir yazılım lisansıdır ve özgün hali Richard Stallman tarafından GNU projesi için yazılmıştır. Üçüncü ve son sürüm ise Richard Stallman’ın yöneticisi olduğu Özgür Yazılım Vakfı[1] (FSF), Eben Moglen ve Yazılım Özgürlüğü Hukuk Merkezi tarafından kaleme alındı ve özgür yazılım topluluklarının çeşitli itiraz ve katkılarıyla son halini aldı.
Bu lisansın güncel sürümü (GPL v3), Özgür Yazılım Vakfı (FSF) tarafından 29 Haziran 2007’de yayınlandı. GNU Kısıtlı Genel Kamu Lisansı yani LGPL ise GPL’in bazı yazılım kütüphaneleri için yazılmış sürümüdür. Copyleft esaslı lisansların en güçlü ve en yaygın örneği olan GNU GPL, günümüzde milyonlarca yazılım bileşeni tarafından kullanılmaktadır.
Genel Kamu Lisansı’nın Nitelikleri
* Özgürlük 0: Programı sınırsız kullanma özgürlüğü.
* Özgürlük 1: Programın nasıl çalıştığını inceleme ve amaçlara uygun değiştirme özgürlüğü.
* Özgürlük 2: Programın kopyalarını sınırsız dağıtma özgürlüğü.
* Özgürlük 3: Programın değiştirilmiş halini dağıtma özgürlüğü.
GPL’in Avantajları Nelerdir
* Kullanıcı yazılımının içinde ne olduğunu bilir. Bazı üretici firmaların yaptığı öne sürülen arka kapı (backdoor) yerleştirme vakaları imkânsızdır. Bu özellikle askeri kurumlar için önemli olmaktadır. GPL ile lisanslanan yazılımın kaynak kodu ortada olduğu için gerekli inceleme yapıldıktan sonra rahatlıkla kullanılabilir.
* Yazılım çok büyük bir kitle tarafından kullanılması sonucunda hataların keşfedilmesi ve yine çok büyük bir kitle tarafından geliştirildiği için düzeltilmesi süreci bazen dakikalarla sınırlı olur.
* Üretici firma, kullanıcı kitlesini geliştirmek için büyük bir şans elde etmiş olur.
* Kullanıcı yazılımda beğenmediği kısımları değiştirmekte hürdür. Bunu eğer kendisi yapamıyorsa bile yazılım çok büyük bir kitle tarafından kullanıldığı için, İnternet’te biraz aradıktan sonra büyük ihtimalle aynı yazılımın kendi istediği şekilde değiştirilmiş halini rahatlıkla bulur.
* Üretici firma, dünyaca popüler bir GPL yazılımın üreticisi olarak büyük bir prestij elde eder. Referans listesinde onbinlerce kişi tarafından kullanılan bir programı geliştirmiş bir firma olmanın onurunu taşır. Bunun sonucunda bir sonraki geliştirdiği yazılıma dışarıdan bakışlar daha profesyonelce olur ve firmanın ismi duyulduğu için de hedef kitle daha büyük olur.
* BSD gibi lisansların aksine GPL bir yazılımdan türetilen yazılım da GPL olmak zorunda olduğu için geliştiricinin kodunun çalınması riski yoktur.
* GPL bir yazılımın kodunun üzerinde oynayan kişi sayısı bazen binleri bulmaktadır. Bu nedenle programlar çok hızlı bir şekilde çok büyük bir kitle tarafından geliştirilir. Bu da yazılımın kalitesinin artmasında büyük bir rol oynar.
* GPL, yazılım sektöründe bir rekabet ortamı yaratmayı sağlar. Ücretli ve kapalı kod olarak sunulan yazılımların ücretsiz ve açık kodlu olanlara nispeten çok daha kaliteli olmasının gerekliliği ortaya çıkar. Bu da yazılımların kalitesini artırır ve sektörün ütopik tam rekabet piyasasına olabildiğince yaklaşmasını sağlar. Sektörü sadece arz değil, talep de yönlendirmeye başlar.
Kullanıcı ürünün gelişmesi için üretici firmaya bağımlı kalmaz. Özellikle kritik uygulamalarda kullanılan bir yazılımı üreten firmanın batması veya artık yazılıma destek vermemesi durumunda mağdur kalmaz. Kaynak kodu ortada olduğu için kullanıcı istenirse kendi bünyesinde isterse destek alarak yazılımı geliştirmeye devam edebilir.
GPL’in dezavantajı ise GPL ile lisansladığınız yazılımların başkaları tarafından değiştirilerek geliştirilen türevlerinin elde ettiği gelire yönelik maddi bir talepte bulunamazsınız. Kamuya açtığınız kodları kullanan türev yazılımların ticari süreçlerde kullanılması durumunda karşı tarafı bir çeşit rüçhan/gelir paylaşımı anlaşması imzalamaya zorlayan Mozilla Kamu Lisansı, bu gibi durumlarda önerilebilir.