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?

  • @Bitrot
    link
    English
    6
    edit-2
    6 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
      16 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.