Niri ซึ่งเป็น scrollable-tiling Wayland compositor ที่เขียนด้วยภาษา Rust กำลังดึงดูดความสนใจจากผู้ใช้ Linux ที่ต้องการทางเลือกแทน tiling window manager แบบดั้งเดิม ต่างจากระบบ tiling แบบเดิมที่จะปรับขนาดหน้าต่างที่มีอยู่เมื่อเปิดหน้าต่างใหม่ Niri จะจัดเรียงหน้าต่างเป็นคอลัมน์บนแถบแนวนอนที่ไม่มีที่สิ้นสุด โดยรักษาขนาดและตำแหน่งของหน้าต่างที่มีอยู่เดิม
การดึงดูดผู้ใช้ที่ใช้ Window Manager แบบดั้งเดิมมานาน
compositor นี้ได้ดึงดูดผู้ใช้ที่พึ่งพา tiling window manager แบบดั้งเดิมมานานกว่าทศวรรษให้หันมาใช้ สมาชิกในชุมชนหลายคนรายงานว่าได้เปลี่ยนจาก i3, xmonad และ Hyprland หลังจากใช้งานมาหลายปี การเปลี่ยนแปลงดูเหมือนจะราบรื่นเป็นพิเศษสำหรับผู้ใช้ที่เคยประสบปัญหากับการปรับขนาดหน้าต่างอย่างต่อเนื่องที่เกิดขึ้นในระบบ tiling แบบดั้งเดิมเมื่อเปิดแอปพลิเคชันใหม่
แนวทาง scrollable ช่วยให้ผู้ใช้สามารถจัดระเบียบ workspace ตามหัวข้อแทนที่จะถูกจำกัดด้วยพื้นที่หน้าจอ ซึ่งหมายความว่า workspace สามารถมีหน้าต่างที่เกี่ยวข้องได้ไม่จำกัดจำนวนโดยไม่บังคับให้ผู้ใช้ต้องสลับระหว่าง desktop หลายตัวหรือต้องจัดการกับการจัดเรียงหน้าต่างที่คับแคบ
การปรับปรุงประสิทธิภาพและความเข้ากันได้ของฮาร์ดแวร์
การพัฒนาล่าสุดได้แก้ไขปัญหาความเข้ากันได้ที่สำคัญซึ่งเคยจำกัดการนำไปใช้ การรวมเข้ากับ xwayland-satellite ตั้งแต่เวอร์ชัน 25.08 ได้แก้ไขปัญหากับแอปพลิเคชันที่ใช้เฉพาะ X11 เช่น VS Code, Obsidian และ Zoom ผู้ใช้รายงานการใช้งานที่สำเร็จบนการกำหนดค่าฮาร์ดแวร์ต่างๆ รวมถึงการ์ดจอ NVIDIA ด้วยระบบ RTX 3090 และ RTX 3060
compositor แสดงให้เห็นการปรับปรุงประสิทธิภาพที่น่าประทับใจ โดยมีรายงานการใช้งานที่สำเร็จบนฮาร์ดแวร์ที่เรียบง่ายเช่น Eee PC 900 จากปี 2008 การรองรับหลายจอภาพด้วยการกำหนดค่า DPI แบบผสมทำงานได้อย่างเชื่อถือได้ และ fractional scaling รักษาการแสดงผลแบบ pixel-perfect ตลอดทั้งอินเทอร์เฟซ
ความต้องการของระบบและความเข้ากันได้
ส่วนประกอบ | สถานะ | หมายเหตุ |
---|---|---|
หลายจอภาพ | ✅ รองรับเต็มรูปแบบ | ใช้งานได้กับ DPI แบบผสม |
การปรับขนาดแบบเศษส่วน | ✅ รองรับ | UI แบบ pixel-perfect |
NVIDIA | ✅ เข้ากันได้ | ใช้งานได้กับไดรเวอร์รุ่นใหม่ |
หน้าต่างแบบลอย | ✅ พร้อมใช้งาน | ตั้งแต่เวอร์ชัน 25.01 |
Touchpad/Mouse | ✅ รองรับ | รวมท่าทาง |
Screen readers | ✅ เข้ากันได้ | รองรับการเข้าถึง |
แอป Xwayland | ✅ รองรับ | ผ่าน xwayland-satellite |
การแก้ไขข้อจำกัดของ Tiling Window Manager แบบดั้งเดิม
ข้อได้เปรียบที่สำคัญที่ผู้ใช้เน้นย้ำคือการขจัดภาระทางความคิดที่เกี่ยวข้องกับการจัดการหน้าต่าง tiling window manager แบบดั้งเดิมต้องใช้พลังงานทางจิตอย่างต่อเนื่องในการปรับขนาดและจัดตำแหน่งหน้าต่างใหม่เมื่อมีการเพิ่มแอปพลิเคชันใหม่เข้าไปใน workspace แนวทางของ Niri ขจัดภาระนี้โดยรักษาขนาดและตำแหน่งหน้าต่างให้สม่ำเสมอ
ฉันสามารถโฟกัสได้หลายชั่วโมงติดต่อกันและใช้พลังงานทางจิตเป็นศูนย์ในการปรับขนาดหน้าต่าง ฉันเคยมีปัญหานี้น้อยกว่ากับ i3wm แต่คุณต้องปรับใหม่เสมอหลังจากที่มีหน้าต่างหลายตัวถูก tile เข้ามาใน workspace ของคุณ
compositor รวมคุณสมบัติต่างๆ เช่น dynamic workspace คล้ายกับ GNOME, โหมด overview สำหรับแสดงภาพรวมของหน้าต่างและ workspace ทั้งหมด, ฟังก์ชัน screenshot ในตัว และการรองรับ animation แบบกำหนดเองด้วยการรวม shader
คุณสมบัติหลัก
- การจัดการหน้าต่าง: การเรียงต่อแบบเลื่อนได้พร้อมแถบแนวนอนไร้ขีดจำกัด
- หลายจอภาพ: รองรับเต็มรูปแบบพร้อมการกำหนดค่า DPI แบบผสม
- การปรับขนาดแบบเศษส่วน: การแสดงผล UI ที่ละเอียดระดับพิกเซล
- หน้าต่างลอย: พร้อมใช้งานตั้งแต่เวอร์ชัน 25.01
- การรวม Xwayland: ผ่าน xwayland-satellite ตั้งแต่เวอร์ชัน 25.08
- การรองรับฮาร์ดแวร์: ยืนยันความเข้ากันได้กับ NVIDIA
- ประสิทธิภาพ: ทำงานได้บนฮาร์ดแวร์เก่าแก่ถึง Eee PC 900 ปี 2008
ความท้าทายในการพัฒนาและการสนับสนุนจากชุมชน
โครงการนี้เผชิญกับความท้าทายในการขยายขนาดเมื่อความนิยมเพิ่มขึ้น ผู้ดูแลโครงการมีภาระงานมากเกินไปจากการมีส่วนร่วมและ pull request ต่างๆ ทำให้มีการแนะนำให้สมาชิกชุมชนบริจาคหรือช่วยเหลือในการ review โค้ดก่อนที่จะส่ง feature ใหม่ สถานการณ์นี้สะท้อนถึงการนำไปใช้อย่างรวดเร็วของโครงการ แต่ยังเน้นย้ำถึงความจำเป็นในการปฏิบัติการพัฒนาที่ยั่งยืน
การติดตั้งยังคงตรงไปตรงมาในการแจกจ่ายส่วนใหญ่ แม้ว่าการ packaging ของ Debian จะล้าหลังแพลตฟอร์มอื่นๆ โค้ดเบสที่ใช้ Rust ช่วยอำนวยความสะดวกในการ build จาก source ทำให้เข้าถึงได้แม้ในการแจกจ่ายที่ไม่มี package อย่างเป็นทางการ
แนวคิด scrollable tiling แสดงถึงการเปลี่ยนแปลงพื้นฐานในปรัชญาการจัดการหน้าต่าง โดยให้ความสำคัญกับความต่อเนื่องของ workflow มากกว่าการปรับปรุงพื้นที่แบบดั้งเดิม เมื่อการนำ Wayland ไปใช้ยังคงดำเนินต่อไปและ window manager แบบดั้งเดิมเริ่มแสดงอายุ Niri เสนอทางเลือกที่น่าสนใจซึ่งแก้ไขปัญหาการใช้งานที่มีมานานในขณะที่รักษาประโยชน์ด้านการจัดระเบียบของระบบ tiling ไว้
อ้างอิง: YaLTeR/niri