Neden Gentoo? (Bölüm 1)

gentoologoUzun zamandır aklımda gentoo ile ilgili birşeyler yazmak. Bari şu boş zamanımda aradan çıkarayım. Bazı insanlar gentoo’yu efsanelerden duyduğu için, gentoo kullanıcılarını da “yaratık” gibi görüyor. Bu yazıyı da aslında gentoo kullanmak için gayet makul sebeplerin olduğuna dikkat çekmek için yazıyorum. Evet, siz de buyrun kullanın, seveceksiniz.. (Siz dediysem, pardus kurabilen herkesten bahsetmiyorum, ciddiyim..)

Öncelikle bir önsöz: Bu yazının yazı dizisinin (detaylı olacak gibi) altına “windows daha iyi” tarzında yorumlar atacak düşük IQ’lu kişiler okumuyor bunu şu anda eminim (yani umarım.. ne olur öyle olsun yareppim..) Windows-Linux karşılaştırması değil bu, Linux içinde bir değerlendirme..

Artılarını sıralayalım önce.. Ama eski kaynaklarda okuduğunuz gibi kalıplar ile değil, açıklayarak (anlayana)..

  • Efendim biz kaynak koddan derliyoruz.

Ama tutup da elle “./configure, make, make install” komutları vermiyoruz (kaşınmazsak). Gentoo’nun paket yönetim sistemi portage sayesinde, “emerge amarok” tarzında 2 kelimelik bir komut ile amarok kurulumunu başlatıyoruz.

Peki bunun avantajı ne? Yani “yıl olmuş 2009, hayvan gibi işlemcim var, ha kaynak koddan kurmuşum ha derlenmiş paketten..” diyebilirsiniz.. Hız farkı gerçekten o derece hissedilebilir mi? Şüpheliyim.. Diğer dağıtımları kullanan arkadaşlardan “evet bu daha hızlı” yorumları alıyorum ama, diğer dağıtımları denediğimde hız öğesini gentoo’yu tercih etmek için pek de yeterli görmüyorum.. Kaynak koddan derlemenin 2 temel avantajını şöyle sıralayabilirim sanırım:

- Optimizasyon

Gentoo’nun aksine, binary (derlenmiş paketler) sunan diğer dağıtımlar için uygulamaların hızlı olmasından daha öncelikli olarak her ortamda çalışması gelir. Bu yüzden çoğu dağıtım 32 ve 64Bit gibi geniş destekli kollardan ilerler [bkz]. Örnek olarak indirdiğiniz 32Bit bir dağıtım i386 ve üzeri mimarileri destekler (ki i386 tarihi de 1985′e kadar dayanır). En iyi ihtimalle i686 ve üzeri mimari desteği bulunur (bu da ‘95 kökenli sanırım) ama bu kez de i586 ve önceki mimarilerde teoride garip sorunlarla karşılaşmaları gerekir, yoksa i686 işlemcilerinin özelliklerini tam olarak kullanamayan bir i686 sürümü biraz anlamsız kaçar..

Gentoo’da ise kaynak kodu ile elinize geçen bir programı şekillendirmek tamamen sizin elinizdedir. Öyle ki gcc’nin cevherleri olan (C/Cxx)FLAGS , LDFLAGS gibi üretilen kodu bilgisayarınız için en iyi şekilde optimize etmeye yarayan değişkenleri elle ayarlarsınız.

- Bağımlılıklar

Madem örneğimiz amarok oldu, devam edelim onunla. GNOME masaüstü kullandığımızı ve mp4, musicbrainz, real media kavramları ile işimiz olmadığını varsayalım. Diğer dağıtımlarda amarok kurmak istediğinizde qt gibi zorunlu paketlerin yanısıra mp4 çalmak için gerekli kütüphane (libmp4v2), musicbrainz etkileşimi için tunepimp, real için de realplayer vb. paketlerin kurulduğunu görürsünüz. Evet diğer dağıtımlarda bağımlılık sorunu artık ortadan kalktı, şu şununla çakışıyor diye sinir bozucu uyarılar almıyorsunuz artık. Ama saydığım gereksiz paketleri de kurmak zorundasınız (buna karşı cırmalayan dağıtımlar var tabi, mandriva gibi..).

Gentoo’da kullanacağınız ve işinize yaramayacak özellikleri tanımlayabileceğiniz bir sistem mevcut. USE bayrakları. Eğer sistemde “-mp4″ bayrağı var ise, amarok mp4 desteği olmadan derlenip kurulur. Detaylar için amarok ebuild‘inden bir parça, bkz:

RDEPEND="
 !<media-sound/amarok-1.4.10_p20090130-r2
 =dev-lang/ruby-1.8*
 >=media-libs/taglib-1.4
 >=media-libs/xine-lib-1.1.2_pre20060328-r8
 ifp? ( media-libs/libifp )
 ipod? ( >=media-libs/libgpod-0.5.2 )
 kde? ( kde-base/konqueror:3.5 )
 mp4? ( media-libs/libmp4v2 )
 mtp? ( >=media-libs/libmtp-0.3.0 )
 musicbrainz? ( media-libs/tunepimp )
 mysql? ( >=virtual/mysql-4.0 )
 njb? ( >=media-libs/libnjb-2.2.4 )
 opengl? ( virtual/opengl )
 postgres? ( virtual/postgresql-base )
 real? (
 media-libs/alsa-lib
 media-video/realplayer
 )
 visualization? (
 media-libs/libsdl
 =media-plugins/libvisual-plugins-0.4*
 )
"

Anladın sen..

İlk parçanın sonuna geldik. Sorularınız varsa çekinmeyin (ya da çekinin 2. bölüme kadar).. Bu kadar çuvaldızın ardından 2. bölümde detaylar ile elimize iğneyi alırken görüşmek üzere..

Leave a comment

Your comment