Distro agnostic packages like flatpaks and appimages have become extremely popular over the past few years, yet they seem to get a lot of dirt thrown on them because they are super bloated (since they bring all their dependencies with them).

NixPkgs are also distro agnostic, but they are about as light as regular system packages (.deb/.rpm/.PKG) all the while having an impressive 80 000 packages in their repos.

I don’t get why more people aren’t using them, sure they do need some tweaking but so do flatpaks, my main theory is that there are no graphical installer for them and the CLI installer is lacking (no progress bar, no ETA, strange syntax) I’m also scared that there is a downside to them I dont know about.

  • LalSalaamComrade@lemmy.ml
    link
    fedilink
    arrow-up
    11
    ·
    edit-2
    10 months ago

    TL:DR; they’re the package managers of the future, and I shill for them, but they’re still buggy in some areas.

    Guix and Nix user here. For all I can shill about store-based file hierarchy, ephemeral environment isn’t perfect yet in both of these apps, at least from a GUI application perspective. It’s a bug that I’ve found in Nix, but that should also reflect in Guix. Basically, what’s happening here is that due to some impurity in the environment, it uses libraries from the system instead, and apps may stop working. This is a very serious issue, and is directly related to what you’re talking about. This problem hides itself when using GuixSD in Guix or NixOS in Nix, but in other foreign distro that have dated libraries, it is very much visible, and you’ll be forced to use outdated channels.

    • root@precious.net
      link
      fedilink
      arrow-up
      6
      arrow-down
      19
      ·
      10 months ago

      Of the future? They’re a duplicate of what Apple was doing with software as far back as the mid 90s.

      Every ounce of performance we squeeze out of our hardware is replaced with pounds of bloat like this.

      It’s fine for a utility or something you’ll hardly ever need to use, but running every day software like this is a complete waste.

          • AgileLizard@lemmy.ml
            link
            fedilink
            arrow-up
            5
            ·
            10 months ago

            The garbage collector removes all packages/derivations that are not (transitively) used any more. So it is similar to apt-get autoremove. I don’t think that classifies as bloat. You could just regularly run the garbage collector.

          • Shareni@programming.dev
            link
            fedilink
            arrow-up
            4
            ·
            10 months ago

            Rollback, reproducibility, safety.

            Would you call btrfs snapshots or some other backup system bloat?

            It actually serves an important purpose for the user. Meanwhile apt is leaving around random libraries and man pages you need to autoremove.

        • root@precious.net
          link
          fedilink
          arrow-up
          1
          arrow-down
          1
          ·
          10 months ago

          Having every application load their own version of a library into memory is bloat.

          • iopq@lemmy.world
            link
            fedilink
            arrow-up
            2
            ·
            10 months ago

            They don’t, they share the same library version if they were built against it.

            Lots of software won’t even work if the library version is different, so it’s a benefit, not a downside

      • excitingburp@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        10 months ago

        What do you mean? Apple doesn’t have a package manager at all. Brew is a fucking mess that takes ages to do anything.

        • root@precious.net
          link
          fedilink
          arrow-up
          1
          ·
          10 months ago

          The applications have binaries and libraries bundled for multiple arches. I wasn’t speaking to the package manager.