Bu, orijinali İngilizce olan bir sayfanın çevirisidir.
JavaScript Lisans Web Etiketleri
Bir siteye sıkıştırılmış [minified] JavaScript koyan bir web sorumlusuysanız, sıkıştırılmış dosyaların kendilerini değiştirmeden lisanslarını ve kaynak kod konumlarını belirtmek için bir yöntem öneriyoruz. Özellikle JavaScript'in GNU lisansları altında olduğu durumlarda yararlı olsa da, Loic Duros'un JavaScript'inizi Özgürleştirmek yazısının 3.2. bölümünde önerilen ek izni içermiyor.
JavaScript lisans web etiketleri yöntemi sıkıştırılmış JavaScript kod dosyaları içindir. Bu yöntem GNU yazılım lisanslarındaki ilişkili koşullara uyumludur ve LibreJS'nin bir sitedeki bilgilerin doğruluğunu onaylamasını sağlar.
Web etiketlerinin kullanımı, ilgili JavaScript kaynak dosyalarının, onları özgür bir lisans altında uygun bir şekilde yayınlayan lisans bildirimlerini taşıdığını varsayar. Kaynak kodu özgür değilse, derlenmiş kod da değildir ve özgür kaynak kodunun uygun bir şekilde yayınlanması için lisansın belirtilmesi esastır. Henüz bunu yapmamışsanız, lütfen ilk önce bunu yapın.
Web etiketlerini, bir programın fark edebileceği şekilde lisanslarını göstermek için sıkıştırılmamış JavaScript dosyalarında da kullanabilirsiniz; ancak bunlar kaynak dosyalardır, bu yüzden lütfen onlara insanlarca okunabilir lisans bildirimlerini koymayı unutmayın. Bu bildirimleri ihmal etmek, bu dosyaların yasal durumu hakkında belirsizlik yaratacaktır.
Web etiketleri yöntemi, doğrudan HTML sayfalarının içerisine eklenen gömülü JavaScript için uygun değildir, bunların lisans bilgisi doğrudan bulundukları sayfalarda belirtilmelidir.
Bu biçimi neden tasarladığımız hakkında daha fazla bilgi için, gerekçe açıklamamıza bakabilirsiniz.
Etiketler sayfasını yazmak
Sitenize, JavaScript lisans web etikleri için bir sayfa ekleyin. Sizin için
uygun olan istediğiniz konum ve dosya adını kullanabilirsiniz, diğerleri
bağlantılar aracılığıyla erişecektir. Sayfa
id="jslicense-labels1"
özelliğiyle işaretlenmiş bir
tablo içermelidir. Bu isim otomatik araçların tabloyu kolayca bulmasını
sağlar ve hangi biçimle karşılaşacaklarını söyler. Bu tablonun her bir
satırında üç hücre olmalıdır, sitede kullanılan bağımsız bir JavaScript
dosyası, lisansı ve ziyaretçilerin kaynak koduna nasıl erişebileceği
hakkında bilgi sunmalıdır.
Her satırdaki ilk hücre site tarafından kullanılan bir JavaScript dosyası
ismini içerecektir. Hücre bu dosyaya bağlantı etiketini içermelidir, tam da
sitedeki script
etiketlerinde olduğu gibi.
İkinci hücre bu JavaScript dosyasının lisansına ilişkin bilgiyi sağlamalıdır. Bu hücre lisansın tüm metnine bir bağlantı etiketini içermelidir, metni de lisansın tam adını belirtmelidir. Eğer lisansın birden fazla sürümü varsa, sürüm numarası ve dosyanın lisansın sonraki sürümleri altında olup olmadığına ilişkin bilgi de yer almalıdır. İyi şekildeki lisans tanımlayıcıları ve ilişkili bağlantıları şöyledir:
- GNU-GPL-2.0-or-later
- GNU-GPL-3.0-or-later
- GNU-LGPL-2.1-or-later
- GNU-LGPL-3.0-or-later
- GNU-AGPL-3.0-or-later
- Apache-2.0-only
- Modified-BSD
- CC0-1.0-only
- Expat
- MPL-2.0-or-later
Üçüncü hücre JavaScript'in kaynak koduna bir bağlantı içermelidir. Kaynak
kodu tek bir sıkıştırılmamış JavaScript dosyası, bir tar.gz
arşivi veya bir .zip
arşivi olabilir. Eğer kaynak arşivi birden
fazla JavaScript dosyası içeriyorsa, arşivin içerisinde sitede barındırılan
dosyaya denk tek bir dosyanın oluşturulması için bu tekil kaynak dosyaları
nasıl birleştirilecekse o şekilde listeleyen 00-INDEX
dosyası
da yer almalıdır. Eğer sitede sunulan ve ilk hücrede verilen bağlantıdaki
JavaScript, zaten kaynak kodu biçimindeyse, bu hücrede aynı URL'ye yine
bağlantı verin.
Aşağıda kullanımı göstermek amacıyla bir örnek tablo yer alıyor. Bu site sadece tek bir JavaScript dosyası kullanıyor: Expat lisansı altında dağıtılan sıkıştırılmış bir jQuery 1.7 dosyası. Tablo dosyayı karşılık gelen lisans bilgisi ve tam kaynak koduna bir bağlantıyla listeliyor:
<table id="jslicense-labels1">
<tr>
<td><a href="/js/jquery-1.7.min.js">jquery-1.7.min.js</a></td>
<td><a href="https://directory.fsf.org/wiki/License:Expat">Expat</a></td>
<td><a href="/js/jquery-1.7.tar.gz">jquery-1.7.tar.gz</a></td>
</tr>
</table>
Bu sayfa, sitenizin normal düzeni ve gezinti araçları da dahil olmak üzere başka metin ve biçimlendirmeleri içerebilir, ancak tablo sayfada belirgin bir şekilde gösterilmelidir.
Etiketler sayfasına bağlantılar
JavaScript kullanan her sayfada, yukarıda anlatılan etiketler sayfasına
işaret eden bir bağlantı koyun. Bu bağlantıyı
rel="jslicense"
ile işaretleyin, böylece otomatik
araçlar onu bulabilsin. Örneğin, nihai bağlantınız şöyle olabilir:
<a href="/about/javascript" rel="jslicense">JavaScript lisans bilgisi</a>
Bu bağlantı küçük olabilir ama sitenizi ziyaret eden insanlar tarafında kolayca görülebilmelidir.
Notlar
Bunları yapmanız durumunda GNU Genel Kamu Lisansı gibi GNU yazılım lisanslarının ilgili koşullarına uymuş olacaksınız. Ayrıca bunlar diğer pek çok özgür yazılım lisansıyla uyumlu olmanız için de yetmelidir, ancak kesinlikle tümüyle uyumlu olacaklardır diyemeyiz. Her zamanki gibi, dağıtım için kullandığınız her özgür yazılım lisansının koşullarını anladığınızdan ve kavradığınızdan emin olun.