رویای زنده نگه داشتن X11 در دنیای لینوکس؛ معرفی ۸ پروژهای که تسلیم Wayland نمیشوند

حتماً خودتون هم در جریان هستید که توزیعها و میزکارهای اصلی لینوکس دارن کمکم با X11 خداحافظی میکنن و میرن سمت Wayland. سِوِری که سالها گرافیک و ارتباطات رو مدیریت میکرد حالا جاش رو به پروتکلهای جدیدتر میده. شرکتهایی مثل KDE و GNOME هم دیگه دارن رسماً پشتیبانی از سشنهای بومی X11 رو کنار میذارن یا محدود میکنن. اما نگران نباشید! همهچیز برای طرفداران قدیمی X11 تموم نشده؛ کلی پروژه خفن سر و کلشون پیدا شده که مصمم هستن این تجربه رو زنده نگه دارن. از چنگ زدن به کدهای قدیمی X.Org Server گرفته تا نوشتن یک X server کاملاً جدید از صفر!
تو این مقاله میخواهیم ۸ تا از این پروژههای باحال رو بررسی کنیم؛ از دسکتاپها و سرورهای مختلف گرفته تا لایههایی که به شما اجازه میدن برنامههای X11 رو روی یک Wayland compositor اجرا کنید. همه این پروژهها Open Source هستن و تو ماههای اخیر فعالیت توسعهای خوبی داشتن.
1. SonicDE

پروژه SonicDE یک دسکتاپ جدید است که از دل KDE Plasma 6 بیرون آمده اما تمرکزش رو گذاشته روی X11. این پروژه کار خودش رو به عنوان یک نسخه پچشده از KWin/X11 شروع کرد و کمکم تبدیل به یک window manager و compositor مستقل شد که کدهای KWin/Wayland رو با ایدههای خودش ترکیب کرده تا X11 رو سر پا نگه داره.
توسعهدهندگان SonicDE دارن کدهای مرتبط با Wayland رو از ساختار دسکتاپ پاک میکنن و حتی دارن روی یک بکاند Vulkan کار میکنن تا سازگاری با X.Org Server تا جایی که امکان داره حفظ بشه. اگر از توزیعهای مبتنی بر Arch، مانجارو، گنتو یا اسلکور استفاده میکنید، پکیجهای این دسکتاپ در دسترسه.
2. Trinity Desktop Environment

محیط دسکتاپ Trinity یا همان TDE، کدهای قدیمی KDE 3.5 رو زنده نگه داشته تا کسانی که عاشق ظاهر کلاسیک و سبک دسکتاپهای قدیمی هستن بتونن روی سختافزارهای ضعیف هم راحت کار کنن.
بر خلاف پلاسما و گنوم، TDE هیچوقت نرفت سراغ Wayland و همچنان سفت و سخت روی X11 وستایند. انتشار نسخه R14.1.6 کلی باگهای مربوط به transparency و پنجرهها رو حل کرده و یک گزینه حاشیه سهبعدی هم به پنل اضافه کرده. این دسکتاپ جذاب روی بیشتر توزیعهای لینوکس و FreeBSD قابل نصبه.
3. Wayback

Wayback قرار نیست جایگزین کلاینتها یا دسکتاپهای X11 بشه؛ بلکه اومده تا لایه زیرین اونها رو عوض کنه! این پروژه در واقع یک Wayland compositor سبک است که با wlroots ساخته شده و به شما اجازه میده یک محیط دسکتاپ کامل X11 رو درونش اجرا کنید.
هدف اصلی اینه که سرور سنگین Xorg دیگه نیازی نباشه، در حالی که هنوز هم بشه از برنامهها و دسکتاپهای قدیمی X11 استفاده کرد. این پروژه توسط Ariadne Conill از توزیع Alpine Linux کلید خورده و تحت مجوز MIT توسعه پیدا میکنه.
4. XLibre

XLibre یک fork جامعهمحور از X.Org Server است که هدفش ادامه توسعه این کدوبیس و زنده نگه داشتن قابلیتهای X11 است. این پروژه کلی بهبود جدید رو که هیچوقت تو نسخه اصلی X.Org عرضه نشده بودن (مثل امکاناتی که قبلاً فقط تو Xwayland بود) با خودش آورده.
حالت TearFree پیشفرض فعاله و کلی قابلیتهای امنیتی دیگه مثل Xnamespace توش قرار داده شده تا برنامهها از هم ایزوله باشن. این پروژه پکیجهای ساخت خودکار برای لینوکس، BSD، مک و ویندوز داره.
5. Yserver

پروژه yserver توسط Jos Dehaes از صفر و با زبان قدرتمند Rust نوشته شده و تحت مجوز MIT منتشر شده. این پروژه قرار نیست موبهمو کارهای Xorg رو تکرار کنه و خیلی از قابلیتهای اضافه رو کنار گذاشته تا سبکتر باشه.
با وجود اینکه هنوز در مراحل اولیه توسعه است، yserver همین الان هم میتونه سشنهای کامل دسکتاپهای MATE، Xfce و Cinnamon رو اجرا کنه و با window managerهای مختلفی مثل Openbox و i3 تست شده است.
6. XQuartz

XQuartz با بقیه پروژههای این لیست یککم فرق داره. این پروژه قصد نداره X11 رو روی لینوکس نجات بده، بلکه اومده کارتی بازی کنه تا برنامههای گرافیکی X11 روی سیستمعامل مک (macOS) و در کنار برنامههای بومی اپل مثل آب خوردن اجرا بشن.
نسخه پایدار 2.8.6 کلی از باگهای امنیتی رو برطرف کرده و رندرینگ رو روی مکهای مجهز به تراشههای اپل سیلیکون خیلی روونتر کرده است.
7. Phoenix

Phoenix یک X server کاملاً جدید است که با زبان Zig و از صفر نوشته شده، نه اینکه یک fork از Xorg باشه! هدفش اینه که با پشتیبانی کردن از زیرمجموعهای از پروتکل X11، سروری بسیار سادهتر، امنتر و مدرنتر برای سختافزارهای امروزی بسازه.
امنیت بالا، ایزوله بودن برنامهها، پشتیبانی از چند مانیتور با رفرشریتهای مختلف و حتی قابلیت HDR از اهداف جذاب این پروژه است. فعلاً فینیکس به صورت تو در تو (nested) روی سرورهای موجود اجرا میشه و قابلیتهای گرافیکی مثل Vulkan رو به خوبی هندل میکنه.
8. Frame
پروژه Frame یک شاهکار خاصه! یک X server برای لینوکسهای 64 بیتی که کاملاً با زبان اسمبلی NASM نوشته شده است. این پروژه کتابخانههای معمول مثل libc و Xlib رو کاملاً دور زده و مستقیماً با پروتکل X11 و کرنل لینوکس حرف میزنه.
این پروژه توسط Geir Isene ساخته شده و میتونه همزمان تا ۱۲۸ کلاینت رو مدیریت کنه و از استانداردهای مهمی مثل XInput2 و RANDR پشتیبانی میکنه.


