this post was submitted on 05 Jul 2024
737 points (93.8% liked)

linuxmemes

20910 readers
1905 users here now

I use Arch btw


Sister communities:

Community rules

  1. Follow the site-wide rules and code of conduct
  2. Be civil
  3. Post Linux-related content
  4. No recent reposts

Please report posts and comments that break these rules!

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] Ephera@lemmy.ml 8 points 3 months ago (17 children)

I just distribute it as a self-contained executable/archive. ¯\_(ツ)_/¯

[–] ace@lemmy.ananace.dev 7 points 3 months ago (1 children)

As long as your application is statically linked, I don't see any issue with that.

[–] Ephera@lemmy.ml 8 points 3 months ago (3 children)

So, like, dumb question. People here assumed that I mean AppImages, whereas I actually meant just a statically linked binary. Is that really the only reason why AppImage exists? So, that dynamically linked applications can be distributed like statically linked ones?

[–] ryannathans@aussie.zone 9 points 3 months ago (1 children)

You cannot statically link everything. Take graphics libraries and APIs for example, do you statically link against nvidia's or mesa's opengl?

[–] Ephera@lemmy.ml 2 points 3 months ago (2 children)

Sure, but presumably AppImage/Flatpak/Docker cannot help with that either...?

[–] henfredemars@infosec.pub 3 points 3 months ago

This is the problem those tools try to solve. They package everything else upon which software might depend that can’t simply be linked into a single binary.

[–] ryannathans@aussie.zone 3 points 3 months ago (1 children)

Flatpak solves the problem with targetable platform versions, you just update the manifest for your app every like 6-12 months to target the new one

[–] Ephera@lemmy.ml 1 points 3 months ago (1 children)

Ah, interesting. So, it's different from just statically linking against the latest driver lib every 6-12 months, because the Flatpak runtime gives you a bit of a guarantee that there won't be breaking changes in the meantime.

[–] ryannathans@aussie.zone 2 points 3 months ago* (last edited 3 months ago)

Bingo, and if the latest mesa breaks your app for example, you can target an older one until it's fixed instead of end users having to fuck around downgrading system packages

[–] ace@lemmy.ananace.dev 6 points 3 months ago (1 children)

The majority of AppImages I've seen have been dynamically linked, yes. But it's also used for packaging assets.

[–] Ephera@lemmy.ml 3 points 3 months ago

Yeah, alright, packaging assets makes sense. I've always been fine with just a .tar.gz, but having it be a singular file without compression is cool.

I guess, since AppImage emulates a filesystem, you can also have your application logic load the assets from the same path as if the assets were installed on the OS, so that's also cool.

[–] ryannathans@aussie.zone 2 points 3 months ago

You cannot statically link everything. Take graphics libraries and APIs for example, do you statically link against nvidia's or mesa's opengl?

load more comments (15 replies)