Remix.run Logo
seabrookmx 3 hours ago

Everyone parrots this but I don't think it's true. The Linux kernel does famously have a stable ABI (we "don't break user space" after all).

The issue is folks expect this to be at a higher level, so when libc or GTK or Qt etc. have breaking changes, all your apps using the old versions fail. This is a legitimate pain point with traditional distros.. I don't want to sound like I'm downplaying it.

However, this is basically solved by flatpak (and others like it, eg snap) which contain _all_ these dependencies in the package. Layering (ala containers) is used for deduplication so you don't have 20 copies of a given GTK version.

While MacOS provides the windowing toolkit etc. at the OS level, it's otherwise similar to how a .app file works. Installers aren't dropping dynamic libraries and resource files all over your disk, the app is "self-contained."

aaddrick 2 hours ago | parent [-]

My reply to the comment below outlines the shape of the problem.

https://news.ycombinator.com/item?id=48434436#48435801

sgt an hour ago | parent [-]

Agreed - it's not the flatpak itself, it's that whole fragmented ecosystem. And unstable ABI doesn't help.