Distros: “We are introducing containerised*¹² package manager”
Devs: “We are no longer providing binaries as they are hard to use, we will be transitioning to Flatsnap to make our builds universial”
Me: …I’ll just statically compile?
Many libs cannot be statically compiled in, for example opengl implementations. Repeated dependencies waste space in RAM and on HDD. It's not a fact that particular buildsystem will work for static linking, for example they could be omitting some dependency libs that would be automatically pulled in by shared linker.
@loonycyborg I get the dynamic linking part, but a lot of software also doesn’t require that at all. I’d imagine including all the dynamically linked libraries and crap would make flatsnaps™ much larger, no?
Flatpak actually shares many libs between applications. There are so called "runtimes", sets of dependencies that particular app can use and share with other apps that use same runtime. It's still a bit wasteful since it duplicates libs what your distro already uses and you might require several different runtimes for example if old app wasn't rebuilt with new runtime yet, or kde and gnome based apps having two separate runtimes. But it's still way better than distributing shared libs with the app. At least shared freedesktop/gnome/kde runtime is maintained wrt security patches and they add new versions of same runtimes with new deps while maintaining ability to install old runtimes in parallel in case it's needed for running antique stuff that wasn't rebuilt for new version of runtime for whatever reason.