X Server: Artık çarpıyı koymak lazım

Dün TWIX ile ilgili network fonksiyonlarını tamamlayıp cilaladım; AJAX ile hazırlayacağım -kimbilir ne zaman!- sayfaya yerleştirmek üzere yedek alıp kenara koydum. Bu esnada, görüntü ile ilgili ayarları nasıl yapacağımı düşünmeye başladım; çoğunu da buldum.

Başlangıçta, xrandr isimli becerikli program beni bayağı uğraştırdı. Bilmeyenler için söylüyorum; xrandr, ekran çözünürlüğünü hızla değiştiren ve XFree86/X.org ile birlikte gelen küçük bir program. GNOME için bir arayüzü var; KDE içinde Krandr varmış (DPKG uçtuğu için şu an ancak “elle” paket kurabiliyorum-tamamen Slackware mantığı aslında, paketi açıp yerine yerleştirerek)

İki saat, strace filan da kullanarak, xrandr’ın ayarları nereye yazdığını aradım. Sonunda, ayar filan yazmadığını keşfettim!

Evet; xrandr sadece oturum tabanlı çalışıyor. KDE ise çözünürlük ayarlarını displayconfigrc isimli bir dosyaya yazıyor. Daha doğrusu, yazması gerekiyor! Çünkü, bendeki KDE Kontrol Merkezi, yaptığım ayarı nedense displayconfigrc dosyasına yazmamakta direniyor! Ama açıp elle yazarsam, sorun yok.

Saçma olan şu; xrandr, çözünürlük değerlerini, xorg.conf dosyasından okuyor. O anki oturumda çözünürlükte seçebiliyor, ancak bunu biryere yazamıyor.

X’in nasıl çalıştığını bir hayli iyi bildiğimi söyleyebilirim. Zamanında iki kere, çok minimal bir X sunucusu kurmak zorunda kaldım.

Lakin, X’in kendisi, bir hayli kötü bir tasarım. İsimlendirme bile tuhaf; X client olması gereken, yani kullandığınız ve KDE’nin çalıştığı kısım, X server(!). X client ise, X server’a veri sağlayan bir parça! Örneğin, bir terminal sunucu ile thin client kurduğunuzda, thin client aslında X server, terminal server ise X client oluyor!

X’ client ve server’ın kendi arasında konuşması ile ayrı bir mesele. Aynı makinede çalışan X server ve X client -tiipik bir Linux dağıtımı-, uzaktaki sistemden nedense daha yavaş çalışıyor. Çok aptal bir authentication mekanizması var (xauth bunu yapıyor). Bu yüzden, X ile  fazlasıyla haşır neşir olmak zorunda kalan kdesktop, kwin (KDE’nin temelleri) gibi programlar bile, DCOP gibi mekanizmalarla bunu kolaylaştırmaya çalışıyorlar. Bunun için, son derece hızlı çalışan bir kernel ve GNU araçları üzerinde, inleye inleye çalışan grafik arayüzler kullanmak durumunda kalıyoruz.

Neyse ki, yapılandırma için, X’i dibine kadar anlamak da gerekmiyor. Modeline’ın nasıl çalıştığını anlayacak kadar ileri gidebildiğinizde, herhangi bir ekran kartı ve monitörle, X’i bir şekilde çalıştırabiliyorsunuz.

Yalnız, X’in zaman içinde “değiştirilmesi” gerek; yoksa Mac ya da Windows’un grafik performansı bizler için hayal olmaktan öteye gitmeyecek.




Siz de birşey söyleyin!