Phoenix, Baştan Yazılmış ve Zig ile Kodlanmış Modern Bir X Sunucusu Olarak Ortaya Çıkıyor
Phoenix, Xorg koduna bağlı kalmadan X11'i modernize etmeyi amaçlayan ve sıfırdan Zig ile yazılmış yeni bir X sunucusudur.
Wayland büyük ölçüde Xorg'un yerini almış olsa da, çoğu büyük Linux dağıtımı ve masaüstü ortamı ya eski görüntüleme protokolüne desteği çoktan bırakmış durumda ya da bunu yapma sürecinde, Xorg'un ömrünü uzatma veya benzer alternatiflerle değiştirme çabaları devam ediyor. Son örnekler arasında XLibre Xserver ve Wayback gibi projeler bulunuyor. Ve şimdi, bu gruba yeni bir isim katılıyor: Phoenix.
X11'e temelde farklı bir yaklaşım benimseyen yeni bir X sunucu projesidir. Tamamen sıfırdan Zig programlama dilinde yazılmıştır, Xorg kod tabanının bir başka çatallaması değildir ve onun eski kodunu yeniden kullanmaz. Bunun yerine, geliştiricilere göre, Phoenix X11 protokolünün doğasında obsolete olmadığını ve daha basit, daha güvenli ve daha modern bir şekilde uygulanabileceğini göstermeyi amaçlamaktadır.
Phoenix, tam protokol kapsamı için değil, gerçek masaüstü ve profesyonel kullanım için tasarlanmıştır. Yalnızca modern uygulamaların ihtiyaç duyduğu X11 özelliklerini destekler; GTK2 tabanlı programlar gibi eski yazılımları da kapsar. Nadiren kullanılan veya eski parçaları çıkartarak, Phoenix işleri basitleştirirken yine de birçok uygulamayı desteklemeye devam eder.
Şu anda, Phoenix hâlâ deneysel bir aşamada ve günlük kullanım için hazır değil. GLX, EGL veya Vulkan kullanarak basit, donanım hızlandırmalı uygulamaları çalıştırabilir, ancak bunu sadece başka bir X sunucusunun altında iç içe bir kurulumda yapabilir. Bu durum, proje daha yoğun kullanım için hazır olana kadar devam edecek.
Güvenlik tarafında, aslında Xorg'un en çok eleştirildiği yönlerden biri olan durumda, Phoenix uygulamaları varsayılan olarak izole eder ve ekran kaydı veya global kısayollar gibi hassas yeteneklere erişim, açık izin mekanizmaları aracılığıyla sağlanır. Önemli bir şekilde, bu mevcut istemcileri bozmadan yapılır; yetkisiz erişim girişimleri protokol hatası yerine sahte veri döndürür.
Phoenix’in altında, varsayılan olarak yırtılma olmadan görüntülemeyi sağlayan yerleşik bir kompozitör bulunur, tam ekran uygulamalar için kompozisyon devre dışı bırakmayı destekler ve kompozitör ve vsync gecikmesini azaltacak şekilde tasarlanmıştır. Doğru çoklu monitör desteği bir önceliktir; farklı yenileme hızlarına, değişken yenileme hızlı ekranlara ve tek bir global framebuffer’a bağlı kalmadan gelecekte HDR desteğine izin verir.
Phoenix, gerektiğinde protokolü genişletmeyi de düşünüyor. Örneğin, uygulamaların farklı DPI ayarlarına sahip sistemlerde doğru şekilde ölçeklenmesini sağlamak için monitör başına DPI raporlaması gibi yeni özellikler planlanıyor. Gerektiğinde, HDR gibi özellikler için protokol uzantıları ekleyecek, ancak mevcut yazılımlarla çalışmaya devam edecek.
Projenin Xorg'u değiştirmeyi hedeflemediğini açıkça belirtmek önemlidir. Phoenix, kasıtlı olarak eski donanımları, nadir protokol özelliklerini ve birden çok X11 ekranı veya dolaylı GLX renderlama gibi yapılandırmaları desteklememekte ve tamamen modern sistemlere odaklanmaktadır.
Wayland uyumluluğu, uzun vadeli planın bir parçasıdır. Geliştiriciler, Phoenix’in sonunda Wayland istemcilerini doğrudan destekleyebileceğini veya yalnızca Wayland uygulamalarını X11 ortamında çalıştırmak için köprüleme araçları kullanabileceğini söylüyor. Xwayland alternatifi olarak Phoenix’in Wayland altında iç içe çalıştırılması da değerlendiriliyor.
Son olarak, belirttiğim gibi, proje henüz erken aşamalarda ve üretime hazır kararlı sürümlere dönüşüp geniş çapta kullanım için kabul görüp görmeyeceği henüz görülmedi. O zamana kadar, bu yeni girişim hakkında daha fazla bilgi için buraya bakabilirsiniz.
