I understand that if you don't know anything about the language or what is a flake, it may be a little bit difficult.
But really, adding a new package to your environment once you have a flake setup, which a minimal one is trivial, is just adding the name of the package.
Here you have a flake.nix example from leptos. https://github.com/leptos-rs/leptos/blob/main/flake.nix
You want a new dependency? Add it to buildInputs. (this one doesn't have packages setup, but anything in the attribute set packages will be available in path)
You want to search a package: https://search.nixos.org/packages (or use the cli)
you want to test a package before adding it? nix-shell -p or nix shell for example.
Heck, even if you want it more easy, you could write a tool in less than 100 lines that adds packages names to .json/.yaml/.toml, which allows you to parse it using the nix language and a simple cli written with bash functions to add/remove packages if you wanted.
That's why it is hard for me to understand this project as a product, it seems like a wrapper to the most basic things :\
After a few months, I needed to do that again, but now the project supported devenv.sh. It took me 5 min.
That experience also repeated for other kinds of tasks, for example: start postgres (or redis or elasticsearch or cassandra...), install packages only if the host system is `darwin`, install old versions of packages that aren't on the registry anymore, etc...
I'm not really against tools that make it easier to use nix, I think devenv is a nice tool and I like that it doesn't hide nix, the same way I love home-manager and use it all the time.
Yep. That's my main argument for it against devbox.
> Does it have any kind of simpler syntax for overlays?
Yes, it does. But what helps isn't that, but the concise docs with just the information I need to know to get up and running quickly: https://devenv.sh/getting-started/
I've read multiple docs/books on Nix, but I always find myself lost when I need to accomplish anything simple. With devenv, I can spot most of my answers from the docs menu. They are all a single click distant from me.
I also tried passing arguments to specify the GCC version in like 10 different ways, *that all failed silently*. Staying far far far away from Nix even though on paper I should love it.
Edit: oh yeah and `nix shell` and `nix-shell` both exist and don't do the same thing