Windows’ta çalıştırılabilir dosyalar '.exe', ve '.com' uzantılarına sahip olup sisteme kuracağımız uygulamalar da bu uzantılara sahiptir. Bu uygulamaların kurulum dosyaları tıkla-devam et-kur mantığıyla çalışır. Ancak Linux’ta bu durum çok daha farklıdır. Linux’ta ise çalıştırılabilir dosyaların uzantı kısıtlaması olmadığı için uygulamalar çeşitli paketler ve kaynak kodları aracılığıyla kurulabilir.

Linux'a geçmeye düşünen kullanıcıların akıllarını "Acaba Linux'ta nasıl program kuracağız?" sorusu meşgul edebilir. Windows’ta tıkla-kur mantığına alışan kullanıcıların ilk başta çekinmeleri gayet normal ama aslında hiç de sanıldığı gibi zor değil Linux'ta program kurmak. Bir diğer endişe konusu da diğer birçok şey gibi program kurulumunun da sadece konsoldan komut yazılarak yapıldığının sanılması. Tamam bu doğru, her şey konsoldan çeşitli komutlar yazılarak yapılabilir ama unutulan bir şey var. Sadece konsoldan yapma zorunluluğu uzun süredir yok! Yeni ve geliştirilmiş Linux dağıtımlarının görselliği göz kamaştırmakta. Sonuç olarak artık her işlemi konsoldan bağımsız olarak yapabiliriz. ;)

Yazının başında belirtiğim gibi Linux'ta, Windows'taki kurulum dosyalarına karşılık gelen bazı yapılar vardır. Bu yapıları temel olarak iki başlık altında toplayabiliriz: Birincisi hazır derlenmiş, direk çalıştırılabilir paketlerdir ki bunlar çeşitli uzantılarda olabilirler. Bunlardan '.deb' (Debian Package Manager) ve '.rpm' (Redhat Package Manager) en çok kullanılanlardır. Bu paketlerin yaygın olmalarının en önemli nedeni Debian ve Redhat’ın çok eski dağıtımlar olması ve birçok dağıtımın da bu dağıtımların türevi olarak çıkarılmasıdır. Örneğin openSUSE, Mandriva, Fedora ‘.rpm’ kulanırken, Ubuntu, Kubuntu ve Knoppix ‘.deb’ paketlerini kullanır. Bunun dışında bazı dağıtımların kendi paketleme sistemleri vardır. Örneğin gözbebeğimiz olan Pardus .pisi (Packages Installed Successfully as Intended) paketleme sistemini kullanır. Aynı şekilde köklü bir Linux dağıtımı olan Slackware de kendi paketleme sistemini (.tgz) kullanır.

İkincisi, arşivlenmiş kaynak kodlarıdır. Bu kodlar en çok ‘.tar.gz’ ya da ‘.tar.bz2’ formatları ile bulunurlar. buradaki ‘.tar’ arşivleme formatıdır. .tar kullanılmasındaki amaç birçok parçadan oluşan kaynak kodlarını tek bir dosya görümüne sokmak ve arşivdeki dosyaların arşiv tarihindeki bilgilerinde en ufak bir değişiklik yapmamaktır. ‘.gz’ ve ‘.bz2’ ise ‘gzip’ ve ‘bzip2’ programlarının sıkıştırma formatlarıdır. Kaynak kodlarının fazla yer tutmaması için internete sıkıştırılarak verilir.

Peki bu paketleri sistemimize nasıl kurarız? Bunun için de üç yöntemimiz vardır. Bu yöntemlerden ilki, eski Linux kullanıcılarının artık alıştığı yöntem olan konsoldan komut vererek kurmak. İkincisi '.deb' ve '.rpm' leri 'tıkla-kur' mantığıyla sanki Windows'ta program kuruyormuş gibi kurmak, ki bunun için gerekli kütüphane ve programlarımızın sistemimizde olması gerekir. Üçüncüsü ve de aslında en kolay yol olan depo denen sistemlerle, program veritabanlarından dosyaları çekip otomatik olarak kurmak. Yazı dizimizde bu yöntemlerin üstünde ayrıntılı olarak duracağız.

Bu sayıda Linux'ta program kurmaya giriş, bilinmesi gereken temel hususlar ve ‘.deb’, ‘.rpm’ uzantılı dosyalarla ilgili bilgiler üzerinde duracağız. Sonraki sayıda kaynak kodlarını kullanarak uygulama kurulumu ve depo sistemleri hakkında bilgi vermeye çalışacağız. Son olarak da ileri düzey kullanıcılar için çeşitli sistemlerde (Gentoo vb.) paket yönetimini açıklayacağız.

Şimdi ise Linux’a yeni geçenler için daha uygun olan ve zaten Windows’tan da aşina olunan tıkla-kur mantığındaki DEB ve RPM sistemleri üzerinde duracağım.

‘.deb’ ve ‘.rpm’ paketleri, aslında birer 'tıkla-kur' paketlerdir. Windows’taki kurulum dosyalarının çalışma mantığına çok benzemelerine rağmen; aslında tamamen farklı yapılardır. Bu paketleri kullanarak uygulama kurmak için bu dosyaların olduğu dizine gelip üzerilerine çift tıklıyoruz. Bizden önce ‘root’ şifresi isteyecek. ‘root’ şifremizi girdikten sonra paket bağımlılığı olup olmadığı paket sistemleri tarafından kontrol edilir, eğer hiçbir paket bağımlılığı yoksa program sorunsuzca sistemimize kurulur. Ancak paket bağımlılığı varsa paket sistemimiz bu paketleri de bulmaya ve kurmaya çalışır ki genelde başarılı olur. Fakat paket sistemi bağımlı paketleri bulamazsa, bağımlı paketleri elle bulup kurmamız gerekir. Ancak çok da karmaşık programlar olmadıkça, bağımlı paketler pek de sorun olmaz, yani en son yönteme gerek kalmaz.

Kaynaklar: