• superweeniehutjrs@lemmy.world
    link
    fedilink
    arrow-up
    26
    arrow-down
    1
    ·
    7 months ago

    I’m uninformed, why were things like snap and flatpak created?

    I barely understand docker, but I’m starting to understand why it can be beneficial, although bloated.

    • redcalcium@lemmy.institute
      link
      fedilink
      arrow-up
      45
      arrow-down
      2
      ·
      7 months ago

      People are annoyed by canonical shoving snaps into their mouth at every opportunity (people want to choose when to use them by themselves), but there are many legitimate reasons for existence of snap and flatpak. Here are some of them:

      • the app developers themselves are in full control of their app’s distribution and updates instead of relying on distro maintainers. devs getting some angry mails for bugs already fixed but not yet included by distros is tale as old as time.
      • simplified dependency management. what’s stopping the dev from packaging their app using distro’s native package management instead? whelp, they don’t want to deal with this stuff. It can be a hard work, and there are dozens of distros out there to support.
      • protecting users data. when you run an app installed from your distro’s package manager, you know you can trust it because your distro maintainers have vetted the app to make sure it doesn’t read your mail or your browser history or your ssh keys. when you download the app from a third party source, you can only pray to god that those apps won’t mess with your data behind your back. You don’t have to worry about that when you use sandboxed apps like flatpak.
      • kautau@lemmy.world
        link
        fedilink
        arrow-up
        40
        ·
        edit-2
        7 months ago

        Yup, what makes flatpak more akin to the open source spirit is that new submissions to flathub are open source and rely on a PR model

        https://docs.flathub.org/docs/for-app-authors/submission/

        https://github.com/flathub/flathub/pulls

        And software that exists on flathub is open and accessible in their repositories

        https://github.com/orgs/flathub/repositories

        Whereas snaps are a web based walled garden controlled by canonical

        https://snapcraft.io/docs/using-the-snap-store

        They both provide benefit as you explained, but flathub (flatpak’s default repo) is definitely more open in how it is handled

      • hperrin@lemmy.world
        link
        fedilink
        arrow-up
        14
        arrow-down
        1
        ·
        7 months ago

        You still have to worry about that with Flatpak. Like, don’t give a calculator app permission to read all your files and access the internet.

      • no banana@lemmy.world
        link
        fedilink
        arrow-up
        8
        arrow-down
        2
        ·
        edit-2
        7 months ago

        As an end user I actually love them (yes I know, sacrilege). Flatpak is my preference, but I also prefer pretty much anything to Ubuntu in its defailg state so that might have something to do with it.

      • bluGill@kbin.social
        link
        fedilink
        arrow-up
        3
        ·
        7 months ago

        None of the the benefits you state apply to something a distribution provides and so I don’t understand why Ubuntu is pushing them.

        • redcalcium@lemmy.institute
          link
          fedilink
          arrow-up
          7
          ·
          edit-2
          7 months ago

          Packaging applications is a hard work so they obviously want the devs to do it themselves. For example, canonical push hard so their users use snap for firefox because it’s maintained by firefox devs themselves. Firefox updates very often and has complex build system, so I think canonical is tired of allocating significant resource to support it and want to stop maintaining firefox package if they can.

    • Rikj000@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      25
      arrow-down
      5
      ·
      7 months ago

      Flatpak:
      To limit shady proprietary software from accessing your full storage / hardware.
      You can manage the sandbox access through tools like FlatSeal.

      Snap:
      To ruin your day / user experience.

      Both where introduced as a universal way to distribute packages on various distros.

    • Shareni@programming.dev
      link
      fedilink
      arrow-up
      5
      ·
      7 months ago

      why were things like snap and flatpak created?

      If you’re using a stable distro, the repo will end up with programs that are years out of date. So instead of compiling manually, you use flatpak/snap/appimage/nix/guix as an extra package manager. They also allow devs to release cross-distro packages.

      I barely understand docker

      although bloated.