มีการเปิดตัวโปรโตคอล กลไกการสื่อสารระหว่างกระบวนการ และไลบรารี Wayland 1.20 ที่เสถียร สาขา 1.20 สามารถเข้ากันได้แบบย้อนหลังในระดับ API และ ABI ด้วยการเผยแพร่ 1.x และประกอบด้วยการแก้ไขข้อบกพร่องและการอัปเดตโปรโตคอลเล็กน้อยเป็นส่วนใหญ่ Weston Composite Server ซึ่งมีโค้ดและตัวอย่างการทำงานสำหรับการใช้ Wayland ในสภาพแวดล้อมเดสก์ท็อปและโซลูชันแบบฝังตัว กำลังได้รับการพัฒนาโดยเป็นส่วนหนึ่งของวงจรการพัฒนาที่แยกจากกัน
การเปลี่ยนแปลงที่สำคัญในโปรโตคอล:
- การสนับสนุนอย่างเป็นทางการสำหรับแพลตฟอร์ม FreeBSD ได้ถูกนำมาใช้แล้ว การทดสอบได้ถูกเพิ่มเข้าไปในระบบบูรณาการอย่างต่อเนื่อง
- ระบบการสร้างเครื่องมืออัตโนมัติถูกยกเลิกแล้ว และขณะนี้ถูกแทนที่ด้วย Meson
- เพิ่มฟีเจอร์ "wl_surface.offset" ให้กับโปรโตคอลเพื่อให้ไคลเอนต์อัปเดตออฟเซ็ตของบัฟเฟอร์พื้นผิวโดยไม่ขึ้นอยู่กับบัฟเฟอร์เอง
- ความสามารถ “wl_output.name” และ “wl_output.description” ได้รับการเพิ่มลงในโปรโตคอลแล้ว ทำให้ไคลเอ็นต์สามารถระบุเอาต์พุตได้โดยไม่ต้องเชื่อมโยงกับส่วนขยายโปรโตคอล xdg-output-unstable-v1
- คำจำกัดความโปรโตคอลสำหรับเหตุการณ์แนะนำแอตทริบิวต์ "ประเภท" ใหม่ และตอนนี้เหตุการณ์ก็สามารถทำเครื่องหมายว่าเป็นตัวทำลายได้แล้ว
- เราได้ดำเนินการแก้ไขจุดบกพร่อง รวมถึงการขจัดเงื่อนไขการแข่งขันเมื่อลบพรอกซีในไคลเอนต์แบบมัลติเธรด
การเปลี่ยนแปลงในแอปพลิเคชัน สภาพแวดล้อมเดสก์ท็อป และการกระจายที่เกี่ยวข้องกับ Wayland:
- XWayland และไดรเวอร์ NVIDIA ที่เป็นกรรมสิทธิ์ได้รับการอัปเดตเพื่อให้รองรับการเร่งความเร็วด้วยฮาร์ดแวร์ OpenGL และ Vulkan อย่างเต็มรูปแบบในแอปพลิเคชัน X11 ที่ทำงานโดยใช้ส่วนประกอบ DDX (Device-Dependent X) ของ XWayland
- สาขาหลักในที่เก็บ Wayland ทั้งหมดได้ถูกเปลี่ยนชื่อจาก "master" เป็น "main" เนื่องจากคำว่า "master" เพิ่งได้รับการพิจารณาว่าไม่ถูกต้องทางการเมือง ชวนให้นึกถึงความเป็นทาส และสมาชิกชุมชนบางคนมองว่าเป็นการล่วงละเมิด
- Ubuntu 21.04 ได้เปลี่ยนไปใช้ Wayland ตามค่าเริ่มต้น
- Fedora 35, Ubuntu 21.10 และ RHEL 8.5 เพิ่มความสามารถในการใช้เดสก์ท็อป Wayland บนระบบที่มีไดรเวอร์ NVIDIA ที่เป็นกรรมสิทธิ์
- เซิร์ฟเวอร์คอมโพสิต Weston 9.0 ได้รับการเผยแพร่ ซึ่งเปิดตัว kiosk-shell ซึ่งช่วยให้คุณสามารถเปิดใช้งานแอปพลิเคชันแต่ละรายการในโหมดเต็มหน้าจอแยกกันได้ เช่น เพื่อสร้างซุ้มอินเทอร์เน็ต แท่นสาธิต ป้ายอิเล็กทรอนิกส์ และเครื่องเทอร์มินัลบริการตนเอง
- Canonical ได้เผยแพร่ Ubuntu Frame ซึ่งเป็นอินเทอร์เฟซแบบเต็มหน้าจอสำหรับการสร้างซุ้มอินเทอร์เน็ตโดยใช้โปรโตคอล Wayland
- ระบบสตรีมมิ่งวิดีโอ OBS Studio รองรับโปรโตคอล Wayland
- GNOME 40 และ 41 ยังคงปรับปรุงการรองรับโปรโตคอล Wayland และส่วนประกอบ XWayland อย่างต่อเนื่อง อนุญาตเซสชัน Wayland สำหรับระบบที่มี NVIDIA GPU
- ย้ายเดสก์ท็อป MATE ไปยัง Wayland ต่อไป เพื่อให้ทำงานโดยไม่ต้องเชื่อมโยงกับ X11 ในสภาพแวดล้อม Wayland โปรแกรมดูเอกสาร Atril, การตรวจสอบระบบ, โปรแกรมแก้ไขข้อความ Pluma, โปรแกรมจำลองเทอร์มินัลเทอร์มินัล และส่วนประกอบเดสก์ท็อปอื่นๆ จะได้รับการปรับเปลี่ยน
- เซสชัน KDE ที่เสถียรซึ่งทำงานโดยใช้โปรโตคอล Wayland ตัวจัดการคอมโพสิต KWin และเดสก์ท็อป KDE Plasma 5.21, 5.22 และ 5.23 ได้ปรับปรุงประสิทธิภาพเซสชันตามโปรโตคอล Wayland อย่างมีนัยสำคัญ Fedora Linux บิลด์ที่มีเดสก์ท็อป KDE ได้รับการสลับไปใช้ Wayland ตามค่าเริ่มต้น
- Firefox 93-96 มีการเปลี่ยนแปลงเพื่อแก้ไขปัญหาในสภาพแวดล้อม Wayland ด้วยการจัดการป๊อปอัป การจัดการคลิปบอร์ด และการปรับขนาดบนหน้าจอ DPI ที่แตกต่างกัน พอร์ต Firefox สำหรับ Wayland ยังถูกนำมาสู่ความเท่าเทียมกันทั่วไปในการทำงานด้วยบิลด์สำหรับ X11 เมื่อทำงานในสภาพแวดล้อม GNOME ของ Fedora
- เชลล์ผู้ใช้ขนาดกะทัดรัดที่ใช้เซิร์ฟเวอร์คอมโพสิต Weston - เอาแต่ใจได้รับการเผยแพร่แล้ว
- labwc ซึ่งเป็นเซิร์ฟเวอร์คอมโพสิตสำหรับ Wayland รุ่นแรกที่มีความสามารถคล้ายกับ Openbox window manager วางจำหน่ายแล้ว
- System76 กำลังทำงานเพื่อสร้างสภาพแวดล้อมผู้ใช้ COSMIC ใหม่โดยใช้ Wayland
- มีการสร้างสภาพแวดล้อมผู้ใช้ Sway 1.6 และเซิร์ฟเวอร์คอมโพสิต Wayfire 0.7 โดยใช้ Wayland แล้ว
- มีการเสนอไดรเวอร์ที่อัปเดตสำหรับ Wine ซึ่งช่วยให้คุณสามารถเรียกใช้แอปพลิเคชันโดยใช้ GDI และ OpenGL/DirectX ผ่าน Wine ได้โดยตรงในสภาพแวดล้อมแบบ Wayland โดยไม่ต้องใช้เลเยอร์ XWayland และกำจัดการเชื่อมโยงของ Wine กับโปรโตคอล X11 ไดรเวอร์ได้เพิ่มการรองรับการกำหนดค่า Vulkan และจอภาพหลายจอ
- Microsoft ได้นำความสามารถในการรันแอปพลิเคชัน Linux ด้วยอินเทอร์เฟซแบบกราฟิกในสภาพแวดล้อมที่ใช้ระบบย่อย WSL2 (ระบบย่อย Windows สำหรับ Linux) สำหรับเอาต์พุต จะใช้ตัวจัดการคอมโพสิต RAIL-Shell โดยใช้โปรโตคอล Wayland และอิงตามโค้ดเบสของ Weston
- วิธีการพัฒนาสำหรับแพ็คเกจ wayland-protocols มีการเปลี่ยนแปลง ซึ่งประกอบด้วยชุดโปรโตคอลและส่วนขยายที่เสริมความสามารถของโปรโตคอล Wayland พื้นฐาน และมอบความสามารถที่จำเป็นสำหรับการสร้างเซิร์ฟเวอร์คอมโพสิตและสภาพแวดล้อมของผู้ใช้ ขั้นตอนการพัฒนาโปรโตคอลที่ “ไม่เสถียร” ถูกแทนที่ด้วย “การจัดเตรียม” เพื่อทำให้กระบวนการรักษาเสถียรภาพสำหรับโปรโตคอลที่ได้รับการทดสอบในสภาพแวดล้อมการใช้งานจริงราบรื่นขึ้น
- มีการจัดเตรียมส่วนขยายโปรโตคอลสำหรับ Wayland เพื่อรีสตาร์ทสภาพแวดล้อมแบบหน้าต่างโดยไม่ต้องหยุดแอปพลิเคชัน ซึ่งจะแก้ปัญหาการยุติแอปพลิเคชันในกรณีที่เกิดความล้มเหลวในสภาพแวดล้อมแบบหน้าต่าง
- เพิ่มส่วนขยาย EGL EGL_EXT_present_opaque ที่จำเป็นสำหรับ Wayland ลงใน Mesa แล้ว ปัญหาในการแสดงความโปร่งใสในเกมที่ทำงานในสภาพแวดล้อมตามโปรโตคอล Wayland ได้รับการแก้ไขแล้ว เพิ่มการรองรับสำหรับการค้นหาแบบไดนามิกและการโหลดแบ็กเอนด์ GBM (Generic Buffer Manager) ทางเลือก เพื่อปรับปรุงการรองรับ Wayland บนระบบที่มีไดรเวอร์ NVIDIA
- การพัฒนา KWinFT ซึ่งเป็นทางแยกของ KWin ที่มุ่งเน้นไปที่ Wayland ยังคงดำเนินต่อไป นอกจากนี้ โปรเจ็กต์ยังพัฒนาไลบรารี Wrapland ด้วยการใช้ Wrapper บน libwayland สำหรับ Qt/C++ ซึ่งยังคงพัฒนา KWayland ต่อไป แต่จะเป็นอิสระจากการผูกกับ Qt
- การกระจาย Tails ได้วางแผนที่จะเปลี่ยนสภาพแวดล้อมของผู้ใช้ไปใช้โปรโตคอล Wayland ซึ่งจะเพิ่มความปลอดภัยของแอปพลิเคชันกราฟิกทั้งหมดโดยการปรับปรุงการควบคุมวิธีที่แอปพลิเคชันโต้ตอบกับระบบ
- Wayland ถูกเปิดใช้งานตามค่าเริ่มต้นในแพลตฟอร์มมือถือ Plasma Mobile, Sailfish, webOS Open Source Edition,
ที่มา: opennet.ru