敗北Wayland合成器實在太多了!有時候我看到有人用WM不用DE的都覺得對方很厲害,不過這很難普及。更別說還有人在課堂上教學生裝IceWM了。Linux桌面的碎片化還不嚴重嗎?
每次我看到有新的Wayland合成器出現be like:
你不這麼覺得嗎,Linux桌面逐漸遷移到Wayland之後,已經至少有20種以上Wayland合成器(compositor)出現了,除了比較知名的Weston(Wayland官方參考實作)、GNOME Mutter、KDE Kwin之外,還有一狗票基於wlroots或Smithay函式庫開發的Wayland合成器,例如Hyprland、WayFire、Niri、Labwc、River、dwl、Hiakri、Miracle……等等。其中很多甚至不能構成桌面環境(Desktop Environment),就只是一個合成器,要自己找其他元件拼成桌面。
這不禁讓人想到X Window時代的許多X視窗管理員的榮景,不同X11桌面環境的使用者可以更換Window Manager和Compositor實現自己想要的視窗特效。X視窗管理員少說也有20種以上。但是,時代變了,Wayland桌面使用者不應該去單獨替換視窗管理器。要嘛就整個桌面環境換掉。
儘管以下這張圖是詆毀Wayland的,不過它很好的說明了現在Wayland合成器所應扮演的角色,架構就是跟X Window不一樣了。因此建立多個Wayland合成器顯得沒有必要。
Hyprland作者Vaxry在We don’t need more Wayland Compositors討論了這個問題,他指出,Wayland的結構跟X11是不一樣的。因為現在沒有統一的X Server了,Wayland只有一套標準規範,得依賴合成器實作。現在的Wayland合成器要負責的事情比X視窗管理器做的要多的多,每個Wayland合成器除了編排視窗之外,還要負責處理螢幕錄影和顯示卡驅動互動等複雜的操作。
所以Wayland很多桌面發展成熟後都會有自己的XDG Desktop Portal出現,為的是能實現那些FreeDesktop制定的共通標準。你想要X11時代dwm那種機制簡單的設定,Wayland已經很難做到了。即使是標榜模仿i3wm的Sway,也得自己研發XDG Desktop Portal。
他認為很多Wayland合成器都在重複造輪子,用不同的程式碼,實現幾乎一樣的功能。有的專案搞不好沒多久就塵封在沙子裡了,連開啟終端機都有問題。
如果要我說的極端一點,Linux世界值得努力改進的桌面只有兩個,一個是GNOME,一個是KDE Plasma。其他桌面環境重要性都沒他們高。
結果…Hyprland作者提出的方案是大家應該以少數的桌面作為基準下去開發就好了。例如,以Hyprland為中心下去開發插件,允許使用者修改Hyprland的視窗編排方式,替代過去X Window Manager的地位。而不是從頭寫一堆Wayland合成器。不過嘛,Hyprland是用C++寫的,可不符合一些人對Rust未來性的癖好。
對了,Hyprland作者對System76的COSMIC桌面不感興趣:The problems and shortcomings of Cosmic 他覺得這個桌面缺乏明確發展方向,不知道目標客群是誰。
笑死,Hyprland自己根本就不算是桌面環境,他target的還是高級用戶耶www Hyprland不算是完整桌面,但仍然得自行研發相關工具,例如桌布程式Hyprpaper以完善桌面體驗。結果到頭來Hyprland這種合成器還是在重造輪子。
我個人是覺得…現代的桌面環境太複雜了,雖說開源本身就容易碎片化,人們應該專注開發完整桌面的體驗,至少以COMSIC為榜樣,致力提供完整的產品而不是只有合成器而已。或者貢獻現有的桌面。如果不是像Steam Gamescope和Pursim Phosh這種有特殊場景需求開發的,其他單獨的Wayland合成器對一般用戶似乎沒有太大價值去使用,就留給那些愛探索的geek玩就好。

