main selling points are isolation and having the latest version directly from developers without having to wait for your distro to package/update it.
both are debatable since they are not as good as promoted (isolation doesn’t always work correctly and it’s a mess to configure it once you use anything different than the more mainstream distros) or goes against the historical preference (using bundled everything instead of cooperating with your distro packages and trusting every individual over trusting your distro as a whole) but having the latest version on any distro without having to wait is a popular need so they gained traction quite fast. this might make little sense for rolling release distros (arch, nix) but it’s helpful if you have a stable base (years old debian) but need the latest feature on an specific application or have to use very specific libraries that are not packaged on the main distro and would require complex upgrades
You answered your own question. Arch and Nix solve the same problem Flatpak solves, but by using better dependency management. Flatpak’s main proposition is built-in sandboxing and convenience, but if you’re on an “expert” oriented distro like Arch (btw), you probably don’t care as much about those “freebies.”
In that case flatpak is basically a hack for OS’s with broken or improper dependency manangement systems. Either those OS’s should fix their broken systems, or ppl should move to OS’s that do it properly, as that’s one of the most important functions of your OS anyway.
Also pretty much everywhere you’re using flatpaks (or snaps or…), you are doing it on top of a Linux system that’s still getting its core system updates via traditional dependency management. And flatpaks, despite trying not to, make assumptions about your kernel, your glibc version, architecture, ability to access parts of your filesystem or your devices, that can break things, and doesn’t bother to track it.
And the closer you get you tracking that stuff (like Snap tries to), you hilariously just get back to where you started, with traditional dependency management that already exists and has existed for decades.
Can someone explain why flatpak isn’t necessary for distros that have proper OS dependency management like Arch-based distros or Nix?
Seems like flatpak is solving a problem for OS’s that don’t have proper dependency management.
main selling points are isolation and having the latest version directly from developers without having to wait for your distro to package/update it.
both are debatable since they are not as good as promoted (isolation doesn’t always work correctly and it’s a mess to configure it once you use anything different than the more mainstream distros) or goes against the historical preference (using bundled everything instead of cooperating with your distro packages and trusting every individual over trusting your distro as a whole) but having the latest version on any distro without having to wait is a popular need so they gained traction quite fast. this might make little sense for rolling release distros (arch, nix) but it’s helpful if you have a stable base (years old debian) but need the latest feature on an specific application or have to use very specific libraries that are not packaged on the main distro and would require complex upgrades
You answered your own question. Arch and Nix solve the same problem Flatpak solves, but by using better dependency management. Flatpak’s main proposition is built-in sandboxing and convenience, but if you’re on an “expert” oriented distro like Arch (btw), you probably don’t care as much about those “freebies.”
In that case flatpak is basically a hack for OS’s with broken or improper dependency manangement systems. Either those OS’s should fix their broken systems, or ppl should move to OS’s that do it properly, as that’s one of the most important functions of your OS anyway.
Flatpaks make sense for atomic distros, too. It’s not always a matter of there being one right way to do things.
Also pretty much everywhere you’re using flatpaks (or snaps or…), you are doing it on top of a Linux system that’s still getting its core system updates via traditional dependency management. And flatpaks, despite trying not to, make assumptions about your kernel, your glibc version, architecture, ability to access parts of your filesystem or your devices, that can break things, and doesn’t bother to track it.
And the closer you get you tracking that stuff (like Snap tries to), you hilariously just get back to where you started, with traditional dependency management that already exists and has existed for decades.