3 ms·
The problem with "application bundles" is that a lot of libraries are involved in interactions between programs. Can libgnome from 3.10 interact with libgnome f
by asuffield 12y ago
The problem with "application bundles" is that a lot of libraries are involved in interactions between programs. Can libgnome from 3.10 interact with libgnome from 3.12? What happens when you try? How about when you've got 20+ applications each using a different version? I'm not sure anybody really knows the answer to these questions, because we normally go to great lengths to avoid finding out.
OSX "solves" this problem by not having it: all the major libraries are supplied by Apple and are part of the system, not part of the bundle. So in practical terms, OSX does it the same way as the linux distros: on the vendor's timetable, and upstream authors have to follow along.
You can bundle things like zlib, which have a very well-defined API and never really change... but then you have a horrible mess when there is a security flaw in zlib and you need to update every application installed everywhere. But stable libraries like zlib are exactly the sort of thing that regular shared libraries work great for, and it's the fast-moving unstable APIs like libgnome that cause all the grief.