Collabora 改進了 Wine 的 Wayland 驅動程序,現在與 Vulkan 兼容

2020 年底,Collabora 宣布打算為 Wine 創建控制器 為了與 Wayland 一起工作,因為在 Linux 上,Wine 使用 X11 與 X11 顯示服務器交互。 在許多現代系統中,與 X11 和 win32 等更傳統的顯示系統相比,Wayland 協議在設計上受到更多限制,這在將 Wayland 與 Wine 集成時提出了一系列獨特的挑戰。

三個月後,Collabora 展示了第一次更新 控制器的改進是 Wine 和 Wayland 之間最基本的雙向工作,儘管控制器出現了許多錯誤,尤其是窗口的縮放。

在過去的幾個月裡,我們一直在改進 Wine 的實驗性 Wayland 驅動程序,它允許 Windows 應用程序直接在 Wayland composers 中運行。 我們的目標是最終消除許多用例對 XWayland 的需求,從而降低系統的整體複雜性,同時消除潛在的低效率點。

現在經過近 7 個月的工作,已經提出了改進版本 Wayland 驅動程序允許在基於 Wayland 的環境中直接通過 Wine 運行使用 GDI 和 OpenGL/DirectX 的應用程序,而無需使用 XWayland 層並擺脫 Wine 與 X11 協議的綁定。

關於新版控制器

在這個新版本中 引入了 Vulkan 支持 並且 帶有窗口管理處理 改變大小、全屏、最小化等操作不再是問題,除此之外,還可以直接使用或通過 WineD3D 或 DXVK 實現 Direct3D。

Collabora 開發人員提到 Wayland 的控制器 現在支持在 Wine 的多個顯示器上工作 並支持動態添加和刪除監視器。 它還支持更改每個監視器的應用程序感知分辨率(通過作曲家縮放,請參閱上面的更新)以實現每個監視器的模式更改。

支持更改每台顯示器的分辨率和模式 並提供了 HiDPI 縮放和使用高像素密度 (HiDPI) 顯示器。

最後,還提到在 Wayland 中實現了鍵盤佈局的處理,並添加了對剪切和相對光標移動的支持。

在這個新版本中,除了與 Wine 開發人員就在 Wine staging 分支中包含 Wayland 幫助以及隨後轉移到 Wine 的主要組成部分的主題進行對話之外,控制器越來越接近於可用於一般用途的功能。

關於它 Alexandros Frantzis(Collabora 開發人員)分享了:

»我認為控制器已經達到了一個地步,它具有足夠的功能以適用於許多用例,並且也提供了足夠的信心,使其成為未來可行的選擇。 我現在的計劃主要是專注於修復/增強,並通過創建一系列更適合修訂版/上游補丁集來開始為暫存做準備。

終於 如果您有興趣了解更多信息,您可以檢查 以下鏈接中提供了詳細信息。

構建控制器

對於那些有興趣獲得、構建和/或使用 Wine 的 Wayland 驅動程序的人,他們應該知道需要安裝 Wayland 以及 wayland-client、wayland-egl 和 xkbcommon 開發。

控制器的構建可以通過打開一個終端來完成,他們將在其中輸入以下命令:

git clone -b wayland https://gitlab.collabora.com/alf/wine/
cd wine
./configure --with-wayland [--with-vulkan --with-vkd3d]
make [-jN]
DISPLAY= WAYLAND_DISPLAY=wayland-0 ./wine ...

想了解更多編譯過程或者獲取源碼,可以 在下面的鏈接中。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責資料:AB Internet Networks 2008 SL
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。