This seems, at face value without a deep understanding, to be the simplest way to do it. Again the caveat is my lack of knowledge.
This seems, at face value without a deep understanding, to be the simplest way to do it. Again the caveat is my lack of knowledge.
Flatpak and NixOS are more complex because it's worth it. For example, they don't duplicate exact versions of dependencies on disk.
Doesn't feel like GoboLinux would either, does it?
FreeBSD does a good job with this: applications are installed into a standard Unix filesystem with conventional packages and the ports collection. Isolation is then implemented via jails.
The Linux equivalent of using standalone isolation layers, like firejail, on top of standard distro packaging, is far superior to Flatpak.
All of these are all still behind how Android stores apps. On Android each application can be distributed using a single file that is easy to distribute. Each application is properly sandboxed. Each application gets its own directory. And something all of the other things mentioned here are missing, each application gets its own subdirectories in the app's directory for storing its state (there are different ones for each user).