Run XFCE (or other desktop environments) on a JupyterHub.
This is based on https://github.com/ryanlovett/nbnovnc and a fork of https://github.com/manics/jupyter-omeroanalysis-desktop
Details on some of the underlying tech is found under 'Details' here
SEE BETTER, UPDATED IMPLEMENTATION THAT HAS BETTER VISUAL LOOK ABOUT IT here.
I want to leave this here though because good to more easily contrast newer options and also be able to test if old ways work.
Plan is to use that newer, better implementation with improved visuals to get PyMOL working in desktop here October 2021.