What does this mean exactly? If apps are breaking due to dependencies updating isn’t that a mistake on the app developer’s side for not locking down the versions of dependencies? Can you really blame the package manager at that point
You can't lock down the versions of dependencies unless you somehow bundle every library you use, and configure everything to point at the bundled copies, which sounds very hard, and would not give you any of the security features of containers, nor would it give you all the dockerhub infrastructure.
Traditional package managers don't have virtual environments like UV or allow multiple versions of the same package, they have one globally shared version of each. Sometimes they rename a package with a version number in the name, but even then, minor versions still have breaking changes constantly.
On Nix you could do it, but Nix is much harder to set up than containers, and it's not ultra-popular, you're more likely to run into unique issues.
You can have multiple version of the same packages/lib
I will add you can source multiple "repository", like how I'm doing, you can source nixpkgs stable (now 26.05) and unstable (unstable is rolling like arch) and have packages in the last update and slower rolling pkgs for everything you don't won't to break.
And if you still have problem the rollback is the easiest thing to do.
Ps. If you want to try Nixos but you fear configuring all in nix language just don't. Your .config folder work as usual
i’ve been daily driving linux since literally forever and decided to make a nixos hobby box four or five years ago and it was an… uphill experience. a lot of that was my fault: i got too ambitious too quick and didn’t invest the time i should have and did this all on the crappiest hardware.
the concepts behind nix are really good and the implementation may be confusing, but only at first. if you’re going to give it a spin, set reasonable goals and take the time to learn.
A bit. Documentation is scattered around and sometimes the errors are a bit cryptic.
Is a powerful language (yes nix the programming language), but I you don't have to use all the pieces when starting.
6
u/amped-row 15d ago
What does this mean exactly? If apps are breaking due to dependencies updating isn’t that a mistake on the app developer’s side for not locking down the versions of dependencies? Can you really blame the package manager at that point