Projekt Phoenix vyvíjí moderní X-server, napsaný v jazyce Zig

V rámci projektu Phoenix byla učiněna snaha o vytvoření zcela nového X-serveru, který nevyužívá prvky X.org Serveru a cílí na vytvoření moderní alternativy, rozšiřující protokol X11 a poskytující možnosti pro kompatibilitu s Waylandem. V aktuálním vývoji není Phoenix dosud připraven na každodenní používání, ale již umožňuje organizovat práci s jednoduchými aplikacemi, které využívají pro výstup grafiky GLX, EGL nebo Vulkan, při zapnutém Phoenixu nad existujícím X-serverem. Kód je napsán v programovacím jazyce Zig a šíří se podle licence GPLv3.

V Phoenixu nemají v plánu realizovat veškerou funkcionalitu protokolu X11, jakou nabízí X.org Server, a podporovat zastaralý hardware. Například místo plné podpory prvků protokolu X11 pro práci s fonty plánují přidat pouze základní operace, které jsou požadovány v reálných aplikacích. Místo podpory klasických X.Org grafických ovladačů se pro výstup grafiky používají Linux DRM (Direct Rendering Manager) a Mesa GBM (Generic Buffer Management).

Předpokládá se, že omezení funkcionality neovlivní schopnost spouštět běžně používané aplikace, dokonce i ty, které používají GTK2. Takový přístup značně zjednoduší implementaci a zachová kompatibilitu s programy, které byly vydány během posledních 20 let, a také zajistí funkčnost na hardware, který není starší než 15-20 let.

Současně plánují do protokolu X11 přidat nová rozšíření, která zohledňují moderní trendy, jako je podpora HDR, správná podpora více monitorových konfigurací (oddělené rámcové paměti pro každý monitor), možnost určení DPI v závislosti na monitorech, adaptivní změna frekvence obnovování monitoru (VRR) a ochrana proti vzniku trhlin při výstupu (tearing). V Phoenixu bylo také změněno chování při zpracování řetězců — výchozím nastavením je UTF-8, zatímco ISO Latin-1 se používá pouze při výslovném určení této kódování.

Pro zvýšení bezpečnosti aplikace v Phoenix jsou aplikace ve výchozím nastavení navzájem izolovány a mohou interagovat a přistupovat k cizím oknům nebo vstupním událostem pouze po výslovném potvrzení oprávnění prostřednictvím speciálního dialogu nebo poskytnutí práv při spuštění. Aby byla zajištěna kompatibilita se staršími klienty X11, namísto hlášení chyb v případě nedostatečných oprávnění budou přenášena prázdná data. Globální klávesové zkratky budou fungovat pouze při držení klávesy modifikátoru nebo poskytnutí samostatných oprávnění.

Pro spuštění aplikací, které podporují pouze Wayland, se plánuje realizace integrované podpory tohoto protokolu nebo využití externích vrstvy, jako je 12to11.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster