App images
Virtual environments and packaging The problem: when installs break other installs Language agnostic packaging · App images Python packaging · Ruby packaging · Rust packaging · R packaging |
App images
App images as a general concept mean that everything an application depends on is stored within it (often in a single file), even if that ends up containing duplicates of dependencies stored by other applications, or the system.
It is a way of ensuring you can run in more varied systems, and being robust to some longer-term changes, without having to specifically consider each system and historic changes.
App images are, in a sense, a lot more stable -- at the cost of each app being much larger.
It's also not a full answer -- e.g. some OS changes and major libc changes still affect apps, but the amount of shared surface/API is small and more manageable.
There are a few different implementations of that idea.