Create a system to spin up ephemeral test instances of neon (unstable) that can be access via VNC, ideally also pointing to a web-vnc thing to make it easily accessible.
Motivation is to make testing easier for users as well as the VDG to reduce feedback cycles.
# Techno
Quick proof of concept done approximately this way:
- run a docker `docker run --privileged -it -p 127.0.0.1:5900:5900 ubuntu:xenial bash`
- add neon repo
- `apt install neon-desktop xdm x11vnc`
- `/etc/init.d/xdm start`
- 'x11vnc -auth guess`
- should now be reachable on port 5900
https://wiki.archlinux.org/index.php/x11vnc
https://wiki.archlinux.org/index.php/Xorg#Monitor_settings
http://stackoverflow.com/questions/26075741/starting-xserver-in-docker-ubuntu-container
## UX
For convenience and management purposes it would be handy to have a simple webservice/site where a user can log in (preferably via identity login) to spin up a new instance, which would basically start a container as per above's process. This container would run for N hours or until session logout or until the user clicks terminate on the webservice/site.
I couldn't find a premade solution for this unfortunately.
## Hosting
This probably should run on some general purpose KDE server, or maybe we could even spin up containers, then we could just skip docker altogether.
## Questions
- We might be able to use --device on docker run to selectively forward /dev/tty* and /dev/input/* which should be enough to start xorg instead of full on --privileged
- Port collision with multiple sessions?
- Can we use SDDM with x11vnc?
- What about wayland?
## Web UIs
- (websock+js) http://kanaka.github.io/noVNC/noVNC/vnc.html
- (java - would need proxying?) https://guacamole.incubator.apache.org/