Don't use Appimages (a writeup about all the reasons they are a pain for users)

Appimages totally suck, because many developers think they were a real packaging format and support them exclusively.

Their use case is tiny, and in 99% of cases Flatpak is just better.

I could not find a single post or article about all the problems they have, so I wrote this.

This is not about shaming open source contributors. But Appimages are obviously broken, pretty badly maintained, while organizations/companies like Balena, Nextcloud etc. don’t seem to get that.

nintendiator, (edited )

Eh, I’ve always felt these solutions are complementary, or supplementary, rather than a “versus”. Each one, in particular cases, covers gaps the others can’t cover. The only one that’s unneeded is Snap.

For example, I like Flatpak. I like that I can get software from an authorized hub, much like with a package manager. I like that the releases of the apps in the hub are mostly well documented.

But no matter how nice Flatpak seems to be, its overreliance on “portals” and “buses” and “seals” comes associated with trying to over-engineerize my system too much for its own good. Every app I have ever tried on Flatpak, for example, doesn’t support audio, apparently because I have the godly, eternal, battle-tested ALSA and not the manchild’s crap that is PulseAudio. But since apparently PulseAudio is the GNome / Microsoft approved way to do audio on Linux, I’m supposed expected to have it. What’s next? systemd-flatpakd?

OTOH, I picked up the AppImage for Freetube and not only do I get audio but it loads and runs noticeably faster than the Flatpak version. And since it’s an official release I know where can I trustably get an update from. Literally no downsides!

But I sure as hell am not going to go for an AppImage for an app from which I expect more integration with my desktop activity, such as say a code editor or an advanced image / model viewer. Not if I can help it. Because I am going to be expecting to be able to stuff like drag and drop, have a correct tray icon, etc.

So that means I have to keep an eye on both solutions.

Hey, at least I’m avoiding Snap!

Now if there’s an AppImage for Steam somewhere… maybe…

Pantherina, (edited )

You got me in the first part XD

No joking, apart from that

But since apparently PulseAudio is the GNome / Microsoft approved way

I think I understand your point.

Pulseaudio is outdated, Pipewire AND Pulseaudio are now needed. Maybe also just Pipewire, and you can somehow fake Pulseaudio?

I never used a system without Pulseaudio, and Fedora has both (?) Or just Pipewire.

Pulseaudio is the old stuff that apps want to use, pipewire is the new cool stuff (I recommend qpwgraph) which allows like everything.

Aaand it is not overcomplicated, it isolated apps and introduces a permission system. Privileged programs that channel the requests and permissions, and sometimes need user interaction. Its actually less chaotic, the problem simply is that Flatpak ALSO tries to run all apps everywhere. And apps are mostly not up to date, so Flatpaks have randomly poked holes everywhere.

Today I worked on hardening configs for my apps. I maintain a list of recommended ones here. I will just put my overrides in my (currently still private) dotfiles, will upload them some day.

I am for example now Wayland only. Not all apps want to, but with the correct env vars (which I just globally set for all flatpaks, hoping it will not mess with anything), all apps use it.

This makes the system way faster, and applying different vars on the apps is very easy with Flatpak.

Literally no downsides!

Not true. It still has no updating mechanism, the binary may be official, but the rest are random libraries that may not be well versioned or controlled, etc etc.

The post is specifically about upstream supported Appimages, while Flathub is mainly maintained by the same 4 peolple (it is crazy). The request is for upstream devs to maintain Flatpaks.

But for sure not everything is nice. Runtimes are too huge, outdated apps cause huge library garbage, downloads are inefficient, …

brax,

I hate them both, give me a .Deb (or equivalent) if you’re gonna package it. And get off my lawn! 🤣

Pantherina,

Installing .deb files from random sources is also very insecure and not reliable for updates.

brax,

Less secure than blindly installing flatpaks or appimages?

Pantherina,

Appimages work “everywhere” so they are better for distributing malware.

Flatpaks are normally not installed from random sources and I hope it stays like that.

So yes and no.

brax,

Ah, got it.

VinesNFluff,
@VinesNFluff@pawb.social avatar

(Also Flatpaks are, at least in theory, sandboxed and can’t mess with your system stuff unless you allow them to)

Churbleyimyam,

As a humble linux user of the last year or two my experience has been that anything that is not in the Debian repo is a confusing nuisance. Nobody told me how to get appimages to integrate with my desktop. I had to rummage the internet and learn how. Compare this to a single click in Gnome software or simple command in the terminal for apps in the repo. I also installed flatpak, so I could get programs that weren’t available in the repo but nobody told me I would have to install and rummage Flatseal to enable them to work properly, that it would make my backups and restores take 900% longer and would rinse my data when they need updating. It’s been annoying enough that I’ve ended up learning how to install from source as well. Maybe it’s cool that I’ve learned how to do all this new stuff but to be honest I just feel like I’ve had to do loads of extra head-scratching and unnecessary work. I did it willingly because I’ve been committed to not being held back from using open source software but I couldn’t expect my friends and family to do any of this, so if I do get them onto Linux I can’t recommend these programs to them.

Current tier list:

  • Debian repo
  • .deb downloaded from a website!
  • Enjoy using application, go for a bike ride.
  • Make sure I’m free for a couple of hours, install from source.
  • Appimage
  • Do without given application
  • Flatpak
Pantherina,

You shouldnt need Flatseal as Flatpaks should have as little restrictions as need to make them work properly.

This is an app problem, on Android all apps start with 0 permissions and many work completely without.

I maintain a list of flatpak apps following modern standards. Those dont just work because their sandbox is full of holes, but because they are adapted to use portals etc.

So Flatseal is used to harden flatpaks, not weaken them, normally.

that it would make my backups and restores take 900% longer and would rinse my data when they need updating.

You mean their storage space? Yes, biggest problem. Not very well solved tbh compared to android where all apps are also sandboxed but they have sizes of 30MB or something.

Flatpaks should be preferred over many other formats though, as they just work, dont touch the system and are more secure, unlike Appimages.

I highly recommend to watch this talk that some commenter mentioned

www.youtube.com/watch?v=b4_TXZJw3rU

Churbleyimyam,

Thanks for the links. I really want flatpak to work for me because I like the sandboxing but the storage thing is a bit of a killer for me at the moment and I could not for the life of me get Digikam, Shotwell or Rawtherapee to hand image files over to GIMP with the flatpak versions, whereas the repo versions were fine out of the box. Also, I feel like flatpak programs are much slower to open but that might just be me.

Pantherina,

Flatpaks will always be a little slower, notably if you are on slow storage media.

Yes this is all native messaging I suppose. Flatpak apps can query an app list, just look at flatseal. So I think querying the installed flatpaks and handing it over to the system portal where you then choose the desired app is the modern workflow for this.

You might want to request that Digikam etc. implement portals for this file opening. Firefox can do for example but of course these are limited as long as apps dont modernize their workflow

Churbleyimyam,

I do hope flatpak can solve these things. I have the deb installs all working harmoniously at the moment, so I don’t want to touch them but will have another look at flatpak versions at some point in the future.

Pantherina,

Downstream Distribution is simply very very work intensive. By having the system and apps come from a downstream origin, packagers need to follow upstream and keep up with versions. And as upstream doesnt officially support these packages, many will have bugs. Or like on Debian, packages will be unusable as they are too old with unfixed bugs for years.

Neither Android, nor Windows nor any other big OS do things that way, for a reason.

darkphotonstudio,

Oh look, another Linux user whining about a binary distribution method they don’t like. If you don’t like Appimages, don’t use them.

VinesNFluff,
@VinesNFluff@pawb.social avatar

On the one hand I am entirely sick of how people will keep wasting keystrokes on this kind of discourse when the whole point of Linux is that you can choose which one you like best.

On the other, someone on a different community said it best: “Hey, if Linux users didn’t fight about what thing they want to make standard, what ELSE would we meme about?”

darkphotonstudio,

How Windows is shit? How Manjaro didn’t renew their web certificate that time years ago? Whether or not it’s Gnu/Linux or just Linux? There are so many “issues” to obsess over!

octopus_ink, (edited )

Why not the death of IRC and xmpp? Or are only other folks’ complaints a problem? (Not stalking, just wanted to see what you were even doing here aside from complaining about Linux users’ complaining. Turns out it’s complaining.)

Update - Eh, sorry for being so damn grumpy.

darkphotonstudio,

Np, I’m pretty damn grumpy lately as well. I also apologize.

ian,
@ian@feddit.uk avatar

Can the user choose? Not if there is only an appimage. Some devs don’t realise the problems they are causing doing that. So it is very important to enlighten them.

Pantherina,

Developers of often proprietary software think its a good format and only support that. This is a problem

ian,
@ian@feddit.uk avatar

As a user, I can’t choose, if a dev only releases an appimage. Then it’s a real pain or I skip the app.

FriendBesto,

Well then, what text editor do you use then?

/s

theshatterstone54,

Now I WILL get judged for this but hear me out… AppImages are useful for apps that will not get on Flathub. If you have an app that cannot get on Flathub (like a pirated Minecraft Launcher), you will be thankful developers are using AppImages for them. In this case, they’re unlikely to use snaps (alt repos for snap are possible but difficult from what I’ve heard) and maintaining a flatpak repo just seems like overkill for a single program. So for cases like these, I’m glad to see these packaged as appimages

Pantherina,

Okay fair point. Piracy, illegal content etc. will all get removed from Flathub.

Similar to another comment about archiving software that may get removed

joel_feila,
@joel_feila@lemmy.world avatar

Well you can just put a flatpac on a website and let download it from their right?

BoneALisa,
@BoneALisa@lemm.ee avatar

Yea im pretty sure flatpak suports bundles that you can install directly, just like an appimage

Pantherina,

You can, but it seems to be not documented how to get a .flatpak from an installed app.

what,

As far as I know flatpak applications can be distributed as a file without the need for a repository, just like .deb or .rpm files

theshatterstone54,

Can they? I’ll be honest, I’m not that familiar with how flatpak works on a more technical level.

DerpyPlayz18,

I think appimages are this popular because of tauri

corsicanguppy,

flatpak?

Frying pan, meet fire.

BlahajEnjoyer,

I’m not a fan of alternative packaging solutions. Never been. If it’s not in Debian’s repositories then I don’t bother with it. Some would say that’s close minded as not all packaging solutions are bad but when you use a stable distribution like Debian the native packaging solution is a lot easier to maneuver and troubleshoot than flatpaks and the like.

Pantherina,

Flatpaks dont touch the system, which makes them a perfect addition to a Debian Base. Tbh I think Windows is the best example that this works, stable, boring base, and no software is stable for no reason. They outsource the work and the software even installs and updates in random ways, but it is always up to date which never breaks the system.

But to be fair I am not a Debian user. I would consider it when being an admin for many clients that want a stable system. But I would install all apps from Flathub then, to have them up to date and not years old.

captain_aggravated,
@captain_aggravated@sh.itjust.works avatar

When I was first getting into Linux, Flatpak wasn’t a thing quite yet. I ended up installing software in all of the following ways:

  • A .run file. Simplify3D (commercial 3D printer slicer) did this, it was kind of a literal word for word translation of the Windows .exe installer system. Please don’t do this. See also install.sh. Just don’t do this.
  • A .tar.gz file full of the executable and its assets with no further elaboration. This happened a few times but I really remember FTL: Faster Than Light did this when I bought the game directly from them rather than on Steam, and they were nice enough to link it to a Steam key for me. This’ll work if you’re handing out a thing you made to a couple other people, don’t distribute like this please.
  • Clone my git repo. I’m going to type this slowly so that it will best be understood: Git is for people who are contributing to code, not for people who just want to run it. Do not ask end users to compile from source.
  • Ubuntu PPAs. This one seems to have died; it’s been a couple years since I’ve seen anyone suggest adding a PPA. Good, they somewhat sucked.
  • Pip. There are way too many end-user applications that are distributed with Python’s package manager. No. Bad.
  • Alien. For a brief time the driver for my printer was only distributed as a .rpm, I was on a .deb based system. There’s a thing called Alien that lets you do that.
  • Loose .debs. Haven’t encountered this one in awhile either, but…could be worse.

-Snap. No. Just. No.

Compared to almost all of these I’d prefer an AppImage. For example, go look at the process of getting an up to date copy of Chirp, the amateur radio programming software. The instructions are kind of “build it yourself,” they are flawed and borderline incorrect, and include no uninstall instructions. I would vastly prefer they just package the damn thing as an AppImage.

Compared to AppImage, I almost always prefer a Flatpak. Flathub is built into my distro’s GUI app center and is almost transparent to the user. Using Flatpaks with the terminal is complete rectal pus, but for most end users who prefer to do things graphically Flatpak works pretty well most of the time. It is not completely seamless, like Flatpak seems to suffer from all the drawbacks of sandboxing with none of the benefits.

If you are distributing to a wide audience, use Flatpak or publish to the various standard repos. If you’re a little niche thing that might distribute 200 or 300 copies ever, AppImage is probably simpler. Otherwise just…keep your repo private.

Pantherina,

Thanks, yes fully agree. There are a ton if shitty distribution ways.

When I publish stuff on Github (its never big, always small tools) I never let people git clone, just download the needed parts.

Releases are meant for that, but still, putting software on repos may be annoying but its the correct way to do.

Jegahan, (edited )

By the way, if you guys are interested here is a talk comparing Appimages Snaps and Flatpaks by Richard Brown, one the devs at Suse, a big contributer to openSuse and the guy who spearheaded the Desktop variante of MicroOS (the immutable openSuse Tumbleweed).

He isn’t to keen on appimages either because of a miriad of technical issues.

Pantherina, (edited )

youtube.com/watch?v=4WuYGcs0t6I&t=456

For all the Grayjay/Newpipe/Freetube users

Very good video with additional points, will add them

delirious_owl,
@delirious_owl@discuss.online avatar

Feather Wallet is a great example of AppImages done right

delirious_owl,
@delirious_owl@discuss.online avatar

AppImages can be signed. Flat pak is the lesser option for security

Pantherina, (edited )

Explained in a other comment how a pain it is to verify such a signature.

Is that stored in the appimage file?

I find it funny how flatpak neglectors always spell it wrong

GlenTheFrog,
@GlenTheFrog@lemmy.ml avatar

Totally agree with basically every point here. You hit the nail on the head. App images are the .exe’s of the Linux world and I don’t understand how someone can say they love app images but hate Window’s portable exe’s. Even Windows doesn’t have nearly as many portable executable as they once did. And when they do, most people (even those who prefer app images) prefer an exe with a Windows installer.

Anyways, this is all to point out why I avoid app images if at all possible

Tattorack,
@Tattorack@lemmy.world avatar

As someone who didn’t have a computer and had to install everything on a USB drive at some point, I absolutely LOVE portable .exe’s. Don’t see why anyone would have a problem with it. Don’t see a problem with aopimages either.

AMDIsOurLord,

deleted_by_moderator

  • Loading...
  • kugmo,
    @kugmo@sh.itjust.works avatar

    don’t care still using appimages and not flatpaks

    Pantherina,

    Thats a very constructive point!

  • All
  • Subscribed
  • Moderated
  • Favorites
  • linux@lemmy.ml
  • InstantRegret
  • ngwrru68w68
  • everett
  • mdbf
  • modclub
  • rosin
  • khanakhh
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • Youngstown
  • GTA5RPClips
  • slotface
  • kavyap
  • JUstTest
  • ethstaker
  • osvaldo12
  • normalnudes
  • tacticalgear
  • cisconetworking
  • cubers
  • Durango
  • Leos
  • anitta
  • tester
  • megavids
  • provamag3
  • lostlight
  • All magazines