Loading
neovim: rely exclusively on evaltime deps
Neovim currently resolves its lua dependencies at buildtime in the wrapper, which causes some trouble as it's difficult to debug or replicate the result outside without rebuilding the wrapper. This change makes lua dependencies available at evaltime. We can thus build a luaEnv to avoid building a long LUA_PATH which can help with runtime perf. The drawback is that we now need to engrave in nix the default LUA_PATH for the various lua interpreters. This is what I had initially tried to avoid but the tradeoff proved annoying. As far as neovim is concerned, we only care about the lua 5.1 and luajit interpreters whose defaults only slightly differ for cpath IIRC. So it should mostly transparent except for one or two plugins in which case we can update "getLuaPath" on a per interpreter basis.