I use Systemd containers in Nix. That’s really cool because I can selectively link in the parts of my desktop that I want it to have access to.

https://github.com/pkulak/opencrow