As a user, the best way to handle applications is a central repository where interoperability is guaranteed. Something like what Debian does with the base repos. I just run an install and it’s all taken care of for me. What’s more, I don’t deal with unnecessary bloat from dozens of different versions of the same library according to the needs of each separate dev/team.

So the self-contained packages must be primarily of benefit to the devs, right? Except I was just reading through how flatpak handles dependencies: runtimes, base apps, and bundling. Runtimes and base apps supply dependencies to the whole system, so they only ever get installed once… but the documentation explicitly mentions that there are only few of both meaning that most devs will either have to do what repo devs do—ensure their app works with the standard libraries—or opt for bundling.

Devs being human—and humans being animals—this means the overall average tendency will be to bundle, because that’s easier for them. Which means that I, the end user, now have more bloat, which incentivizes me to retreat to the disk-saving havens of repos, which incentivizes the devs to release on a repo anyway…

So again… who does this benefit? Or am I just completely misunderstanding the costs and benefits?

  • 𝘋𝘪𝘳𝘬@lemmy.ml
    link
    fedilink
    arrow-up
    40
    ·
    1 year ago

    So again… who does this benefit?

    It benefits me because I can install 32 bit software as Flatpak without any troubles and without messing up my whole system with 32 bit libraries dependency hell.

  • KrispeeIguana@lemmy.ml
    link
    fedilink
    arrow-up
    18
    arrow-down
    1
    ·
    1 year ago

    It benefits both devs and end users.

    Many people don’t have the time or resources to manage a broken application especially devs who have to deal with that on several Linux distributions simultaneously.

    Many distros use different package install scripts and repos to suit their specific needs. If I were to use a Debian-based distro, I would need to use apt to grab from a Debian-compatible repo. If I somehow got apt to work on Fedora, then not only would the program I installed not work, it would likely annihilate many of the preexisting dependencies and possibly brick the system.

    I personally use Arch Linux which uses pacman, my package manager of choice, and a lot of times I’ll find an application that doesn’t work on my system due to mismatched dependencies. Arch is incompatible with .deb and .rpm files and does not use the Debian repo and its derivatives. It uses the AUR and its own derivatives of that repo. I don’t have the time or skill to get a program to work with a newly updated dependency on one distro nevermind however many exist on the internet. Many devs do that for free after they’ve been working at their job for hours and/or taking college courses.

    What a Flatpak or appimage (ignoring goofy aah snaps) really does is allow a developer to update dependencies for their application at their own pace without having to play catchup when something inevitably breaks due to an update. It allows for a more stable system. As a Debian Bro, you might not need that, but on rolling-release distros like Arch and funky distros like Manjaro that can be very much welcome.

  • warmaster@lemmy.world
    link
    fedilink
    English
    arrow-up
    15
    ·
    edit-2
    1 year ago

    As for Flatpaks: Me. It’s easier, simpler, cleaner, more secure and overall more convenient. It’s like on mobile, permission based. But without the shady corporations behind it.

    About Snaps: some edge devs but more importantly: Canonical.

  • hottari@lemmy.ml
    link
    fedilink
    arrow-up
    13
    ·
    1 year ago

    Benefits any software dev on Linux, as flatpak ships all your dependencies in one “container”. This allows you to deploy once and forget about whether some Ubuntu system dependency is on the same version/compatible with your test environment. Software that works everywhere is the biggest win of flatpaks. One could also make the same argument for snaps except the package repository is closed-sourced.

    For me, it allows an easy configurable sandbox with Flatseal. This is the main reason I use flatpaks TBH, software is packaged with too much express permissions on Linux. You also get delta updates. Plus I don’t have to worry about mucking around with system packages if for example some dependency is not available or needs building/installing.

  • Raspin@lemmy.ml
    link
    fedilink
    arrow-up
    11
    ·
    1 year ago

    It helps distributing applications that don’t break left and right. Deepin is creating its own thing as well and they said they are gonna check host system first then supplement missing components if needed. This should result in maximum space saving, but allow developers to cherry pick dependencies.

    How this is gonna play out remains to be seen.

    • joel_feila@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      thanks you for explaining that. I had asked around a few times about Linglong but there is nothing that really talked about them.

  • BitSound@lemmy.world
    link
    fedilink
    arrow-up
    14
    arrow-down
    6
    ·
    1 year ago

    Snaps benefit Canonical. They’re trying to build their own walled garden, and anyone else benefiting is not a consideration.

    Flatpaks are different, because they aren’t purpose-built to benefit a single company. I wouldn’t use them to install most things, but there’s a few places where there’s benefits for at least some people. It’s a lot easier to maintain large projects like Firefox on older distro releases for example. You get sandboxing, so that say a bug in Firefox won’t let malicious javascript take over your system. It lets vendors release closed source software that would never be included in your distro’s repos. These are all things that may not benefit you, but in theory they’ll benefit enough people that it’s worth it.

    I’ve also moved onto NixOS so don’t use either one anyways. I think Nix or something like it is the future, even if you’re running a more traditional distro, though that might just be misplaced optimism, see the success of worse is better.

      • joel_feila@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        OH I asked a question like that not to long ago. Appimages do tend to be smaller, they have sandboxing, and getting updates can be hard. Sometime you have just download the new appimage and delete the old one. Other then that is does serve the same function of universal install format.

  • erwan@lemmy.ml
    link
    fedilink
    arrow-up
    8
    ·
    1 year ago

    As a Steam Deck user I really like flatpak, because it allows me to install third party apps while my system remains exactly the same as every other Steam Deck on the same version.

    That means just like other “consumer” devices and unlike most PCs, updates are simple and risk free. There is no risk of having an update break because I installed some app that broke system level stuff.

  • planish@sh.itjust.works
    link
    fedilink
    arrow-up
    8
    ·
    edit-2
    1 year ago

    I think it benefits the distro maintainers. They can vet and ship version 0.13.1 of some multi-player video game, and support that for two years without bothering to package multiple backward-incompatible releases from the game developers. People won’t come demanding that they break their distro’s stable version no major version upgrades rule because everyone actually playing the game can just use the snap/flatpak published by the developers.

  • Artopal@lemmy.ml
    link
    fedilink
    arrow-up
    3
    ·
    1 year ago

    I’m grateful to be able to use AppImages for everything that’s not in the repos or for anything that I need updated as soon as upstream updates. So far it has worked seamlessly. It’s the most user friendly solution of the lot and I don’t need sandboxing.

    • KrispeeIguana@lemmy.ml
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      How do you know when to update an AppImage? I would use the Krita AppImage but I would have to hunt down the file in my file manager to open it and I can’t find a way to update it without straight up replacing the thing manually.

      • Artopal@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Usually they update automatically. I have AppImage integration and most packages tell me of newer versions.

  • zwekihoyy@lemmy.ml
    link
    fedilink
    arrow-up
    4
    arrow-down
    1
    ·
    1 year ago

    this is just my opinion but if you aren’t after the sandboxing benefits then don’t bother with them. if you want to avoid dependency hell go with nix, if you are worried about storage space use your standard package manager, and if you want higher security without the knowledge/effort to manually do it, go with flatpak or snaps (although many flatpaks need to be further hardened via Flatseal as the dev gets to configure the sandboxing. I’m unsure how this operates under snap as I refuse to use it.)

  • clemdemort@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    1 year ago

    I benefit from using flatpaks they are up to date and stable I use flatpaks on debian so that I can have both stability and up to date software, I also get more control over permissions which I’ve definitely used (I nearly fully restrict discord access to my system)

    The main downside to me is the package size but this gets wayyyy better after you install the runtimes.

  • ExistensialDread@lemmy.world
    link
    fedilink
    arrow-up
    3
    arrow-down
    2
    ·
    1 year ago

    I’m an Ubuntu user, I’ve never bothered to try any other distro and probably never will. in essence, I just want my apps to work.

    I have spent countless hours hunting down specific debian packages that the application that I want needs. I never wanted to worry about installing dependencies and worrying that they don’t interfere with each other in the first place. I really just want my apps to work.

    People have complained that snaps have so much bloat, it runs slower, blah blah blah, I don’t care. It works and I’m happy.