The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

Удалённая работа с GTK-приложениями через браузер
В состав 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
 
Ключи: broadway, gtk, gdk, browser / Лицензия: CC-BY
Раздел:    Корень / Пользователю / X Window

Обсуждение [ Линейный режим | Показать все | RSS ]
 
  • 1.1, Онанимус, 12:34, 26/12/2016 [ответить] [смотреть все]
  • +/
    В чем профит, брат?
     
     
  • 2.2, Брат, 17:01, 26/12/2016 [^] [ответить] [смотреть все]
  • +/
    Теперь сервак можно админить через веб браузер и окошки. Все как в винде.
     
  • 2.3, J.L., 10:27, 27/12/2016 [^] [ответить] [смотреть все]
  • +/
    > В чем профит, брат?

    возможно сетевой функционал иксов для вайленда ?

     
  • 1.4, Murad Aslanov, 16:56, 30/12/2016 [ответить] [смотреть все]
  • +/
    Я так понимаю, можно гткшные игры теперь в браузере играть? или не получится?
     
     
  • 2.5, Андрей, 19:29, 01/01/2017 [^] [ответить] [смотреть все]
  • +/
    А разве много есть именно Gtk-шных игр? Вот firefox - это Gtk-шное приложение. Но от Gtk там всего ничего используется: само окно да буфер обмена точно.
     
     
  • 3.6, Аноним, 18:07, 04/01/2017 [^] [ответить] [смотреть все]  
  • +/
    То есть, теперь можно открыть firefox, чтобы открыть в нем firefox ... весь текст скрыт [показать]
     
     
  • 4.9, 858d214ba09f174963f9d4f132585a83, 20:50, 10/01/2017 [^] [ответить] [смотреть все]  
  • +/
    А чет не хочет открывать говорит какие-то там проблемы. И в целом у меня не вышло открыть половину GTK приложений сообщает, что проблемы с каким-то Clutter. В целом открылись два приложения редактор и калькулятор ;) Что дает огромный простор для распределенных вычислений и совместного(?) редактирования )))
     
  • 1.8, mkoshel, 22:03, 09/01/2017 [ответить] [смотреть все]  
  • +/
    Селениум тесты для GTK-приложения?
     
     
  • 2.10, 858d214ba09f174963f9d4f132585a83, 20:54, 10/01/2017 [^] [ответить] [смотреть все]  
  • +/
    > Селениум тесты для GTK-приложения?

    А не проще ли в таком случае для Selenium просто свой GDK_BACKEND сделать? С другой стороны давно уже есть и работает виртуальный X11 сервер.

    В целом не вижу особого преймущества перед виртуальным X11 сервером (xvfb). Вижу только какие-то ограничения на один тип приложений на GTK.

     
  • 1.11, Аноним, 06:57, 12/01/2017 [ответить] [смотреть все]  
  • +/
    Абсолютно бесполезная фича
     
  • 1.12, Аноним, 18:43, 18/01/2017 [ответить] [смотреть все]  
  • +/
    А если это Python GTK то так можно?
     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:




      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor TopList