Idea: lxc containers for X workspaces - lmmx/devnotes GitHub Wiki

  • Problem statement: X window managed workspaces share a single operating system, and when the overall load gets too high the whole [Cinnamon] workspace display system falls over, leaving you with just 4 workspaces (cramming any extra ones together)

  • Solution proposal: lxc containers on which you run lxc-freeze to stop the processes of unused programs (e.g. Firefox browser windows, and associated terminal windows)

  • Problems with the solution: are containers a good solution? How to move things in and out of a container (when things are processes that can be restarted simply like Firefox)? What about taking the ‘state’ with them? What about accessing files on the ‘host’ system?


It's possible to pass GUI to the host X server, see notes here for the option involving sharing the host's $DISPLAY env. variable to the container but in fact LXD has a new way of doing this, for which you need to prepare by:

sudo apt install spice-client-gtk

which installs spicy, the GTK+ based SPICE client tool, which allows capture of the virtual GPU.

Update this is now implemented through lxd containers passing GUI through a socket to the host X11 server, see LXD GUIs instead.