 Yazar fka
Seviye:
|
duyuru Tarihi : 19.12.2008
Yazılımlarınızı
nasıl lisanslı hale
getirirsiniz?
Türkiye'de az bilinen bir duruma bugün açıklık getirmek istedim.
Bildiğimiz gibi yazdığınız yazılımlar potansiyel birer anonim yazılımdır. Yani başkasının alıp kullanmasında hiç bir sakınca görülmez. Buna sahip çıkmak adına yazılımlarınızı GNU/GPL Lisansı altında yazabilirsiniz. Yasal olarak haklarınız olur.
GNU/GPL ister ücretli, ister ücretsiz yazılımlar için kullanılabilir. Fakat sizden tüm kaynak kodu, yazılımın çıktısından farklı olarak, komutlar ve fonksiyonları karşı tarafa olduğu gibi teslim etmenizi ister. Ve bu komutları sizin belirlediğiniz lisansa göre lisans dışı olarak kullanabilir. Karşı tarafın bu durumda hiç bir yasal hakkı bulunmaz.
GNU/GPL lisanslarının esası, telif haklarınızdan feragat etmenizdir. Fakat kopyalama ve dağıtma hakkı size aittir.
GPL, Genel Kamu Lisansıdır. Ve bu lisanslı yazılıma bağlı tüm yazılımlar da serbest yazılım olmalıdır. Eğer serbest yazılım olmayan bir yazılıma bağlı bir kitaplığınız var ise, o halde LGPL kullanılır. LGPL, Kısıtlı Genel Kamu Lisansıdır.
Peki yazılımınız nasıl lisanslı olur?
Öncelikle yazılımınıza şu bilgiyi ekleyin:
{yazılımın adını ve ne yaptığını anlatan bir satır.}
Copyright (C) {yıl} {yazarın adı}
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Daha sonra altına, kendi iletişim bilgilerinizi ekleyin.
Eğer yazılımınız, interaktifse, açılışa şu metni koyunuz:
Gnomovizyon version 69, Copyright (C) yıl yazarın adı
Gnomovizyon comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details.
Gnomovizyon sürüm 69, Telif hakkı (C) yıl yazarın adı
Gnomovizyon için HİÇ BİR GARANTİ verilmemektedir; detaylar için `show w' yazın. Bu bir serbest yazılımdır ve belli koşullar altında yeniden dağıtılabilir; detaylar için `show c' yazın.
Yazdığınız programa göre show w ve show c değişebilir.
Eğer yazılımınız bir kitaplıksa
{kitaplığın adını ve ne yaptığını anlatan bir satır.}
Copyright (C) {yıl} {yazarın adı}
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
metnini yazılımınıza ekleyin.
Fakat şunu bilmenizde yarar var, free software, ücretsiz yazılım demek değildir, Özgür yazılımdır. Size tüm işlevi ve işlevi yapan programı satar/verir. Özgür olmayan yazılımlar ise size sadece işlevi satar/verir.
Eğer yazılımınızı kendiniz değiştirdiyseniz, tam bir netlik adına bunları belirten "what's new", "changelog", "changes" gibi belgeleri barındırmalısınız.
Ayrıca, yazılımınızda gnu/gpl ya da gnu/lgpl lisanslarının birer adedini barındırabilirsiniz. İngilizce olan zorunlu, Türkçe'si opsiyoneldir. Türkçe'nin olması ya da olmaması farketmez.
Şimdi örnek bir lisanslı yazılım yazalım, bu bir forum scripti olsun, adı da phpForum:
index.php başına
Kod
<?php
/**
* phpForum Anasayfası
*
* @package phpForum Anasayfası
* @author Fatih Kadir AKIN <fatih@fatihkadirakin.com>
* @copyright Copyright (c) 2008, Fatih Kadir AKIN <fatih@fatihkadirakin.com>
* @license http://www.gnu.org/licenses/gpl-3.0-standalone.html
* @version $Id: index.php 2008-09-10 16:53 $
*/
?>
fonksiyonlar.php sayfası başına:
Kod
<?php
/**
* Sisteme bağlı çalışan fonksiyonları yükler
*
* @package phpForum Anasayfası
* @author Fatih Kadir AKIN <fatih@fatihkadirakin.com>
* @license http://www.gnu.org/licenses/gpl-3.0-standalone.html
* @version $Id: fonksiyonlar.php 2008-09-10 17:32 $
*/
?>
tarzında bir kod ekleyin. Bu komutu her sayfanıza eklemeniz haklarınız konusunda yüksek verimlilik sağlayabilir.
İngilizceniz varsa, ingilizce yazmanızda da fayda vardır.
LGPL için * @license http://www.gnu.org/licenses/gpl-3.0-standalone.html bu satırı
* @license http://www.gnu.org/licenses/lgpl-3.0-standalone.html ile değiştirin.
Fonksiyonlarınızı yazarken açıklama satırlarından faydalanın.
Programınıza versiyon vermelisiniz.
Ayrıca, klasörünüze
CHANGELOG ve LICENSE belgelerini ekleyin, bunları, DEGISIKLIKLER ve LISANS olarak da ekleyebilirsiniz fakat, anlaışılır olmasına dikkat edin. Ayrıca zorunlu olarak ingilizce gerekmektedir.
CHANGELOG ve CHANGELOG-TR, LICENSE ve LICENSE-TR ise en genel olanıdır.
LICENSE dosyasına, eğer LGPL kullanıyorsanız LGPL, GPL kullanıyorsanız GPL kullanmalısınız.
Eğer yaptığınız yazılım, (PHP vs için) tek sayfalık bir yazılımsa ve başka bir yazılım tarafından çağrılabilecek bir imkanı varsa, lisans ve changelog dosyalarıyla birlikte,
<?php
/*
benim php kodum "şu" işi yapar
Copyright (c) 2008, Fatih Kadir AKIN <fatih@fatihkadirakin.com>
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
//"şu" işi php kodlarınız
?>
Lisanslar:
GNU/GPL: http://www.gnu.org/licenses/gpl-3.0-standalone.html
GNU/LGPL: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
Text: http://www.gnu.org/licenses/gpl-3.0.txt
Türkçe Lisanslar:
GNU/GPL: http://www.fatihkadirakin.com/GPL.htm
GNU/LGPL: http://www.fatihkadirakin.com/LGPL.htm
Örnek ChangeLog dosyası:
Kod
----------------------
programım - ChangeLog
----------------------
$Id: ChangeLog 12110 2008-12-09 17:22$
$HeadURL: http://fatihkadirakin.com/changelog $
3.1.1.0 (2008-12-09)
- patch(eklenti) #2242765 [core(temel)] bu eklenti yapıldı.
- bug(hata) #2186823 [core(temel)] session hatası giderildi..
- bug(hata) #2202709 [core(temel)] şu hata giderildi
- bug(hata) #2280904 [extract(ayıklama)] ayıklamada şu işlem düzeltildi.
Ve son olarak CC Attribution-NonCommercial-ShareAlike 2.5
Bu lisans ise size şu hakları sağlar:
- Belgenin (içeriğin) kimin tarafından yazıldığı belirtilmeli ve orijinal kaynağa bağlantı verilmelidir.
- Belge (içeriğin) üzerinden hiçbir şekilde ticari gelir elde edilemez.
- Belge (içeriğin) üzerinde bir değişiklik yapılması durumunda belgeyi aynı lisans ve şartlarda yayınlamak zorundasınız.
Bu lisansın linki ise: http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode
Tüm işlemlerin sonunda
Kod
bilmemne.org Web Sitesi üzerinde yayınlanmakta olan bütün belgeler aksi belirtilmediği sürece CC Attribution-NonCommercial-ShareAlike 2.5 lisansına göre kullanılması serbesttir.
"bilmemne.org programım" yazılımı LGPL lisansı altında yayınlanmaktadır. Sitede yer alan diğer yazılım ve eklentiler aksi belirtilmediği sürece GPL ve LPGL lisanslarını kullanmaktadır.
metnini kendi tercihlerinize göre değiştirerek eklemeniz gerekir.
Daha profesyonel programlar için bunlar sizi bir üst seviyeye çıkaracaktır.
Teşekkürler...
Fatih Kadir AKIN,
PHP Programcısı.
|