Neden Wayland'i bırakıyorum?
Wayland’i bırakıp Xorg’a dönmeye karar verdim. Sebebi oldukça basit: sade bir masaüstü istiyorum ve günlük kullandığım şeyleri çalıştırmak için bu kadar uğraşmak istemiyorum.
GNOME veya KDE kullanırken Wayland deneyimi daha derli toplu. Fakat ben bu masaüstlerini kullanmak istemiyorum. İhtiyacım olmayan bir sürü özellikle geliyorlar ve kendi kurduğum küçük bir ortamı tercih ediyorum. Bilgisayarın bunları kaldırıp kaldırmamasıyla da ilgisi yok. Kullanmayacağım şeyleri kurmak istemiyorum, bu kadar.
Bu yüzden dwl ve Sway denedim. Görünüş olarak istediğim sadeliği elde etmek mümkün. Terminalini açıyorsun, tarayıcını açıyorsun, pencerelerini yerleştiriyorsun. Buraya kadar güzel. Sonra ekran paylaşman gerekiyor ve işin rengi değişiyor. Bazen çalışmıyor, bazen de çalışması için hangi paketin, servisin veya ayarın eksik olduğunu bulman gerekiyor.
Benim derdim tam olarak burada başlıyor. Birine ekranımı göstermek için masaüstümün nasıl başlatıldığını araştırmak istemiyorum. Kurulumla uğraşırım, kısayollarımı ayarlarım, istediğim araçları seçerim. Ama ekran paylaşmak da artık bir masaüstünden beklenebilecek gayet sıradan bir şey.
Bunun Wayland tarafında neden böyle olduğunu anlamak zor değil. Wayland’de uygulamalar, başka uygulamaların pencerelerinin görüntüsüne doğrudan erişemiyor. Bu aslında sevdiğim bir özellik. Her açtığım programın masaüstündeki diğer pencereleri okuyabilmesini istemem. Fakat ekran paylaşacak uygulamaya bu görüntüyü başka bir yoldan vermek gerekiyor. Wayland’in protokol belgeleri bu ayrımı anlatıyor.
Tarayıcılarda bunun yaygın çözümü XDG Desktop Portal ve PipeWire. Uygulama paylaşım isteğini portala iletiyor, kullanılan masaüstüne uygun portal arka ucu devreye giriyor ve seçilen ekranın veya pencerenin görüntüsü PipeWire üzerinden uygulamaya aktarılıyor. Dolayısıyla uygulamanın, portalın ve compositor’ın bu işi birlikte yapabilmesi gerekiyor. ScreenCast belgeleri
Tam bir masaüstü ortamında bu parçalar genellikle senin için bir araya getirilmiş oluyor. Kendi minimal oturumunu kurduğunda ise eksikleri tamamlamak sana kalabiliyor. Mesela xdg-desktop-portal-wlr kurmak yetmeyebiliyor; doğru portalın seçilmesi, WAYLAND_DISPLAY ve XDG_CURRENT_DESKTOP gibi ortam değişkenlerinin D-Bus tarafından başlatılan servislere aktarılması gerekebiliyor.
Çözülebilir şeyler elbette. Zaten mesele, çözümünün hiç olmaması değil. Bu kadar temel bir iş için çözüm aramak zorunda kalmak yoruyor. İnternette “bende çalışıyor” diyen birinin olması da benim kurulumumdaki eksik parçayı kendiliğinden yerine koymuyor.
Benzer durum masaüstü otomasyonunda da karşına çıkabiliyor. X11’de xdotool ile bir pencereyi bulup öne getirebiliyor veya tuş gönderebiliyorsun. Wayland’e geçince aynı betik aynı şekilde çalışmıyor, çünkü kullandığı X11 arayüzleri Wayland pencerelerini kontrol etmiyor. Alternatif bir araç veya compositor’a özel bir yöntem bulman gerekiyor.
Burada mimari fark da önemli. Xorg kullanırken görüntü sunucusu ayrı, pencere yöneticisi ayrı. Küçük bir pencere yöneticisi seçip diğer işleri X11 üzerinde çalışan araçlara bırakabiliyorsun. Wayland’de compositor aynı zamanda görüntü sunucusu. Uygulamalardan gelen görüntüyü ekrana yerleştirmek ve klavye-fare olaylarını dağıtmak onun işi. Bu nedenle kullandığın compositor ve desteklediği arayüzler, masaüstünde neleri nasıl yapabileceğini daha doğrudan etkiliyor.
İşin tuhaf yanı, bu tasarımı gerçekten daha çok beğeniyorum. Uygulamalar kendi görüntülerini hazırlıyor, compositor bunları alıp ekrana sunuyor. Görüntünün ve girişlerin yönetimi aynı yerde. X11’in yıllar içinde biriktirdiği eski mekanizmaları taşımadan ilerlemek de bana gayet mantıklı geliyor.
Yine de bilgisayarımı kullanırken mimarisini beğenmem tek başına yetmiyor. GNOME ve KDE dışında da rahat kullanılan Wayland kurulumları vardır; benim dwl ve Sway ile aradığım deneyim bu olmadı. Büyük bir masaüstü ortamı kurmadan, temel ihtiyaçlarımın hazır olduğu bir sistem istiyorum.
Xorg’da da yapılandırılacak şeyler var. Onun da sorunları var. Fakat şu an benim istediğim ortamı kurmamı daha az uğraştırıyor. O yüzden tercihim Xorg.
Wayland’in gelişmesini istiyorum. Hatta bir gün tekrar kullanmayı da isterim. Umarım o gün geldiğinde küçük bir compositor seçmek, ekran paylaşımı gibi işler için ayrıca uğraşmayı göze almak anlamına gelmez. Şimdilik bilgisayarı açıp işime bakmak istiyorum.