- Notifications
You must be signed in to change notification settings - Fork64
Broadway
Broadway enables you to use your GTK apps right in the web desktop.
Broadway doesn't virtualize apps, it's a GTK backend (thus, it's faster). Instead of rendering apps on the screen (with the X server/Wayland/other), it's streaming it via WebSockets (compressed, and only updated regions are refreshed).
Resources:
- Official documentation:https://developer.gnome.org/gtk3/stable/broadwayd.html
- World of Gnome article:http://worldofgnome.org/running-gtk-apps-on-web-with-node-broadway/
- LinuxFr article (in French):http://linuxfr.org/users/ondex2/journaux/gtkhtml5-libreoffice-dans-le-cloud
This is an experimental technology! Use it carefully!
You'll have to install Broadway on your server:
- In Ubuntu:https://launchpad.net/~malizor/+archive/gtk-broadway
- In Archlinux:https://aur.archlinux.org/packages/gtk3-broadway/
You'll have to install thebranchfeat-broadway
of Symbiose in order to get latest Broadway updates in the webos.
First, start the Broadway server:
broadwayd -a 0.0.0.0 -p 8080 :2
Options:
-a
: the bind address-p
: the server port:2
: the display name
Open a terminalon your server, and execute the following commands:
export GDK_BACKEND=broadwayexport BROADWAY_DISPLAY=:2
And execute the app you want to use, for examplegnome-calculator
orsoffice --writer
(LibreOffice).
To use LibreOffice, you must execute
export SAL_USE_VCLPLUGIN=gtk3
before runningsoffice --writer
, in order to use GTK3.Seehttps://wiki.documentfoundation.org/Using_LibreOffice_in_a_Web_Browser
Then, you should be able to accesshttp://localhost:8080
(replace the domain by yours).
You should be able to run multiple instances ofbroadwayd
, just be sure to use a different port and display for each of them.
Once configured, enable Broadway support in the webos. For the moment, you'll have to execute this commandin a Symbiose terminal:broadway
.
Options:
-H
or--host
: specify the host to connect to (e.g.broadway --host http://example.com:8081
). Defaults tohttp://localhost:8080
.
To start the Broadway server, executebroadwayd
from a Symbiose terminal. You will then be able to start an app by typing its name.
Config is stored in/etc/broadway
.
You can find logs in:
/var/log/broadway-server.log
for the server/var/log/broadway-apps.log
for GTK3 apps
You can change the GTK theme by editing~/.config/gtk-3.0/settings.ini
(seehttp://worldofgnome.org/running-gtk-apps-on-web-with-node-broadway/ sectionTheming):
[Settings]gtk-application-prefer-dark-theme=0gtk-theme-name=Adwaita
Assumed you have Adwaita theme installed (you can choose another e.g. Elementary if you want).
Here are a full list of settings you can tweak:https://developer.gnome.org/gtk3/stable/GtkSettings.html#GtkSettings.properties