Phoenix X-сервер: новий проект заміни Xorg

Phoenix: новий проект X-сервера для заміни Xorg

Хоча Wayland в основному замінив Xorg, багато основних дистрибутивів Linux і графічних середовищ вже відмовилися від підтримки застарілого протоколу відображення або перебувають на етапі відмови, зусилля щодо продовження життя Xorg або його заміни подібними альтернативами тривають. Новими прикладами є проекти XLibre Xserver і Wayback. Тепер до цієї групи приєднується нова назва: Phoenix.

Що таке Phoenix: новий X-сервер

Phoenix – це новий проект X-сервера, який підходить до X11 радикально інакше. Він написаний повністю з нуля мовою програмування Zig, і це не ще один форк коду Xorg. Згідно з інформацією від розробників, Phoenix має на меті показати, що протокол X11 не є застарілим і може бути реалізований простішим, безпечнішим та сучаснішим способом.

Цільова аудиторія та особливості

Проект орієнтується на реальні робочі навантаження на робочому столі, а не на повну завершеність протоколу. Phoenix спеціально підтримує лише підмножину функцій X11, які сучасні додатки використовують у повсякденному житті, включаючи програми, написані багато років тому. Завдяки видаленню рідко використовуваних або застарілих компонентів протоколу Phoenix значно знижує складність, зберігаючи при цьому широку сумісність з програмами.

Безпека та протестування

Важливо зазначити, що на даному етапі Phoenix ще експериментальний і не готовий для щоденного використання. Він може рендерити прості програми з апаратним прискоренням за допомогою GLX, EGL або Vulkan, і тільки в підключеній конфігурації під існуючим X-сервером. Цей режим очікується як єдиний підтримуваний варіант до моменту, поки проект не досягне стадії, достатньої для обробки більш складних реальних сценаріїв.

З точки зору безпеки, Phoenix ізолює програми за замовчуванням. Доступ до чутливих можливостей, таких як запис екрану або глобальні гарячі клавіші, регулюється через явні механізми дозволу. Це робиться без порушення роботи існуючих клієнтів, оскільки спроби несанкціонованого доступу повертають дані-зразки замість помилок протоколу.

Технологічні особливості Phoenix

Внутрішня архітектура Phoenix включає вбудований композитор, який забезпечує безшовне відображення за замовчуванням. Він підтримує вимкнення композитингу для повноекранних додатків та розроблений для зменшення затримки композиторів і vsync. Правильна підтримка багатомоніторності є пріоритетом, вона дозволяє різні частоти оновлення, дисплеї з змінною частотою оновлення та майбутню підтримку HDR.

Крім того, Phoenix активно вивчає можливість розширення протоколу там, де це необхідно. Заплановані нові стандарти, такі як звітування DPI для моніторів, що дозволяє додаткам правильно масштабуватися на комбінованих DPI налаштуваннях. При необхідності Phoenix введе розширення протоколу для сучасних технологій, таких як HDR, зберігаючи при цьому сумісність з існуючими програмами.

Важливо зазначити, що проект не має наміру замінити Xorg. Phoenix свідомо уникає підтримки застарілого апаратного забезпечення та складних особливостей протоколу та зосереджується виключно на сучасних системах.

Сумісність з Wayland

Сумісність з Wayland також є частиною довгострокового бачення. Розробники говорять, що Phoenix може зрештою підтримувати клієнтів Wayland безпосередньо або покладатися на інструменти мосту для запуску додатків лише для Wayland в середовищі X11. Запуск Phoenix у вкладеній конфігурації під Wayland як альтернатива Xwayland також розглядається.

Phoenix ліцензований під GPL-3.0-only та побудований з використанням Zig 0.14.1. Хоча проект все ще на ранніх стадіях розвитку, він чітко показує: багато проблем, які зазвичай закидають X11, пов’язані з реалізацією Xorg, а не з самим протоколом. Phoenix демонструє, що сучасний, безпечний та ефективний X-сервер все ще можливий без повного відмови від X11.

Проект ще на початкових стадіях, і залишається дізнатися, чи перейде він у стабільні версії для виробництва та буде прийнятий для більш широкого використання. Для отримання додаткової інформації про цю нову ініціативу, відвідайте тут.