4 ms·
But the whole point of rpm-ostree is to avoid rpms where possible. You can't be for rpm-ostree and at the same time propose continuing with traditional packagin
by 0rzech 4y ago
But the whole point of rpm-ostree is to avoid rpms where possible. You can't be for rpm-ostree and at the same time propose continuing with traditional packaging system, which is discouraged for immutable systems.
Snap and Flatpak where not only meant to enable sandboxing, but also to eliminate huge distribution repositories of packages all modifying root directory contents and requiring redundant packaging work.
I agree that neither Flatpak nor Snap are there yet, but we're all still in the transition stage.
- smoldesu 4y ago> but also to eliminate huge distribution repositories of packages all modifying root directory contents and requiring redundant packager work. Well... I'd argue both of them failed. Snap is well-made, but mired in Canonical politics to the point that it's unusable. Flatpak has good intentions, but is generally poorly maintained and driven by ideologues rather than project managers and top-down leadership. That's without mentioning the technical implementations of either project, both of which fail to eliminate redundancy in their runtimes and feel completely foreign to the native system. Nix shouldn't have to come up so frequently in these discussions, but it's a much better package manager than Flatpak or Snap (isolation technologies aside). If Flatpak also worked with software maintainers instead of embracing mutual distrust, it could be faster and lighter on the system. Instead of tracking our dependencies properly, we've resigned ourselves to just targeting "Another Competing Standard" and hoping it won't also become irrelevant in 5 years when rpm-ostree-2 drops. It doesn't strike me as a resilient or reliable technology in the long-term, especially on it's own.
- 0rzech 4y agoThe redundancy Flatpak and Snap induce is nothing in comparison to hundreds of, say, coreutils packages - each for some Linux distribution and its supported versions. Also I don't think tracking dependencies is the root problem, rather different applications requiring different dependency versions, which leads to even more redundancy on top of the aforementioned one. And if you avoid providing different lib versions, you end up with silly application version freezes until next distribution version is released along with updated repos. Rpm/deb/etc. repositories simply don't scale. You either end up with a small well-maintained repo, or a huge one with many abandoned or version-frozen packages. Not to mention you'd have to write sandboxing rules for each distro version separately, which is why most distros do not provide complete sandboxing at all. Perhaps there are some distributions inbetween, but not in my experience. I do understand current Flatpak's and Snap's technical limitations. I just think they will be solved, sooner or later. I'd be happy to use Guix or Nix instead of Toolbox, but currently their requirements conflict with how rpm-ostree treats system's root directory.