В состав GTK+ входит бэкенд Broadway, позволяющий отрисовывать вывод в окне web-браузера, передавая данные через WebSocket и формируя изображение с использованием технологий HTML5. Каждое окно сопоставляется с элементом canvas, а содержимое окон передается клиенту в виде копий слоев (для скроллинга) и блоков, описывающих изменения между изображениями. Изображения отправляются в формате PNG. Для обновления содержимого окна организуется передача потока команд через "multipart/x-mixed-replace"-запросы XMLHttpRequest. Начиная с Ubuntu 15.04 бэкенд Broadway поставляется по умолчанию. В более ранних выпусках необходимо установить пакет из PPA: sudo add-apt-repository ppa:malizor/gtk-broadway sudo apt-get update sudo apt-get upgrade sudo apt-get install broadwayd Для использования Broadway в любом приложении на базе GTK+3 достаточно перед запуском установить переменную окружения GDK_BACKEND=broadway, после чего интерфейс приложения станет доступен при открытии в браузере страницы http://127.0.0.1:8080. Для запуска нескольких приложений, с присвоением для них разных номеров портов, следует использовать вспомогательный дисплейный сервер broadwayd. Например: broadwayd GDK_BACKEND=broadway gedit Если после запуска произошёл крах, можно попробовать отключить в программе работу с глобальным меню и исчезающими полосами прокрутки: GDK_BACKEND=broadway UBUNTU_MENUPROXY= LIBOVERLAY_SCROLLBAR=0 gedit Для запуска ещё одного приложения, в broadwayd следует указать номер сеанса, после чего номер порта для него выбирается по формуле "8080 + номер". Например (127.0.0.1:8081): broadwayd :1 GDK_BACKEND=broadway gtk3-demo Для доступа с другого ПК можно прикрепить обработчик на другой IP-адрес при помощи опции --address, например: broadwayd --address 192.168.1.34 :2 Для предотвращения несанкционированного доступа для сеанса можно задать пароль, который нужно сохранить в файл ~/.config/broadway.passwd. Например: openssl passwd -1 > ~/.config/broadway.passwd
возможно сетевой функционал иксов для вайленда ?
То есть, теперь можно открыть firefox, чтобы открыть в нем firefox?
Freeciv к примеру.
А не проще ли в таком случае для Selenium просто свой GDK_BACKEND сделать? С другой стороны давно уже есть и работает виртуальный X11 сервер.
В целом не вижу особого преймущества перед виртуальным X11 сервером (xvfb). Вижу только какие-то ограничения на один тип приложений на GTK.