Hacker News new | ask | show | jobs
by hacb 353 days ago
So if I understand it correctly, it's a mix between GNU Make and `asdf`?
5 comments

Author of mise has a page comparing it to asdf:

https://mise.jdx.dev/dev-tools/comparison-to-asdf.html

I use it just as a better asdf. I don’t quite see the point of the rest of its functionality, but “asdf without needing to install plugins” is a compelling enough proposition for me.
I'm in the same position at the moment, though I actually do see the point of the rest of the functionality. I just don't use it.
On top of that, it also enabled environment management (replacing direnv). Env vars can also be retrieved from secret stores.

It can also manage tools from various backends, e.g. go, aqua, cargo, npm, ubi and others

What does that “manage tools” bit get you? I started using mise as a replacement direnv a while ago and it’s nice enough: cd into a directory and voila, the Python virtualenv is activated. I like that. But in what way could it manage, say, npm or cargo that would be useful?

I feel like I’m missing something important here, as lots of people seem to adore mise, and I like it just fine for the limited use I put it to, but I haven’t had that aha moment yet that makes it indispensable for me.

Iirc it uses cargo directly as a mise backend. For example, instead of doing "cargo install ripgrep" you'd now install ripgrep through mise and could also have multiple versions of it.

Maybe ripgrep is a bad example but imagine needing different versions of some dev tooling that can be installed with cargo install in different projects.

Edit: thought you were asking about the npm and cargo backends specifically.

You might need different versions of node, python, etc., depending on the project. mise can manage those different versions for you, including installing and automatically enabling the correct version for each project.
I wish they had some direct envrc support, so that legacy projects wouldn't have to be migrated to mise.toml
Somewhat, but it’s easier to use than asdf
Yep! And direnv on top of that :)