>>1
I agree with everything you said, except for it being the #1 problem.
The problem of linking is exactly what
>>9 is saying; there's a whole culture around dynamic linking, and static linking is for some reason a serious taboo in the Linux world.
Maybe it's because we have all these fancy package managers, the package maintainers feel they should use them, so static linking is considered some sort of waste. Just set up the dependencies to your package and it all works magically! Except when it doesn't, and everything breaks horribly.
The argument of having to recompile is so completely fucking backwards. When a closed-source app statically links and a library needs a bug fix, you need to wait for the company to update it themselves. When an open-source app statically links, the package maintainer just needs to recompile the source for the apps that link it. This is something that could be done automatically! Why not move some of this fancy package management software onto the servers?
>>5
1) take a shitload of space, since you would need to accommodate all dependencies
Somehow Macs don't have this problem...
2) either a. the app would use the libraries/w/e packaged within itself, so that it would be impossible to update one of the dependencies without updating the whole app, additionally various apps would end up using different (sometimes conflicting) versions of the dependencies; b. the app would extract and install in the system the dependencies which aren't installed, and this would be bad because you'd end up with 10 things installed when you only want to run one
Somehow Macs don't have this problem...
3) software licenses
Somehow Macs don't have this problem.
(Full disclaimer: I fucking hate Macs almost as much as I hate Windows, and I use Ubanto as a necessary evil.)