OSLC

Bir önceki yazım Asla Asla Deme ile her ne kadar teknik ve detaylı olmasa da özgür yazılımlarda lisans analizine kısa bir giriş yapmıştık.

Lisans analizi hem uygulama yazarı geliştiriciler hem de bu uygulamaları dağıtan ve çoğunlukla paketçi olarak anılan geliştiriciler için önemli bir konudur. Kullanıcılar ve lisans analizinin doğrudan ilişkileri bulunmamakla birlikte sonuçları ve etkileriyle lisans yönetimi sırasında karşılaştıklarından aralarında dolaylı bir ilişki vardır.

Sanırım bu özgür yazılımlarda lisans analizi konusunda yazacağım üç veya dört yazılık giriş seviyesi bir serinin ikinci yazısı olacak. Bu yazıda yine kısaca lisans analizi yapan bir uygulamayı tanıyacağız. Ve bu seferki konuğumuz: OSLC (Open Source License Checker / Açık Kaynak Lisans Denetleyicisi).
OSLC, açık kaynak yazılım lisanlarını analiz için Java'da, platform bağımsız olarak geliştirilmiş bir risk yönetim aracıdır.
Desteklediği özelliklerden öne çıkanlar aşağıdaki gibi özetlenebilir:
  • Sabit disk üzerinden tek bir kaynak dosyayı veya kaynak dizini işleyebilir.
  • Arşiv dosyalarını (zip, jar, tar, tar.gz, tgz) işleyebilir.
  • Java, Javascript, PHP, Python ve C/C++ kaynak kodları üzerinden açık kaynak yazılım lisanslarını tanımlayabilir. Linux çekirdek kaynağı desteği vardır ve LICENSE.txt, COPYING.txt gibi özel dosyaları kullanabilir.
  • Lisans eşleşmelerini güvenli bir şekilde asıl lisans metinleriyle karşılaştırma yaparak gösterir.
  • Eşleşen lisans metinlerini vurgulu olarak gösterir.
  • Yerel ve referans çatışmaları kontrol edip gösterebilir: Kaynak dosya A, Kaynak dosya B'yi lisans referans sınırlaması nedeniyle içeremez veya içeri aktaramaz diyelim. Somut olması açısından, örneğin GPL lisanslı bir kaynak kod dosyası PHP lisanslı bir kaynak dosyayı içeremez veya içeri aktaramaz. Genel çatışma desteğiyse henüz uygulamanın yapılacaklar listesinde bulunuyor.
  • Kaynak dosyaları filtreleme desteği.
  • Yazdırma desteği.
  • Bulunan yazar ismi, yıl gibi etiketleri gösterme desteği.
  • Lisans istisnalarını kontrol etme ve gösterme desteği.
  • Yasaklanmış ibareleri kontrol etme ve gösterme desteği.
  • Paketteki kaynak kodlar hakkında özet ve rapor oluşturabilme.
  • Bir kaynak dosya paketindeki uyumlu lisansları listeleyebilme.
  • Sisteme yeni lisanslar ve yasaklanmış ibareler ekleyebilme.
  • İnternet üzerinden oluşturulmuş veritabanlarını indirip kullanabilme.
  • Kaynak kodlardaki telif hakkı sahiplerini belirleyebilme.
  • Lisans ve telif hakları raporlarını PDF ve RTF biçiminde dışarı aktarabilme.
  • Hem SVN hem de CVS üzerinden kod çekme desteği.
  • İngilizce ve Fince'nin yanı sıra yeni dil dosyaları oluşturma ve uygulamada bunları kullanma desteği.
OSLC'nin son sürümünü indirmek için proje sayfasını kullanabilirsiniz. Uygulama yaptığım denemelerde 64 bit bir Pardus 2011.1'de sorunsuzca çalıştı. Arşivi indirdikten sonra Ark ile açmanız ve sonrasında uygulama dizinine girerek OSLC'nin grafik arayüzünü açmak için:
$ java -Xms512M -Xmx512M -jar oslc.jar
komutunu, komut satırı arayüzünü açmak için de:
$ java -Xms512M -Xmx512M -jar oslc.jar -- $@
komutunu kullanabilirsiniz. Aslında dizin içinde oslcgui ve oslccli kabuk betikleri var ama bunların bir hatadan dolayı yeniden oluşturulması gerekiyor, isterseniz bunu yaparak bu betikleri de kullanabilirsiniz.
Uygulamayı grafik arayüz üzerinden açtığınızda temiz bir uygulama ekranı sizi karşılıyor. Dosya menüsünden üzerinde çalışılmak istenen uygulamaya ait kaynak kod dizini seçilebiliyor. Bu işlem yapıldıktan sonra tüm dosyalar taranıyor ve lisans bilgileri aktarılıyor. Her ne kadar arşiv dosyalarının da işlenebileceği özelliklerde belirtilmiş olsa da yaptığım bir denemede bunun olmadığını gördüm. SVN veya CVS üzerinden kod çekme özelliklerini ise test etmedim. Dosya menüsünden ayrıca yazdırma ve PDF / RTF olarak dışarı aktarma işlemleri de gerçekleştirilebiliyor.
Araçlar menüsünden:
  • Yeni lisans ekleme,
  • Varolan lisansları düzenleme,
  • Lisansları silme,
  • Tanımlı lisansları listeleme,
  • İnternet üzerinden yeni lisans veritabanı çekme,
  • Uygulama arayüzü dili seçme ve
  • Yeni dil dosyası oluşturma
işlemleri yapılabiliyor. Bu özelliklerden bazıları kaynak kodlara eklenmiş olmasına rağmen arayüz üzerinde devre dışı bırakılmış durumda bazı bilinen hatalar veya olgunlaşmamış özellikler dolayısıyla.

Yardım menüsünden de detaylı bir kullanıcı rehberine ve OSLC'nin README dosyasına ulaşabilirsiniz. Yine burası üzerinde hakkında ekranına da ulaşabilir ve uygulamanın yazarlarını ve lisansını görebilirsiniz.

Henüz çoğuna bakma fırsatı bulamadım ama OSLC belgelendirmeyi epey sıkı tutmuşa benziyor. Lisans analizi konusuyla ilgileniyorsanız OSLC'nin Teknik Özellikler'ine bakmak isteyebilirsiniz.
Son olarak, uygulamanın terminal üzerinden de çalışabilmesi, diğer GNU/Linux araçlarıyla etkileşim içinde kullanıma imkan verdiği için epey önemli bir özellik.

OSLC, lisans analizi hakkında bir uygulama arıyorsanız incelemenizde fayda olan bir uygulama, denemenizi tavsiye ederim.

Yorumlar

Bu blogdaki popüler yayınlar

Fedora 24'te GRUB 2 Önyükleyici Temasını Değiştirme

Diğer Dillerde Hoşçakal

Müfettiş Gadget'taki Kötü Adamın Yüzü Açığa Çıkmış