AtomsDevs/Atoms

Support for utilizing Docker images and Flatpak's sandbox spawning

Closed this issue · 4 comments

continuation of bottlesdevs/Bottles#1835.

Some Linux-native apps and games require dependencies that the host does not have, in which case they provide themselves, or rely on an environment where they can be provided (Flatpak, Nix, etc).

From what I can tell, Flatpak can spawn a separate bwrap container and utilize a Docker image for that. This would allow for prebuilt images that are compatible with this feature to be used, and would also be an easier alternative to making a Flatpak for said app/game.

flatpak-spawn create a copy of the current container with some restrictions. You can use flatpak-spawn --host to get high permissions but it's not like docker, this is a sandbox tool. I've also implemented support for distrobox which uses podman and spawn true containers (no proot like Atoms), and you can use any image with it, just enable it in the preferences.

My idea was more to not rely on the host docker/podman/distrobox configuration.

I was also aware you could somewhat utilize docker images inside of flatpak, such as how the Steam flatpak works?

Not really, steam uses its own fork of flatpak as by default you can't use flatpak for this use-case. Flatpak uses bwrap which can be used in a chroot-like approach so changing the container root pointing to another image but flatpak-spawn doesn't provide such feature

ah, got it. Best to just leave it with the ability to manage the host podman configuration, then.