App images

From Helpful
Jump to navigation Jump to search

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.


AppImage

Snap

flatpak