I’m used to using Linux from the terminal. I have a new machine which I plan to use mostly headless but would occasionally like to run a desktop environment and play games with GPU acceleration. I know I don’t have to launch the desktop environment on startup, but I was wondering if it’s possible to have that entire portion containerized, like an instance in LXD.
I am trying Bazzite right now, I really like the idea of layering on top an immutable base. That’s close to what I want. If I understand correctly, I could have a different layer for the headless part to keep them totally separate, but I’d have to do restarts to switch from one to the other.
I also think NixOS could also be what I want, just with a steeper learning curve.
I’m wondering if anyone has already set something like this up? It would be helpful to read about what software people have for this and their experiences using that.
This is really cool. I think this is very close to what I want, but am I correct in understanding the host also has an X11 server in this setup? I’ll have to check out distrobox, that’s an interesting tool.
Have you ever heard of qubes os? The idea of it is absolutely every system component is containerised
I’m sure if anything has a way to achieve what you want it’s that
Qubes os does not run xfce in a vm I think?
It actually run everything in a vm, not a container.
Depending on the use case I don’t think it really makes much difference
I’m not sure whether it can specifically containerise the DE but it’s worth investigating I think
At work the only option I had was to get a Macbook, but I don’t like MacOS, so I installed UTM and I run Arch Linux (ALARM for aarch64) as my desktop. It’s functional, but of course I’d rather have a beat up, 5 year old Dell or Thinkpad so I could just run Arch natively.
Never tried doing LXC for it but with kvm/qemu you can use vfio and pcie passthrough if you don’t need the gpu in your headless server.
https://wiki.archlinux.org/title/PCI_passthrough_via_OVMFMaybe Vanilla OS will be of interest?