Because I hate Electron
Docker, Distrobox, Toybox, systemd-nspawn, chroot.
Technically those all rely on the same kernel namespace features, just different ways to use it.
That’s also what Flatpaks and Snaps do. If you only care about package bloat, an AppImage would do too but it’s not a sandbox like Flatpak.
Don’t use docker with distrobox. Use podman instead as it is rootless and faster
Podman goes well with Kubernetes. It also is more performant than docker.
I use both
IIRC that’s the whole point of flatpak, snap and appimage
Docker can probably do it too, distrobox puts a useful wrapper on that
Nix does that kind of, nix packages aren’t isolated in that they can’t access resources on your system but all dependencies are stored in the nix store, hashed and isolated from eachother, and wiped when you collect garbage
Snap turns your system into a slug at boot time, makes it take forever to shut down as it unmounts fifty memory file systems, scatters files all over the place turning a neat organized system into a pile of shit. I primary run Ubuntu, but I excise snap from it as one of the first orders of business.
@naeap As long as it remains the easiest distro for me to get from initial setup to mangled the way I want it to work I’ll stick with Ubuntu. It still tends to be more up to date than most other releases save Fedora but I do not care for the Redhat approach at all, they are rather like Windows in trying to force you to do it there way, “thou shall use LDAP and not NIS” for example. I don’t like distros that think I should change my whole organization to suit their needs. Yea at some point I probably will switch to LDAP but will do it on my own terms in my own time not dictated by a distribution vendor. It is rather trivial for me to excise snap from Ubuntu, a lot more work to hack NIS into a system that doesn’t natively support it.
@0x0 No, Mozilla maintains their own repository. You can delete snap firefox and snap everything else, add the mozilla repository, and install firefox from there. You’ll get a more current version as a side benefit. Instructions found here: askubuntu.com/questions/150203…
Yes
That’s called containerization
Go with one of the ready to use systems. Flatpak, Snap, AppImage. Snap is largely Ubuntu Ecosystem, Flatpak is independent. AppImage is an option if you do not need/want a Sandbox.
Stay away from Docker and LXC for this use case (graphical applications), they are much more work to get going.
Yes, Docker apps are more appropriate for servers and most apps are “made” to run 24/7 to serv the home or workplace.
They are very much worth the “work to setup” as they can be transfered/replicated to any system.
Flatpak and the alike are for running apps on a desktop/laptop.