I’m not sure I get it, what makes devenv different/better than a shell.nix?
Abstracted support for services, language versions, etc. It’s basically an alternative that’s both simpler and provides more features up front. But may not support the advanced tinkering. If you need to do more than devenv can provide, you can always revert you shell.nix
Way easier to understand if just some random guy on your team wants to add a package or shellHook or whatever.
Wonder how this differs from https://github.com/jetpack-io/devbox
One difference is that devbox wants to almost completely hide nix from you. For example, it automatically installs it for you. The abstraction is thicker, for sure.
My very naive guess at which you should play with, based on how I decided: if you want an abstraction over nix that you can adopt without ever hearing the word nix, give devbox a try. If you want something to ease you into using nix before you dive in head first, give devenv a try. I have very low confidence that’s a good or accurate heuristic.
Hi all, I’m the founder of jetpack.io (developers of Devbox), and I agree with your take:
Devbox is trying to give you the power of nix, but with a simplified interface that matches the simplicity of a package manager like yarn. If you want reproducible environments by simply specifying the list of packages you depend on, and not having to learn a new language, then devbox is a great match.
On the other hand, if you’re trying to do something that is involved and requires the full nix language, then devenv can be a great match.
and it uses json as a surface language, with all the limitations this implies compared to nix-lang.
yea, that’s what i surmised just from a cursory look… the devbox abstraction might be quite limiting in some ways, whereas devenv seems thinner and probably therefore less leaky (because it’s designed to leak?)
Devbox is a commercial product in a pre-commercial “get free contributions” phase.
I feel like this is misleading (I’m the founder of jetpack.io the company that makes Devbox)
Yes, jetpack.io is a for-profit business: but we’ve committed to making the Devbox OSS tool free forever. We plan to monetize by offering managed services (Devbox Cloud), but those are an independent codebase, and you only need to pay for them if you want the managed services. If you don’t, then Devbox OSS is, and will forever be, free and completely open source.
This is similar to how Cachix is a for-profit business. It offers a Cachix managed service that it monetizes. It is commited to making devenv a free open-source project. You only need to pay for cachix if you want to use the managed service.
In that sense, both companies/projects monetize in a similar way.
[Comment removed by author]