3 ms·
There are two steps to set up your LXD installation in order to create GUI containers. If you are using the snap package of LXD, you only need to perform the s
by simosx 8y ago
There are two steps to set up your LXD installation in order to create GUI containers.
If you are using the snap package of LXD, you only need to perform the second step.
If you are using the deb package of LXD, you need to perform both steps.
A snap package of LXD is not required to setup GUI containers, it just makes it a bit simpler (one step instead of two).
If there is some Windows application that is really useful to have on Linux, then it makes sense to invest the effort to create a snap package. The snap package will be usable to everyone. There are already Windows games that have been packaged as snaps, and the process could be replicated with some effort (example: https://github.com/snapcrafters/tmnationsforever https://github.com/snapcrafters/tmnationsforever).
The GUI container instead, is helpful if there is an application that you would like to run but cannot invest the effort to package it as a snap.
- shmerl 8y agoSnap / Flatpak help with providing Wine configuration, but you can't pre-package stuff that's not open source for instance. For example you buy some game on GOG, then something like pre-configured Snap / Flatpak or PlayOnLinux / Lutris scripts can help automating configuration but you still need to provide the installer to them first. One problem that I personally encountered with that approach is that someone has to maintain those scripts. They tend to become obsolete, since Wine is changing and things are moving forward, while the amount of such games is potentially quite huge and there are not enough maintainers to update them all. In the end it's just easier to install stuff yourself in a new prefix. Sandboxing though is a neat feature which you can use even without relying on such pre-made scripts.
- simosx 8y agoSandboxing (snap or flatpack) is more fragile than running the application in a GUI container. If you do not grant a permission, the application will fail. You will get to know about these issues from bug reports. With a GUI LXD container, you can set up Wine as best as possible, then take a snapshot of the container in its pristine condition. Then, you can install Windows programs in the same container, or clone the original container and install each in a separate container. Each action takes only a few seconds compared to what you would get with Virtualbox.
- shmerl 8y agoSure, containers should be better for sandboxing. > Each action takes only a few seconds compared to what you would get with Virtualbox. For VMs, I'm usually using Qemu/KVM with virtual-manager when needed, not VirtualBox (usually running Linux guest on Linux host). It has better integration and hardware support like USB redirection, and now there is also virgl acceleration catching up to OpenGL and Vulkan.