[ önceki ] [ İçindekiler ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ sonraki ]

APT NASIL
Bölüm 4 - Yardımcı araçlar


4.1 Kendi derlediğim paketleri nasıl kuracağım: equivs

Bazen bir programın belirli bir versiyonunu kullanmak zorunda kalabiliriz. Bu versiyona ait bir Debian paketi mevcut değil ise, programı kaynak koddan derleyerek kendimiz kurarız. Fakat paket yönetim sistemi bu durumda şaşırabilir. Mesela kullandığınız mail sunucu yazılımının yeni bir versiyonunu derlediğinizi düşünün. Burada problem yok, ancak pek çok Debian paketi sistemde bir MTA (Mail Transport Agent) yazılımı olmasını gerektirir. Mail sunucunuzu kendiniz derleyerek kurduğunuz için paket yönetim sistemi bundan haberdar değildir ve bağımlılık hataları oluşur.

Burada equivs programı devreye girmektedir. Programı kurmak için aynı isimli paketi sisteminize kurmalısınız. Bu program ile boş bir paket yaratıp, bağımlılık problemlerini çözebilir ve paket yönetim sisteminin içini rahatlatabilirsiniz.

Başlamadan önce hatırlatmak isteriz ki, Debian için zaten paketi hazırlanmış bir programı farklı derleme seçenekleriyle derlemenin daha güvenli ve uygun yolları vardır. Eğer ne yaptığınızı tam olarak bilmiyorsanız equivs kullanmayınız. Ayrıntılı bilgi için bkz. Kaynak paketlerle çalışma, Bölüm 6.

MTA örneğimize kaldığımız yerden devam edelim. Yeni derlemiş olduğunuz postfix programını sisteminize kurdunuz ve ardından mutt paketini kurmak istediniz. Fakat mutt paketinin başka bir MTA kurulmasını gerektirdiğini gördünüz ama zaten sisteminizde bir MTA var !

Herhangi bir dizine geçip (örneğin /tmp) aşağıdaki komutu çalıştırın:

     # equivs-control isim

isim değerini oluşturmak istediğiniz control dosyasının adı ile değiştiriniz. Ardından dosya aşağıdaki şekilde oluşturulacaktır:

     Section: misc
     Priority: optional
     Standards-Version: 3.0.1
     
     Package: <enter package name; defaults to equivs-dummy>
     Version: <enter version here; defaults to 1.0>
     Maintainer: <your name and email address; defaults to username>
     Pre-Depends: <packages>
     Depends: <packages>
     Recommends: <packages>
     Suggests: <package>
     Provides: <(virtual)package>
     Architecture: all
     Copyright: <copyright file; defaults to GPL2>
     Changelog: <changelog file; defaults to a generic changelog>
     Readme: <README.Debian file; defaults to a generic one>
     Extra-Files: <additional files for the doc directory, commaseperated>
     Description: <short description; defaults to some wise words>
      long description and info
      .
      second paragraph

Bu dosyayı kendi isteğimize göre değiştirebiliriz. Tüm alanları açıklamaya şimdilik burada gerek yok, hemen amacımızı gerçekleştirelim:

     Section: misc
     Priority: optional
     Standards-Version: 3.0.1
     
     Package: mta-local
     Provides: mail-transport-agent

Evet, hepsi bundan ibaret. mutt paketi sistemde mail-transport-agent paketi olmasını gerektirir. Bu sanal bir pakettir ve tüm MTA'lar tarafından sağlanır. Aynı davranış için paket ismi olarak doğrudan mail-transport-agent seçebilirdik, ancak sanal paket kavramını ve Provides alanını kullanarak bunu gerçekleştirdik.

Şimdi yapmanız gereken paketi oluşturmaktır:

     # equivs-build isim
     dh_testdir
     touch build-stamp
     dh_testdir
     dh_testroot
     dh_clean -k
     # Add here commands to install the package into debian/tmp.
     touch install-stamp
     dh_testdir
     dh_testroot
     dh_installdocs
     dh_installchangelogs
     dh_compress
     dh_fixperms
     dh_installdeb
     dh_gencontrol
     dh_md5sums
     dh_builddeb
     dpkg-deb: building package `isim' in `../isim_1.0_all.deb'.
     
     The package has been created.
     Attention, the package has been created in the current directory,

Ve sonra üretilen .deb paketini sisteminize kurmalısınız.

Gördüğünüz gibi equivs programının kullanılabileceği pek çok durum vardır. Örneğin favorilerim adlı bir paket oluşturabilir ve bu paketin sıklıkla kullandığınız paketlere bağımlı olmasını sağlayabilirsiniz (Depends alanı ile). Ardından bu paketi sisteminize kurup, bağımlılık verdiğiniz diğer tüm paketlerin de kurulmasını sağlamış olursunuz.

Örnek control dosyaları için /usr/share/doc/equivs/examples dizini altına bakabilirsiniz.


4.2 Kullanılmayan yerelleştirme dosyalarını kaldırma: localepurge

Çoğu Debian kullanıcısı sadece bir tip yerel dosyası kullanır. Örneğin bir Türk genellikle tr_TR yerelini kullanır ve hemen hiç bir zaman es kullanma ihtiyacı hissetmez.

localepurge paketi bu kullanıcılar için oldukça faydalıdır. Kullanmadığınız yerellerin sisteminizden kaldırılmasını ve yenilerinin de kurulmamasını sağlayarak disk üzerinde size yer kazandırır. Yapmanız gerekeni biliyorsunuz: apt-get install localepurge

Paketin ayarlamaları oldukça kolaydır, debconf tarafından ilgili sorular size yöneltilecektir. Ancak ilk soruya cevap verirken dikkatli olun, yanlış bir seçim sonucu kullandığınız yerel dosyalarının silinmesine neden olabilirsiniz. Bu durumda tek çözüm, ilgili yerel dosyalarını içeren paketleri sisteminize yeniden kurmak olacaktır.


4.3 Güncellenebilir paketleri nasıl öğrenebilirim?

apt-show-versions programı sisteminizde güncellenmeye müsait olan paketler hakkında faydalı bilgiler sunar. -u seçeneği ile güncellenebilir paketlerin listesini alabilirsiniz:

     $ apt-show-versions -u    
     libeel0/unstable upgradeable from 1.0.2-5 to 1.0.2-7
     libeel-data/unstable upgradeable from 1.0.2-5 to 1.0.2-7

[ önceki ] [ İçindekiler ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ sonraki ]

APT NASIL

1.8.3 - Aralık 2002

Gustavo Noronha Silva kov@debian.org
Çeviri: Murat Demirten murat@debian.org