mise does 90% of what I need, but at only 1% of the hassle.
I like the idea of nix, and the future of building software is clearly something like it... I'm just not sure it'll be nix itself.
mise does 90% of what I need, but at only 1% of the hassle.
I like the idea of nix, and the future of building software is clearly something like it... I'm just not sure it'll be nix itself.
The solution here is: use Nix but don't use nix-darwin (at least not until you're generally comfortable with Nix for package management and dev shells). You do NOT have to use nix-darwin on Mac to reap 80% of the benefits of Nix (especially in a team setting).
After dropping nix-darwin, I think almost everyone will find that it's very easy to use Nix for sharing project setups with bespoke tooling. I just had a new team member onboard, knowing nothing about Nix, in a day or less, with several different languages and unusual tools.
Ahh, but I tried that too. I originally decided to play with nix-darwin because I was on a contract that used nix in their repos to ease onboarding of academic collaborators.
In practice, it was complicated enough that most of us ended up relying on the 2 nix experts to make any real changes, and when they left, the nix configs stagnated.
It might be the case that nix-darwin, and our particular python/ML repos, were "hard mode" for nix, but I truly think I gave it a fair shake.
If nix requires a lot of effort to do anything off the beaten path, it's just not the tool for me.