I’ve gathered that a lot of people in the nix space seem to dislike snaps but otherwise like Flatpaks, what seems to be the difference here?

Are Snaps just a lot slower than flatpaks or something? They’re both a bit bloaty as far as I know but makes Canonicals attempt worse?

Personally I think for home users or niche there should be a snap less variant of this distribution with all the bells and whistles.

Sure it might be pointless, but you could argue that for dozens of other distros that take Debian, Fedora or Arch stuff and make it as their own variant, I.e MX Linux or Manjaro.

What are your thoughts?

  • Shareni@programming.dev
    link
    fedilink
    arrow-up
    5
    arrow-down
    1
    ·
    edit-2
    2 months ago

    They’re really great for server setups

    Please don’t go anywhere near servers with either of those, that’s what docker and alternatives are for.

    the reasons they exist on desktops for the end-user are less compelling and often result in user frustration.

    Try running a stable distro without them. If you want a program not to be years out of date, and don’t want to compile everything manually, the only options are to use an alternative package manager (flatpak/snap/nix/etc.), distrobox, or appimage + some pm for updates.

    However, for your casual end-user, it can quickly become a confusing nightmare

    They’re a lifesaver for casual users, especially when they’re integrated into a gui (software centre and discovery for example). None of the other options are nearly as user friendly.

    Permission issues are really rare and distro specific from my experience. Also there are tools like flatseal to make fixing them easier.

    • NaN@lemmy.sdf.org
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      2 months ago

      I hate snaps and how they pushed them on desktop users, but they’ve always been intended for servers, it’s one of the reasons they can ship things like unified kernel images. Ultimately they allow for a modular immutable system, potentially much more flexible than some others like Silverblue or Fedora Atomic stuff.

      What they can do is pretty neat, but their “transitional” deb packages for normal users were ridiculous and should never have happened.

      • Shareni@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        2 months ago

        TBH I haven’t used snaps but based on info from this thread:

        • can’t pin specific package version or force reproducibility in any way
        • can’t stop updates
        • can’t add private repos without modifying snapd, only manually install downloaded snaps
        • can’t inspect the package definition or modify it

        Because of those reasons I wouldn’t use it even on a private server, let alone in production.

        Ultimately they allow for a modular immutable system, potentially much more flexible than some others like Silverblue or Fedora Atomic stuff.

        So does nix, but it also enables declarative package management, adding your own package sources, modifying existing package definitions, creating your own repos, and generating docker images. It also works perfectly fine for userland packages.