![](https://habrastorage.org/storage2/fba/57f/666/fba57f666779fd4e8df5ddd94ba5e97d.png)
X logical font description (XLFD): стандарт шрифтов X Window System
Кристиан Хогсберг (Kristian Høgsberg) объявил о выпуске Wayland 1.0 — протокола и клиентского API, которые являются современной заменой для X Window. Это первый мажорный релиз долгожданной системы, о которой говорят последние четыре года. Хотя Wayland ещё не готов к использованию, но для всех последующих модификаций гарантируется обратная совместимость.
Многие говорят, что ограничения X11 не позволяют создавать красивые GUI, как в других операционных системах. Wayland исправит это и выведет Linux на современный уровень в части графических интерфейсов. Внедрение Wayland в качестве композитного менеджера для Ubuntu ожидается в Ubuntu 13.04 (апрель 2013 года) или в следующем релизе.
Оконная система X Window System, разработанная в 1984 году, имеет фундаментальные изъяны с точки зрения современных интерфейсов. Когда «иксы» создавались, графика состояла из линий и растровых шрифтов. Всё это устаревшее наследие тянется до сих пор и присутствует в современном коде X.Org Server (X-сервер).
Значительная функциональность X-сервера сегодня перекочевала или в ядро, или в библиотеки, так что X-сервер превратился в архаичного монстра, который поддерживает растеризацию и кэширование глифов, XLFD, устаревшие API с рисованием графических примитивов времён 80-х. К нему добавляют современные расширения типа XRandR, XRender и COMPOSITE, но только с внедрением Wayland можно будет полностью перевести код 80-х годов в опциональный модуль.
Современные приложения работают на библиотеках элементов интерфейса, таких как GTK и Qt, которые, в свою очередь, рендерятся в буфер X-подсистемы и потом выводятся на экран. Фреймворк X со встроенной поддержкой сетевой прозрачности (об этом см. ниже) требует неоднократного копирования отрендеренных библиотекой изображений из одного буфера в другой. X Server оптимизирован именно для таких задач. Это нужно было в 80-е годы, когда создавалась X Window. Но сейчас мало кто из домашних пользователей использует передачу графического интерфейса по сети, так что его обязательность выглядит архаичной. Тем более если учесть те жертвы, которые приходится отдавать за неё.
Ключевое отличие Wayland от X11 — собственный встроенный композитный менеджер, использующий OpenGL ES.
![](https://habrastorage.org/storage2/2ee/f23/b7d/2eef23b7dcf91f97a1e6ac45133333e2.png)
![](https://habrastorage.org/storage2/983/895/6f5/9838956f5b0e951805ac9a8aa0868169.png)
Таким образом, в Wayland весь рендеринг выполняется на клиентской стороне — так, как сегодня работает OpenGL, а задание режимов и другие аппаратные установки выполняются в ядре. Такой подход позволяет значительно упростить организацию сервера.
Ради объективности нужно упомянуть, что по сравнению с X11, Wayland имеет и определённые недостатки. Самый главный и принципиальный недостаток Wayland— потеря сетевой прозрачности (Network Transparency). Как известно, X Window обладают уникальным качеством: графический интерфейс программы может работать удалённо от самой программы, по сети. Таким способом было удобно управлять админкой удалённого сервера. В Wayland этого нет. Здесь придётся искать другие варианты: например, работать через эмулятор VNC или через браузер. Впрочем, на широком канале VNC может работать даже быстрее, чем X Window.
Есть и другие неприятные моменты. Например, приложения получат контроль над окнами вместо оконного менеджера. Пользователям Windows известны ситуации, когда нельзя изменить размер окна или минимизировать его, потому что приложение этого не предусматривает. Теперь то же самое появится в любимом Линуксе.
Тем не менее, ведущие разработчики X Window активно поддерживают Wayland и много говорят о том, как новая система решает старые и всем надоевшие проблемы.
via Slashdot, Freedesktop.org, Phoronix, презентация Wayland