Advantages over Appimage?

Just out of curiosity, does Gobolinux solve any problems which appimages don’t? Assuming every piece of user-space software had an appimage distribution, would Gobolinux still have a technical advantage over a more traditional Unix system?

There are fundamental differences between the two approaches. AppImages are mostly self-contained file system images that include the main program along with its dependencies. They’re conceptually more similar to Docker than to a distro such as GoboLinux – although with Docker you still have the benefit of reusing file system layers; in that case, AppImages are better compared to statically linked programs. Both AppImages and Docker attempt to solve the problem of software distribution by bundling dependencies with the main program.

GoboLinux manages the installation of programs in a lightweight fashion as a regular distro does. The difference is that it’s possible to let multiple (and conflicting) versions of libraries to coexist and to create file system mappings that ensure the file system tree seen by a given program contains the right version of the dependencies it expects.

My personal view on this is that distros are becoming container hosts and that, at some point in the future, when technical improvements like minimization of userspace filesystem overhead and improved deduplication at the storage layer are built into the kernels run by those distros, the technical advantages will tend to disappear.

You will probably enjoy to read about the work done by RancherOS. They’ve made a distribution that’s precisely a container manager: every single package is self-contained in its own container, including essential services such as udev .

2 Likes

To be honest, the main advantage of any traditional Linux system over a container-heavy system is performance. If you have new enough hardware and don’t care much about power consumption, you can use all the containers you want, I suppose. I personally prefer a lean system, and I also prefer to have my software run locally.

1 Like