3 ms·
how is this better than just using asdf where i can just put a `.tool-versions` file in the project and have it swap ruby+node+whatever to the appropriate versi
by masukomi 4y ago
how is this better than just using asdf where i can just put a `.tool-versions` file in the project and have it swap ruby+node+whatever to the appropriate versions?
(honest question)
https://asdf-vm.com/ https://asdf-vm.com/
- pmarreck 4y agoHere's a good answer to that question (scroll down for comparison to asdf): https://medium.com/@ejpcmac/about-using-nix-in-my-development-workflow-12422a1f2f4c https://medium.com/@ejpcmac/about-using-nix-in-my-developmen... In my Elixir app's case, the app was not deterministically reproducible using only asdf because it had underlying dependencies (a NIF, in this case VIPS) that required either C or Rust compilation at build time, and that in turn required another stack of dependencies with specific versions (which often broke the build), and even if that was all lined up, there are outside dependencies such as SSL libraries which can make or break builds when not using something like Nix (which gives you total control over every dependency). But the funny thing is that all I had to do was specify "vips" as an input, and since Nix already takes care of giving vips whatever IT needs to build correctly, it was basically a no-op to make this work with Nix. Given the fact that you can output a Docker from a nix recipe/derivation https://thewagner.net/blog/2021/02/25/building-container-images-with-nix/ https://thewagner.net/blog/2021/02/25/building-container-ima... , it also supersedes Docker IMHO