nvim-neorocks / rocks.nvim

🌒 Neovim plugin management inspired by Cargo, powered by luarocks
GNU General Public License v3.0
704 stars 14 forks source link

Install script: wrap `vim.system` calls to output nicer error messages if binary can't be found #359

Closed mrcjkb closed 1 month ago

mrcjkb commented 5 months ago

Hey :wave:

The error is thrown here, because you don't have sh or git bash installed:

https://github.com/nvim-neorocks/rocks.nvim/blob/ccdaaa1cb1f5484575c81f452f1961ee1a005d51/installer.lua?plain=1#L192-L194

We definitely need to wrap those calls to output nicer error messages...

Originally posted by @mrcjkb in https://github.com/nvim-neorocks/rocks.nvim/discussions/358#discussioncomment-9586405

ENOENT: No such file or directory is very confusing...

mrcjkb commented 5 months ago

Another idea:

If any installer dependencies are missing, show a warning in the intaller UI.

softmoth commented 1 month ago

Also this configure call in bootstrap.lua can fail if the luajit-devel package is missing. There's no message about why, it just says line it failed at the line that sources bootstrap.lua.

This exact issue may no longer be a problem once no longer depending on luarocks, but I guess the need for better error reporting will still be there.

mrcjkb commented 1 month ago

Also this configure call in bootstrap.lua can fail if the luajit-devel package is missing.

Unfortunately, that's an issue with the luarocks build scripts. Not much we can do in our install/bootstrap scripts.

Closing this issue, because it's been implemented in #549. Also, we are focusing almost all of our resources on rocks development now. I don't think it'll be too long before we can replace luarocks 😄