0

I recently started to use NixOS 23.05. I'm also using Home Manager (same version). Problem I'm facing is with asdf. I installed it using Home Manager, and everything went fine. I then installed a couple of plugins, but any time I make them available globally, the system is unable to find the corresponding application/installation.

I think this may be an issue with NixOS, and the way it register the binaries/commands, but I'm not sure how to fix it, because everything was managed by Home Manager.

Anyone using this setup?

x80486
  • 939
  • 2
  • 11
  • 31
  • I'm not familiar with asdf but it's important *how* you installed these plugins. Also, you have to find out how asdf discovers plugins. NixOS does not "register" commands anywhere, it only puts files into certain directories. – Atemu Jun 26 '23 at 08:24
  • `asdf` was installed using `Home Manager`. From that point, everything else is done using `asdf` — plugin and application/binary installations. `asdf` _registers_ (there are some shell scripts specific to `asdf` that should be run, similar to what `direnv` does when you `cd` into directories, but system-wide) itself with the system, so I guess that's what's missing here. – x80486 Jun 26 '23 at 12:47
  • How does it "register" itself? – Atemu Jun 26 '23 at 20:36
  • It's all part of the [initial installation](https://asdf-vm.com/guide/getting-started.html#_3-install-asdf) process. In the end, those shell scripts must be sourced every time a new shell is spawn. My guess is that something around those lines is not working correctly, and it's unable to recognize the newly installed binaries. Doing `reshim` doesn't work either. – x80486 Jun 26 '23 at 20:55
  • What script are you sourcing to test this? (the path) What is `reshim`? – Atemu Jun 27 '23 at 17:44
  • I placed a link in the previous comment for the scripts. It's part of the `asdf` installation, that's why I don't fully understand why `asdf` doesn't work entirely. I'm not sourcing them manually — they are nowhere to be found, probably because `Nix` manages the `asdf` installation. `reshim` is just a command from `asdf` to recreate _shims_ for a given version of an installed package — I rarely used that sometimes in the past (under `Arch Linux`) because some package was not available after install, and that sort of things. – x80486 Jun 27 '23 at 18:05

0 Answers0