There’s probably a combination of magic command line flags that allows podman/distrobox to work, but we honestly shouldn’t need containers for this at all.
It’s frustrating how we have all the pieces to make this work, but they just don’t come together properly:
Brew isn’t sandboxed and pollutes the environment
Nix isn’t sandboxed and can’t prefix install (also the DX with Nix really sucks)
Guix is like Nix but without the packages
Flatpak doesn’t have the packages
Snap is proprietary garbage
Maybe this is a hint that I should write my own package manager, with blackjack and hookers that works like Nix, but doesn’t hardcode /nix/store, runs everything in bubblewrap and works with SELinux?
The unfortunate thing about snap is that of all options, it is the most capable. You get GUI, CLI, server, full filesystem access if needed (aka classic snaps). But Canonical really drags the project down and handicaps it with poor decisions.
There’s probably a combination of magic command line flags that allows podman/distrobox to work, but we honestly shouldn’t need containers for this at all.
It’s frustrating how we have all the pieces to make this work, but they just don’t come together properly:
Maybe this is a hint that I should write my own package manager,
with blackjack and hookersthat works like Nix, but doesn’t hardcode/nix/store, runs everything in bubblewrap and works with SELinux?Coldbrew kinda works like that. It uses bubblewrap and uses Alpine’s packages: https://gitlab.postmarketos.org/postmarketOS/coldbrew.
The unfortunate thing about snap is that of all options, it is the most capable. You get GUI, CLI, server, full filesystem access if needed (aka classic snaps). But Canonical really drags the project down and handicaps it with poor decisions.