xpra - Remote X11 Applications with HTML5

Discussion in 'Other Operating Systems' started by schnappy, Jun 6, 2020.

  1. schnappy

    schnappy Member

    Apr 23, 2008

    I've had a bit of fun today with xpra which I have recently rediscovered. I did use it quite some time ago exactly the same way I use tmux everyday - ssh in, tmux a and boom I get my session back as I left it. Also a good way to leave things in case your network connections drop out for any reason. With xpra, I would enable X11 forwarding over ssh.

    I didn't want to have to learn xpra syntax again and my memory was of it was that it felt slow and hacky but that is entirely unobjected.

    Today I went to look up how hard it would be have a VNC or RDP style session to run graphical-only applications including with wine on my headless Debian server, that I could easily connect and disconnect to.

    Turns out xpra is the go and it includes out of the box a HTML5 system where I just connect over http and I can seamlessly view the 2 or so programs I want to run frequently. Performance over my LAN is not that much different to running the apps locally on bare metal. Except for ugly fonts in window titles I forget I am not using my desktop.

    Article and video here:

    I am so impressed with it I thought I'd share for awareness. Note that xpra in Debian stable repos is old as shit, xpra provides on their website an apt repo that works fine (along with a nice big criticism of Debian/Ubuntu repos in particular)

    My current start line is:
    xpra start --bind-tcp= --html=on --webcam=no --pulseaudio=no --start-on-connect=xterm --start=schnappysmainappofinterest
    It looks like it builds it's own start menu type thing but being on a headless I think it must be missing a dependency or two (or is just broken) because mine is empty. By having --start-on-connect=xterm each team I load the web UI it gives me a terminal so I can manually launch something without screwing around with anything else.

    There are some obvious security questions but if you bound to localhost then used ssh tunneling you wouldn't need to worry about it too much.
    Agg and GumbyNoTalent like this.
  2. GumbyNoTalent

    GumbyNoTalent Member

    Jan 8, 2003
    Briz Vegas

Share This Page