Why would you want the app devs to make that? The whole problem with distro-specific packages is having to package for multiple formats and it’s a painstaking process that really isn’t worth any amount of time investment at all. If you’re an app developer, you’d much rather just make a universal package and hope that some distro package maintainer packages your app for their distro. That’s just basic common sense…
Because Flatpaks can’t share libraries or anything. It creates a lot of bloat that doesn’t need to be there. It’s great for users that want to make sure the app will always work, but it isn’t great for being efficient.
This is just a straight up lie. Flatpaks do share libraries, both as runtimes (as seen even in the screenshot here) and through deduplication between different runtimes and runtime versions. There’s usually very little bloat, if any, especially if you use Flatpaks a lot, which you probably should, given the huge number of advantages especially with proprietary apps.
and through deduplication between different runtimes and runtime versions. There’s usually very little bloat, if any, especially if you use Flatpaks a lot,
~20 different GUI applications, flatpak ended up using 14 GiB of storage while the appimage equivalent used 3.2 GIB.
And note I was not able to find flatpaks for ghostty, goverlay, kdeconnect and a few other apps, meaning the actual bloat of flatpak is even higher.
Edit: And this is even worse if you are an nvidia user, flatpak will download the entire nvidia driver as well.
Has security issues even 123 and not to mention the whole bunch of flatpaks that use EOL runtimes which are even worse, not only for security, but also because that single flatpak ends up pulling an entire runtime for itself which makes even more bloated.
And is insanely bloated as you saw already.
I think enough people have summarised that on the internet by now.
Such as? but I likely know already what is going to be said, hopefully is none of the following:
“Depends on libfuse2” (not true since 2022 with the static appimage runtime, this also allows making appimages that work on musl systems, which several like ghostty, goverlay, Steam, gimp, cromite, citron already do)
“You need to build on an old distro and it is hard”, once again not true anymore since you can now bundle the glibc as well (and it is needed for appimages to work on musl systems).
“No wayland”, this is only true if you use linuxdeploy-qt to make the AppImage, the project has been abandoned already for several years and the only project I know that still uses it is qbittorrent-enhanced.
EDIT: And also hopefully you are aware that a lot of flatpaks are literary an AppImage shipped in a flatpak runtime, like:
It’s useful, but it isn’t the best option for everyone, so other options should be available.
Why would you want the app devs to make that? The whole problem with distro-specific packages is having to package for multiple formats and it’s a painstaking process that really isn’t worth any amount of time investment at all. If you’re an app developer, you’d much rather just make a universal package and hope that some distro package maintainer packages your app for their distro. That’s just basic common sense…
Because Flatpaks can’t share libraries or anything. It creates a lot of bloat that doesn’t need to be there. It’s great for users that want to make sure the app will always work, but it isn’t great for being efficient.
This is just a straight up lie. Flatpaks do share libraries, both as runtimes (as seen even in the screenshot here) and through deduplication between different runtimes and runtime versions. There’s usually very little bloat, if any, especially if you use Flatpaks a lot, which you probably should, given the huge number of advantages especially with proprietary apps.
~20 different GUI applications, flatpak ended up using 14 GiB of storage while the appimage equivalent used 3.2 GIB.
And note I was not able to find flatpaks for ghostty, goverlay, kdeconnect and a few other apps, meaning the actual bloat of flatpak is even higher.
Edit: And this is even worse if you are an nvidia user, flatpak will download the entire nvidia driver as well.
AppImage isn’t a good comparison for a lot of different reasons and I think enough people have summarised that on the internet by now.
Alright what does flatpak offer in this case?
Has performance issues 1
The thing is not XDG Base dir compliant 1 2
Has security issues even 1 2 3 and not to mention the whole bunch of flatpaks that use EOL runtimes which are even worse, not only for security, but also because that single flatpak ends up pulling an entire runtime for itself which makes even more bloated.
And is insanely bloated as you saw already.
Such as? but I likely know already what is going to be said, hopefully is none of the following:
“Depends on libfuse2” (not true since 2022 with the static appimage runtime, this also allows making appimages that work on musl systems, which several like ghostty, goverlay, Steam, gimp, cromite, citron already do)
“You need to build on an old distro and it is hard”, once again not true anymore since you can now bundle the glibc as well (and it is needed for appimages to work on musl systems).
“No wayland”, this is only true if you use linuxdeploy-qt to make the AppImage, the project has been abandoned already for several years and the only project I know that still uses it is qbittorrent-enhanced.
EDIT: And also hopefully you are aware that a lot of flatpaks are literary an AppImage shipped in a flatpak runtime, like:
https://github.com/flathub/dev.vencord.Vesktop/blob/master/dev.vencord.Vesktop.yml#L34-L46
https://github.com/flathub/com.ultimaker.cura/blob/master/com.ultimaker.cura.yml#L24-L44
https://github.com/flathub/xyz.armcord.ArmCord/blob/master/xyz.armcord.ArmCord.yml#L40-L43
https://github.com/flathub/com.heroicgameslauncher.hgl/blob/master/com.heroicgameslauncher.hgl.yml#L191-L196
https://github.com/flathub/chat.simplex.simplex/blob/master/chat.simplex.simplex.yml#L22-L31
https://github.com/flathub/menu.kando.Kando/blob/master/menu.kando.Kando.yml#L33-L40
So yeah AppImage isn’t ideal, lets ship it in a container anyway 😁