"One of the things, none of the distributions have ever done right is application packaging ... making binaries for Linux desktop applications is a major fucking pain in the ass. You don't make binaries for Linux, you make binaries for Fedora 19, Fedora 20, maybe even RHEL5 from 10 years ago. You make binaries for Debian Stable…well actually no, you don't make binaries for Debian Stable because Debian Stable has libraries that are so old that anything built in the last century it doesn't work. …and this [“Don't Break Userspace!”] is like, a big deal for the kernel, and I put a lot of effort into explaining to all the developers that this is a really important thing, and then all of the distributions come in, and they screw it all up. Because they break binary compatibility left and right."
--Linus Torvalds, DebConf 2014
When is that end of the day? Over the last decades it would have been extremely difficult making money with Linux dekstop software. Windows and Mac were the only viable options to run a business.
Let me ask you a quick question: How can I distribute an application in a way that will work on all Linux Desktops?
There is also work towards a more modular approach with Flatpak and Snaps, but those require support from the distro side. AppImage doesn't need any specific distro support.
It's 2018 and the Linux Desktop still doesn't have a consistent way to... well do anything now that I think about it, but that you can't even reliably distribute an application is pretty insane.
Flatpak and Snaps are a typical Linux Desktop solution: Over-engineer the shit out of it.
Beyond that, AppImage is really just a container. It is still up to the developer to bundle the necessary dependencies (libraries, runtimes, VMs, data files, etc), but this is something they'd need to do with Windows too.
What problems do you have with it?
> It is still up to the developer to bundle the necessary dependencies (libraries, runtimes, VMs, data files, etc), but this is something they'd need to do with Windows too.
Only for libraries not present in the base system. Problem with Linux Desktop world is that they seem to actively loathe the concept of a consistent base system.
It's a trick question without a clear answer.
Many people tried, noone has ever succeeded.
Linux is a very large family of operating systems, with hundreds of members and variations. It's really a meaningless term.
https://support.steampowered.com/kb_article.php?ref=1504-QHX...
AppImage/Flatpak/Snap/Docker is mostly the same idea, just executed differently.
Oh, you meant that they package the libraries with the application? Yeah. If it isn't part of the base system, they do. That's how it should work or you get DLL hell.
Problem with Linux Desktop is if you put any two of its community in a room you'd have 4 different incompatible base systems within a week.