Change:
Describe the bug I have an overlay to install neovim from a recent commit. When you use that overlay on a intel macbook neovim is compiled against luajit 2.1.0-beta3 while the same derivation on an M1 macbook compiles against Lua 5.1. I tried checking why that might be given it's the same exact overlay and luajit seems to compile just fine on aarch64 but I am afraid my nix skills weren't good enough. To Reproduce neovim with the following overlay: neovim the command On intel you will see: While on arm: Main issue is that lots of nvim plugins require luajit and don't work with lua 5.1 Expected behavior neovim should be compiled against luajit. Screenshots N/A Additional context Add any other context about the problem here. Notify maintainers Metadata Intel: Arm: Maintainer information:
This is alredy done in
Oh, thanks for the quick response and for the great work. Closing this :)
Reopening, since this will again be the case once is merged. By some reason builds with luajit on aarch64 still fail and I do not know why. As explained in , simply updating luajit does not help.
fixed in
switched back to using Lua 5.1 due to I think this issue should be reopened. Especially due to from the OP Also see my comment above
I've been messing around with this for a few days without much success, but I do think that compiling with openresty-luajit does work (at least, luarocks builds successfully and the error in question with goes away). I am utterly lost in the maze of Nix abstractions though and don't know the best way to do this. I've tried using overlays to set LuaJIT to be the openresty version which seems to half work, but when I try and build neovim it's still using the version of luarocks built with LuaJIT 2.1. Can someone who knows their way around Nix a little better take a deeper look into this? EDIT: I got it to work! I'm using the following overlay: This issue helped me figure out why my overriden value of wasn't applying to the packages. I had to add to the override function.
Maybe make a pr for that so nixpkgs will use this version of luajit by default on macOS aarch64.
Done
merged.
This problem appear again, I used on ubuntu22.04 aarch64 (m1 Docker), and got same error with the NVIM 0.7.2: And my luaSnip plugin can not work. (It's ok under intel x64)
I'm also hitting this issue again on aarch64 (m1 Docker) on ubuntu 22.04 and 20.04
Same here, exact same environment and output as
I am also seeing the same error in ubuntu 22.04 VM running on M1 MAC. This is based on aarch64. Anyone know how to fix the issue?

Discussion:
, libuv, lua, ncurses, pkg-config , unibilium, xsel, gperf , libvterm-neovim <ins> , tree-sitter </ins> , glibcLocales ? null, procps ? null # now defaults to false because some tests can be flaky (clipboard etc)

in stdenv.mkDerivation rec { pname = "neovim-unwrapped"; <del> version = "0.4.4"; </del> <ins> version = "0.5.0"; </ins> src = fetchFromGitHub { owner = "neovim"; repo = "neovim"; rev = "v${version}"; <del> sha256 = "11zyj6jvkwas3n6w1ckj3pk6jf81z1g7ngg4smmwm7c27y2a6f2m"; </del> <ins> sha256 = "0lgbf90sbachdag1zm9pmnlbn35964l3khs27qy4462qzpqyi9fi"; </ins> }; patches = [

msgpack ncurses neovimLuaEnv <ins> tree-sitter </ins> unibilium ] ++ optional stdenv.isDarwin libiconv ++ optionals doCheck [ glibcLocales procps ]

"-DGPERF_PRG=${gperf}/bin/gperf" "-DLUA_PRG=${neovimLuaEnv.interpreter}" "-DLIBLUV_LIBRARY=${luvpath}" <ins> "-DUSE_BUNDLED=OFF" </ins> ] ++ optional doCheck "-DBUSTED_PRG=${neovimLuaEnv}/bin/busted" ++ optional (!lua.pkgs.isLuaJIT) "-DPREFER_LUA=ON"

wrapNeovimUnstable = callPackage ../applications/editors/neovim/wrapper.nix { }; wrapNeovim = neovim-unwrapped: lib.makeOverridable (neovimUtils.legacyWrapper neovim-unwrapped); neovim-unwrapped = callPackage ../applications/editors/neovim { <del> lua = # neovim doesn't work with luajit on aarch64: https://github.com/neovim/neovim/issues/7879 if stdenv.isAarch64 then lua5_1 else luajit; </del> <ins> lua = luajit; </ins> }; neovimUtils = callPackage ../applications/editors/neovim/utils.nix { };