Comments (40)
Yep it's working thank you so much ππ I will report if there are any other unexpected issues
from rocks.nvim.
I suppose you could go into the rocks.nvim installation and try to comment out parts of the plugin/rocks.lua file, so we can get an idea when it is crashing.
Okay
Thanks for all the patience by the way π
I'm not in hurry or anything so it's fine π π, also I really like this project
from rocks.nvim.
Okay I think I found the problem.
So I tried to use another luarocks version, I download a standalone binary from here.
And I can do lua =vim.system({"luarocks", "--version"}):wait()
{
code = 0,
signal = 0,
stderr = "",
stdout = "luarocks 3.9.2\r\nLuaRocks main command-line interface\r\n\r\n"
}
But it still can't install rocks.nvim
Installing rocks.nvim...
Installing rocks.nvim failed:
stderr: Access is denied.^M
Access is denied.^M
Access is denied.^M
Warning: Lua 5.1 interpreter not found at C:\Users\Windows 10\Downloads\executable\luarocks-3.9.2-windows-64^M
^M
Modules may not install with the correct configurations. You may want to configure the path prefix to your build of Lua 5.1 using^M
^M
luarocks config --local lua_dir <your-lua-prefix>^M
^M
^M
Error: Failed finding Lua header files. You may need to install them or configure LUA_INCDIR.^M
stdout: Installing https://luarocks.org/rocks.nvim-2.11.0-1.src.rock^M
So I tried another way with installing lua
and luarocks
through hererocks
.
But It got the same error as from lua-for-windows
And I tried to compare those three luarocks executable:
lua-for-windows
:luarocks.bat
hererocks
:luarocks.bat
binary
:luarocks.exe
Gotcha! I'm thinking maybe the cause of the error is vim.system
is confused with .bat
file
Here's the result after I tried to run lua =vim.system({"cmd.exe", "/c", "luarocks --version"}):wait()
with lua
and luarocks
from hererocks
{
code = 0,
signal = 0,
stderr = "",
stdout = "C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\luarocks\\luarocks.lua 3.8.0\r\nLuaRocks main command-line interface\r\n\r\n"
}
from rocks.nvim.
Hey π
thanks for reporting!
I don't believe we've had a chance to test the installer on Windows.
It's possible that your error message is caused because neovim can't find your luarocks
binary on the PATH
. Although normally, the installer should notify with a "luarocks not found" error message.
What's strange is that the stack trace doesn't contain the location of the installer script, which leads me to believe this may be a general incompatibility of vim.system
with Windows.
Are you able to run :lua =vim.system({"luarocks", "--lua-version=5.1", "install", "rocks.nvim" }):wait()
in cmd mode?
Or another luarocks command like :lua =vim.system({"luarocks", "--version"}):wait()
?
from rocks.nvim.
Sorry for late reply, here is the results of lua =vim.system({"luarocks", "--version"}):wait()
E5108: Error executing lua ...m-nightly\current\share\nvim\runtime/lua/vim/_system.lua:241: ENOENT: no such file or directory
stack traceback:
[C]: in function 'error'
...m-nightly\current\share\nvim\runtime/lua/vim/_system.lua:241: in function 'spawn'
...m-nightly\current\share\nvim\runtime/lua/vim/_system.lua:332: in function 'system'
[string ":lua"]:1: in main chunk
Also here's the result of lua =vim.system({"lua", "-v"}):wait()
{
code = 0,
signal = 0,
stderr = "Lua 5.1.5 Copyright (C) 1994-2012 Lua.org, PUC-Rio\r\n",
stdout = ""
}
Even though both lua
and luarocks
installed from scoop install lua-for-windows
, only luarocks
output errors like that
from rocks.nvim.
Which version of luarocks does scoop install and what's the output of luarocks --version
on the command line?
from rocks.nvim.
It's luarocks 2.0.2
I will try to install different version
from rocks.nvim.
Ok so I tried to set Set up luarocks (recommended) ?:
true
And got this output
Downloading luarocks...
Configuring luarocks...
Configuring luarocks failed.
stderr:
stdout:
Configuring LuaRocks version dev...
Lua 5.1 interpreter not found in $PATH
You may want to use the flags --with-lua, --with-lua-bin and/or --lua-version
Run ./configure --help for details.
configure failed.
Even though the result of lua =vim.system({"lua", "-v"}):wait()
is like this:
{
code = 0,
signal = 0,
stderr = "Lua 5.1.5 Copyright (C) 1994-2012 Lua.org, PUC-Rio\r\n",
stdout = ""
}
from rocks.nvim.
Unrelated to this issue but when cloning luarocks maybe use --filter=blob:none
, because it was so slow without it π
from rocks.nvim.
Thanks for troubleshooting this!
I've looked at the neovim source. vim.system
uses uv.spawn
under the hood, which says:
Possible reasons for failing to spawn would include (but not be limited to) the
file to execute not existing, not having permissions to use the setuid or setgid
specified, or not having enough memory to allocate for the new process.
and can confirm that ENOENT: no such file or directory
is thrown when you pass in a binary it can't find.
Regarding: Lua 5.1 interpreter not found in $PATH
:
We use sh configure
to configure luarocks. My guess is that it falls back to git sh
on Windows (I don't think sh
is installed by default, but git for Windows installs it iirc?). So it's likely that git sh
doesn't see the PATH
.
@vhyrro What do you think? Maybe we should use vim.o.sh
for this?
@tembokk What's the output of :lua =vim.o.sh
on your Windows machine?
luarocks 2.0.2 is very outdated and unlikely to work with rocks.nvim (we should probably add a minimum version requirement check to the installer).
Error: Failed finding Lua header files. You may need to install them or configure LUA_INCDIR.
Are you still using lua installed with scoop
? luarocks makes some assumptions about where to find header files.
Now that I think of it, even if you fix the issue with luarocks not finding lua, you'll probably run into issues installing one of rocks.nvim's dependencies, toml-edit.lua
.
We haven't yet succeeded in building it for Windows with GitHub actions.
from rocks.nvim.
What's the output of :lua =vim.o.sh on your Windows machine?
In my config I set it to pwsh
but with nvim -u NORC
it's cmd.exe
Are you still using lua installed with scoop?
I plan to stick to hererocks
from now on
from rocks.nvim.
What's the output of :lua =vim.o.sh on your Windows machine?
In my config I set it to
pwsh
but withnvim -u NORC
it'scmd.exe
Are you still using lua installed with scoop?
I plan to stick to
hererocks
from now on
Would you be able to test if using vim.o.sh
works for you?
We'll probably have some more stuff to iron out for Windows (a fix for the toml-edit binary rock is in the pipeline).
but with nvim -u NORC it's cmd.exe
We recommend to use nvim -u NORC
, as plugins like oil.nvim can interfere with the installer.
from rocks.nvim.
Would you be able to test if using vim.o.sh works for you?
I'll try to test outside neovim first
It seems hererocks act differently with and without admin priviliges. Probably this is an issue on scoop
, since I also installed python from scoop
.
Without admin privileges
β― luarocks install rocks.nvim
Access is denied.
Warning: Lua 5.1 interpreter not found at C:\Users\Windows 10\Downloads\executable\luarocks
Modules may not install with the correct configurations. You may want to configure the path prefix to your build of Lua 5.1 using
luarocks config --local lua_dir <your-lua-prefix>
Access is denied.
Installing https://luarocks.org/rocks.nvim-2.13.1-1.src.rock
Missing dependencies for rocks.nvim 2.13.1-1:
toml-edit >= 0.1.5 (not installed)
toml (not installed)
fidget.nvim >= 1.1.0 (not installed)
fzy (not installed)
nvim-nio (not installed)
rocks.nvim 2.13.1-1 depends on lua >= 5.1 (5.1-1 provided by VM)
rocks.nvim 2.13.1-1 depends on toml-edit >= 0.1.5 (not installed)
Installing https://luarocks.org/toml-edit-0.1.5-1.src.rock
Missing dependencies for toml-edit 0.1.5-1:
luarocks-build-rust-mlua (not installed)
toml-edit 0.1.5-1 depends on lua >= 5.1 (5.1-1 provided by VM)
toml-edit 0.1.5-1 depends on luarocks-build-rust-mlua (not installed)
Installing https://luarocks.org/luarocks-build-rust-mlua-0.2.0-1.src.rock
luarocks-build-rust-mlua 0.2.0-1 is now installed in c:\users\windows 10\downloads\executable\luarocks\ (license: MIT)
warning: unused manifest key: target.aarch64-apple-darwin.rustflags
warning: unused manifest key: target.x86_64-apple-darwin.rustflags
Compiling proc-macro2 v1.0.66
Compiling autocfg v1.1.0
Compiling serde v1.0.188
Compiling unicode-ident v1.0.11
Compiling pkg-config v0.3.27
Compiling num-traits v0.2.16
Compiling cc v1.0.83
Compiling cfg-if v1.0.0
Compiling quote v1.0.33
Compiling syn v2.0.29
Compiling ordered-float v2.10.0
Compiling mlua-sys v0.3.2
Compiling memchr v2.6.3
Compiling hashbrown v0.14.0
Compiling equivalent v1.0.1
Compiling indexmap v2.0.0
Compiling serde-value v0.7.0
Compiling erased-serde v0.3.31
Compiling bstr v1.6.2
Compiling toml_datetime v0.6.3
Compiling rustc-hash v1.1.0
error: Dlltool could not create import library with C:\Users\Windows 10\scoop\apps\mingw\current\bin\dlltool.exe -d C:\Users\Windows 10\AppData\Local\Temp\rustcugFGxI\lua51.def -D lua51.dll -l C:\Users\Windows 10\AppData\Local\Temp\rustcugFGxI\lua51.lib -m i386:x86-64 -f --64 --no-leading-underscore --temp-prefix C:\Users\Windows 10\AppData\Local\Temp\rustcugFGxI\lua51.dll:
Assembler messages:
Fatal error: can't create C:\Users\Windows: Permission denied
C:\Users\Windows 10\scoop\apps\mingw\current\bin\dlltool.exe: C:\Users\Windows 10\scoop\apps\mingw\current\bin\as exited with status 1
C:\Users\Windows 10\scoop\apps\mingw\current\bin\dlltool.exe: failed to open temporary head file: C:\Users\Windows 10\AppData\Local\Temp\rustcugFGxI\lua51.dllh.o: No such file or directory
error: could not compile `mlua-sys` (lib) due to previous error
warning: build failed, waiting for other jobs to finish...
Error: Failed installing dependency: https://luarocks.org/toml-edit-0.1.5-1.src.rock - Build error: Failed building.
With admin privileges
PS C:\Windows\system32> luarocks install rocks.nvim
Installing https://luarocks.org/rocks.nvim-2.13.1-1.src.rock
Missing dependencies for rocks.nvim 2.13.1-1:
toml-edit >= 0.1.5 (not installed)
toml (not installed)
fidget.nvim >= 1.1.0 (not installed)
fzy (not installed)
nvim-nio (not installed)
rocks.nvim 2.13.1-1 depends on lua >= 5.1 (5.1-1 provided by VM)
rocks.nvim 2.13.1-1 depends on toml-edit >= 0.1.5 (not installed)
Installing https://luarocks.org/toml-edit-0.1.5-1.src.rock
Missing dependencies for toml-edit 0.1.5-1:
luarocks-build-rust-mlua (not installed)
toml-edit 0.1.5-1 depends on lua >= 5.1 (5.1-1 provided by VM)
toml-edit 0.1.5-1 depends on luarocks-build-rust-mlua (not installed)
Installing https://luarocks.org/luarocks-build-rust-mlua-0.2.0-1.src.rock
luarocks-build-rust-mlua 0.2.0-1 is now installed in c:\users\windows 10\downloads\executable\luarocks\ (license: MIT)
warning: unused manifest key: target.aarch64-apple-darwin.rustflags
warning: unused manifest key: target.x86_64-apple-darwin.rustflags
Compiling proc-macro2 v1.0.66
Compiling autocfg v1.1.0
Compiling serde v1.0.188
Compiling unicode-ident v1.0.11
Compiling cc v1.0.83
Compiling num-traits v0.2.16
Compiling pkg-config v0.3.27
Compiling cfg-if v1.0.0
Compiling quote v1.0.33
Compiling syn v2.0.29
Compiling mlua-sys v0.3.2
Compiling ordered-float v2.10.0
Compiling memchr v2.6.3
Compiling equivalent v1.0.1
Compiling hashbrown v0.14.0
Compiling indexmap v2.0.0
Compiling bstr v1.6.2
Compiling serde-value v0.7.0
Compiling erased-serde v0.3.31
Compiling toml_datetime v0.6.3
Compiling rustc-hash v1.1.0
Compiling winnow v0.5.15
Compiling once_cell v1.18.0
Compiling mlua_derive v0.9.0
Compiling mlua v0.9.1
Compiling toml_edit v0.19.14
Compiling toml-edit-lua v0.1.4 (C:\Users\WINDOW~1\AppData\Local\Temp\luarocks_toml-edit-0.1.5-1-5316\toml-edit.lua)
Finished release [optimized] target(s) in 49.54s
toml-edit 0.1.5-1 is now installed in c:\users\windows 10\downloads\executable\luarocks\ (license: MIT)
rocks.nvim 2.13.1-1 depends on toml (not installed)
Installing https://luarocks.org/toml-0.4.0-0.src.rock
toml 0.4.0-0 depends on lua >= 5.1 (5.1-1 provided by VM)
Warning: unmatched variable LUA_LIBRARIES
Warning: unmatched variable LINK_FLAGS
-- The C compiler identification is GNU 13.2.0
-- The CXX compiler identification is GNU 13.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Users/Windows 10/scoop/apps/mingw/current/bin/gcc.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Users/Windows 10/scoop/apps/mingw/current/bin/c++.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Cloning toml++
-- Cloning sol2
-- Cloning magic_enum
-- Found Lua: C:/Users/Windows 10/Downloads/executable/luarocks/lib/liblua51.a (found version "5.1.5")
-- Configuring done (60.9s)
-- Generating done (0.1s)
-- Build files have been written to: C:/Users/Windows 10/AppData/Local/Temp/luarocks_toml-0.4.0-0-9015/toml.lua/build.luarocks
[ 14%] Building CXX object CMakeFiles/toml.lua.dir/src/toml.cpp.obj
[ 28%] Building CXX object CMakeFiles/toml.lua.dir/src/decoding/decoding.cpp.obj
[ 42%] Building CXX object CMakeFiles/toml.lua.dir/src/encoding/encoding.cpp.obj
[ 57%] Building CXX object CMakeFiles/toml.lua.dir/src/DataTypes/DateAndTime/dateAndTime.cpp.obj
[ 71%] Building CXX object CMakeFiles/toml.lua.dir/src/DataTypes/TOMLInt/TOMLInt.cpp.obj
[ 85%] Building CXX object CMakeFiles/toml.lua.dir/src/utilities/utilities.cpp.obj
[100%] Linking CXX shared module toml.dll
[100%] Built target toml.lua
[100%] Built target toml.lua
Install the project...
-- Install configuration: "Release"
-- Installing: C:/Users/Windows 10/Downloads/executable/luarocks/lib/luarocks/rocks-5.1/toml/0.4.0-0/lib/toml.dll
toml 0.4.0-0 is now installed in c:\users\windows 10\downloads\executable\luarocks\ (license: MIT)
rocks.nvim 2.13.1-1 depends on fidget.nvim >= 1.1.0 (not installed)
Installing https://luarocks.org/fidget.nvim-1.1.0-1.src.rock
fidget.nvim 1.1.0-1 depends on lua >= 5.1 (5.1-1 provided by VM)
fidget.nvim 1.1.0-1 is now installed in c:\users\windows 10\downloads\executable\luarocks\ (license: MIT)
rocks.nvim 2.13.1-1 depends on fzy (not installed)
Installing https://luarocks.org/fzy-1.0-1.src.rock
fzy 1.0-1 depends on lua >= 5.1 (5.1-1 provided by VM)
C:\Users\Windows 10\scoop\apps\mingw\current\bin\gcc.exe -O2 -c -o src/fzy_native.o -IC:\Users\Windows 10\Downloads\executable\luarocks\include src/fzy_native.c -DLUA_COMPAT_5_1
'C:\Users\Windows' is not recognized as an internal or external command,
operable program or batch file.
Error: Failed installing dependency: https://luarocks.org/fzy-1.0-1.src.rock - Build error: Failed compiling object src/fzy_native.o
from rocks.nvim.
We recommend to use nvim -u NORC, as plugins like oil.nvim can interfere with the installer.
Okay π I will try to find a way to make pwsh
my default shell
from rocks.nvim.
Would you be able to test if using vim.o.sh works for you?
I'll try to test outside neovim firstIt seems hererocks act differently with and without admin priviliges. Probably this is an issue on
scoop
, since I also installed python fromscoop
.Without admin privileges
With admin privileges
This is the toml-edit dependeny issue I mentioned earlier, for which we have a fix in the pipeline.
I'll let you know when it's ready.
@vhyrro could you trigger the luarocks upload workflow for toml-edit manually? It looks like the last run failed with an API error.
from rocks.nvim.
@tembokk the toml-edit issue should be fixed now.
from rocks.nvim.
@tembokk the toml-edit issue should be fixed now.
Still produce the same error. I think the problem is not toml-edit because it's been successfully installed
Administrator in ~ took 4m1s
β― luarocks list
Rocks installed for Lua 5.1
---------------------------
fidget.nvim
1.1.0-1 (installed) - c:/users/windows 10/downloads/executable/luarocks/lib/luarocks/rocks-5.1
luarocks-build-rust-mlua
0.2.0-1 (installed) - c:/users/windows 10/downloads/executable/luarocks/lib/luarocks/rocks-5.1
toml
0.4.0-0 (installed) - c:/users/windows 10/downloads/executable/luarocks/lib/luarocks/rocks-5.1
toml-edit
0.1.5-1 (installed) - c:/users/windows 10/downloads/executable/luarocks/lib/luarocks/rocks-5.1
I think the problem is fzy
With admin privileges
fzy 1.0-1 depends on lua >= 5.1 (5.1-1 provided by VM) C:\Users\Windows 10\scoop\apps\mingw\current\bin\gcc.exe -O2 -c -o src/fzy_native.o -IC:\Users\Windows 10\Downloads\executable\luarocks\include src/fzy_native.c -DLUA_COMPAT_5_1 'C:\Users\Windows' is not recognized as an internal or external command, operable program or batch file. Error: Failed installing dependency: https://luarocks.org/fzy-1.0-1.src.rock - Build error: Failed compiling object src/fzy_native.o
from rocks.nvim.
I think the problem is fzy
With admin privileges
fzy 1.0-1 depends on lua >= 5.1 (5.1-1 provided by VM) C:\Users\Windows 10\scoop\apps\mingw\current\bin\gcc.exe -O2 -c -o src/fzy_native.o -IC:\Users\Windows 10\Downloads\executable\luarocks\include src/fzy_native.c -DLUA_COMPAT_5_1 'C:\Users\Windows' is not recognized as an internal or external command, operable program or batch file. Error: Failed installing dependency: https://luarocks.org/fzy-1.0-1.src.rock - Build error: Failed compiling object src/fzy_native.o
That's strange. I think fzy needs MVSC to be installed, so that you can build it on Windows.
But we also fail to build it for our rocks-binaries server, because Windows is missing a header file. I've opened an issue for that: swarn/fzy-lua#11
from rocks.nvim.
@tembokk the fzy issue should be fixed now π
from rocks.nvim.
Still the same issue.
fzy 1.0.3-1 depends on lua >= 5.1 (5.1-1 provided by VM)
C:\Users\Windows 10\scoop\apps\mingw\current\bin\gcc.exe -O2 -c -o src/fzy_native.o -IC:\Users\Windows 10\Downloads\executable\luarocks\include src/fzy_native.c -DLUA_COMPAT_5_1
'C:\Users\Windows' is not recognized as an internal or external command,
operable program or batch file.
Error: Failed installing dependency: https://luarocks.org/fzy-1.0.3-1.src.rock - Build error: Failed compiling object src/fzy_native.o
It's weird, it seems, on my PC, fzy won't handle space in path correctly π€
'C:\Users\Windows' is not recognized as an internal or external command,
operable program or batch file.
Should be C:\Users\Windows 10
right, instead of C:\Users\Windows
from rocks.nvim.
That error is caused by luarocks trying to compile fzy, which is strange, because the rocks.nvim installer should tell luarocks to fetch it from a binary server.
Are you able to run
luarocks --server='https://nvim-neorocks.github.io/rocks-binaries/' --local install fzy
?
It could be that luarocks doesn't fetch the win32-x86_64.rock
if it detects your platform as mingw32
, in which case it will try to compile it from source.
I believe if you run luarocks config
, it should output your config, with an arch
value that tells you what platform it thinks you're on.
from rocks.nvim.
This is the result of my luarocks config
β― luarocks config
accept_unknown_fields = false
arch = "win32-x86_64"
cache = {
luajit_version = "",
luajit_version_checked = true
}
cache_fail_timeout = 86400
cache_timeout = 60
check_certificates = false
cmake_generator = "MinGW Makefiles"
config_files = {
nearest = "C:/Users/Windows 10/Downloads/executable/luarocks/luarocks/config-5.1.lua",
system = {
file = "C:/Users/Windows 10/Downloads/executable/luarocks/luarocks/config-5.1.lua",
found = true
},
user = {
file = "C:/Users/Windows 10/AppData/Roaming/luarocks/config-5.1.lua",
found = false
}
}
connection_timeout = 30
deploy_bin_dir = "c:\\users\\windows 10\\downloads\\executable\\luarocks\\/bin"
deploy_lib_dir = "c:\\users\\windows 10\\downloads\\executable\\luarocks\\/lib/lua/5.1"
deploy_lua_dir = "c:\\users\\windows 10\\downloads\\executable\\luarocks\\/share/lua/5.1"
deps_mode = "one"
disabled_servers = {}
export_path_separator = ";"
external_deps_dirs = {
"c:/external/",
"c:/mingw",
"c:/windows/system32"
}
external_deps_patterns = {
bin = {
"?.exe",
"?.bat"
},
include = {
"?.h"
},
lib = {
"lib?.dll.a",
"?.dll.a",
"lib?.a",
"cyg?.dll",
"lib?.dll",
"?.dll",
"?.lib"
}
}
external_deps_subdirs = {
bin = "bin",
include = "include",
lib = {
"",
"lib",
"bin"
}
}
external_lib_extension = "dll"
fs_use_modules = false
home = "C:\\Users\\Windows 10\\AppData\\Roaming"
home_tree = "C:\\Users\\Windows 10\\AppData\\Roaming/luarocks"
homeconfdir = "C:\\Users\\Windows 10\\AppData\\Roaming/luarocks"
hooks_enabled = true
lib_extension = "dll"
lib_modules_path = "/lib/lua/5.1"
link_lua_explicitly = true
local_by_default = false
local_cache = "C:\\Users\\Windows 10\\AppData\\Local/LuaRocks/Cache"
lua_extension = "lua"
lua_interpreter = "lua.exe"
lua_modules_path = "/share/lua/5.1"
lua_version = "5.1"
major_version = "3.8"
makefile = "Makefile"
no_manifest = false
obj_extension = "o"
processor = "x86_64"
program_series = "3.8"
program_version = "3.8.0"
rocks_dir = "c:\\users\\windows 10\\downloads\\executable\\luarocks\\/lib/luarocks/rocks-5.1"
rocks_servers = {
{
"https://luarocks.org",
"https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/",
"https://luafr.org/luarocks/",
"http://luarocks.logiceditor.com/rocks"
}
}
rocks_subdir = "/lib/luarocks/rocks-5.1"
rocks_trees = {
{
name = "user",
root = "C:\\Users\\Windows 10\\AppData\\Roaming/luarocks"
},
{
name = "system",
root = "c:\\users\\windows 10\\downloads\\executable\\luarocks\\"
}
}
runtime_external_deps_patterns = {
bin = {
"?.exe",
"?.bat"
},
include = {
"?.h"
},
lib = {
"cyg?.dll",
"?.dll",
"lib?.dll"
}
}
runtime_external_deps_subdirs = {
bin = "bin",
include = "include",
lib = {
"",
"lib",
"bin"
}
}
static_lib_extension = "a"
sysconfdir = "C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\luarocks"
target_cpu = "x86_64"
upload = {
api_version = "1",
server = "https://luarocks.org",
tool_version = "1.0.0"
}
user_agent = "LuaRocks/3.8.0 win32-x86_64"
variables = {
AR = "C:\\Users\\Windows 10\\scoop\\apps\\mingw\\current\\bin\\ar.exe",
BUNZIP2 = "bunzip2",
CC = "C:\\Users\\Windows 10\\scoop\\apps\\mingw\\current\\bin\\gcc.exe",
CFLAGS = "-O2",
CHMOD = "chmod",
CMAKE = "cmake",
CP = "\"C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\luarocks/tools/cp.exe\"",
CURL = "curl",
CURLNOCERTFLAG = "-k",
CVS = "cvs",
FIND = "\"C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\luarocks/tools/find.exe\"",
GIT = "git",
GPG = "gpg",
GUNZIP = "gunzip",
HG = "hg",
ICACLS = "icacls",
LD = "C:\\Users\\Windows 10\\scoop\\apps\\mingw\\current\\bin\\gcc.exe",
LIBFLAG = "-shared",
LIB_EXTENSION = "dll",
LS = "\"C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\luarocks/tools/ls.exe\"",
LUA = "C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\bin/lua.exe",
LUALIB = "lua51.dll",
LUA_BINDIR = "C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\bin",
LUA_DIR = "C:\\Users\\Windows 10\\Downloads\\executable\\luarocks",
LUA_INCDIR = "C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\include",
LUA_LIBDIR = "C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\bin",
MAKE = "C:\\Users\\Windows 10\\scoop\\apps\\mingw\\current\\bin\\make.exe",
MD5 = "md5",
MD5SUM = "\"C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\luarocks/tools/md5sum.exe\"",
MKDIR = "\"C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\luarocks/tools/mkdir.exe\"",
MKTEMP = "mktemp",
MSVCRT = "MSVCR80",
MT = "mt",
OBJ_EXTENSION = "o",
OPENSSL = "openssl",
PWD = "\"C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\luarocks/tools/pwd.exe\"",
RANLIB = "C:\\Users\\Windows 10\\scoop\\apps\\mingw\\current\\bin\\ranlib.exe",
RC = "C:\\Users\\Windows 10\\scoop\\apps\\mingw\\current\\bin\\windres.exe",
RM = "rm",
RMDIR = "\"C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\luarocks/tools/rmdir.exe\"",
ROCKS_TREE = "c:\\users\\windows 10\\downloads\\executable\\luarocks\\/lib/luarocks/rocks-5.1",
RSYNC = "rsync",
RSYNCFLAGS = "--exclude=.git -Oavz",
SCP = "scp",
SCRIPTS_DIR = "c:\\users\\windows 10\\downloads\\executable\\luarocks\\/bin",
SEVENZ = "\"C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\luarocks/tools/7z.exe\"",
SSCM = "sscm",
SVN = "svn",
TAR = "tar",
TOUCH = "touch",
UNZIP = "unzip -n",
WGET = "\"C:\\Users\\Windows 10\\Downloads\\executable\\luarocks\\luarocks/tools/wget.exe\"",
WGETNOCERTFLAG = "--no-check-certificate",
ZIP = "zip"
}
verbose = false
web_browser = "start"
wrapper_suffix = ".bat"
Also I find out that the cause of Lua 5.1 interpreter not found
is probably not caused by admin privileges, but wezterm. Windows is so weird lol
Wezterm with admin privileges:
PowerShell 7 desktop app without admin privileges:
from rocks.nvim.
Hmm, based on your config it appears to be the correct architecture.
Are you able to run luarocks --server='https://nvim-neorocks.github.io/rocks-binaries/' --local install fzy
?
from rocks.nvim.
But when I try to do luarocks install rocks.nvim
, it still says that fzy is not installed
from rocks.nvim.
But when I try to do luarocks install rocks.nvim, it still says that fzy is not installed
That's because when you run luarocks as an admin, and when you run luarocks as non-admin (with the --local
flag), it installs packages to different locations.
If you can install fzy
with the --server
configuration, you should also be able to run
luarocks --server='https://nvim-neorocks.github.io/rocks-binaries/' --local install rocks.nvim
... but this will install rocks.nvim and its dependencies to a different location than rocks.nvim expects (it uses the --tree
flag when invoking luarocks to specify the install directory).
I've pushed the vim.o.sh
fix to the installer. Can you try
nvim -u NORC -c "source https://raw.githubusercontent.com/nvim-neorocks/rocks.nvim/master/installer.lua"
again?
from rocks.nvim.
That's because when you run luarocks as an admin, and when you run luarocks as non-admin (with the --local flag), it installs packages to different locations.
Ah got it. Thank you for the info
I've pushed the vim.o.sh fix to the installer. Can you try
nvim -u NORC -c "source https://raw.githubusercontent.com/nvim-neorocks/rocks.nvim/master/installer.lua"
again?
I will try it again
from rocks.nvim.
I will try and test it out
from rocks.nvim.
I got this error:
Error detected while processing C:\Users\Windows 10\AppData\Local\nvim\init.lua:
E5112: Error while creating lua chunk: C:\Users\Windows 10\AppData\Local\nvim\init.lua:23: invalid escape sequence near '"C:'
So I manually edit rocks_config.rocks_path
to this: C:\\Users\\Windows 10\\AppData\\Local\\nvim-data\\rocks
. But then I got this error
Error detected while processing C:\Users\Windows 10\AppData\Local\nvim-data\rocks\lib\luarocks\rocks-5.1\rocks.nvim\2.14.0-1\plugin\rocks.lua:
E5113: Error while calling lua chunk: ...\nvim-data\rocks/share/lua/5.1/rocks\config\internal.lua:51: module 'toml' not found:
no field package.preload['toml']
no file '.\toml.lua'
no file 'C:\Users\Windows 10\scoop\apps\neovim-nightly\current\bin\lua\toml.lua'
no file 'C:\Users\Windows 10\scoop\apps\neovim-nightly\current\bin\lua\toml\init.lua'
no file './toml.lua'
no file './toml/init.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim\fnl\/toml.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim\fnl\/toml/init.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim\pack\my\opt\tangerine.nvim\fnl\toml.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim\pack\my\opt\tangerine.nvim\fnl\toml/init.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim\fnl\toml.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim\fnl\toml/init.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim\pack\my\opt\oxocarbon.nvim\fnl\toml.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim\pack\my\opt\oxocarbon.nvim\fnl\toml/init.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim\lua\/toml.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim\lua\/toml/init.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim-data\rocks/share/lua/5.1/toml.lua'
no file 'C:\Users\Windows 10\AppData\Local\nvim-data\rocks/share/lua/5.1/toml/init.lua'
no file '.\toml.dll'
no file 'C:\Users\Windows 10\scoop\apps\neovim-nightly\current\bin\toml.dll'
no file 'C:\Users\Windows 10\scoop\apps\neovim-nightly\current\bin\loadall.dll'
no file 'C:\Users\Windows 10\AppData\Local\nvim-data\rocks/lib/lua/5.1/toml.so'
no file 'C:\Users\Windows 10\AppData\Local\nvim-data\rocks/lib64/lua/5.1/toml.so'
stack traceback:
[C]: in function 'require'
...\nvim-data\rocks/share/lua/5.1/rocks\config\internal.lua:51: in function 'get_rocks_toml'
...\nvim-data\rocks/share/lua/5.1/rocks\config\internal.lua:71: in function 'get_user_rocks'
...ta\Local\nvim-data\rocks/share/lua/5.1/rocks\runtime.lua:168: in function 'source_start_plugins'
...\luarocks\rocks-5.1\rocks.nvim\2.14.0-1\plugin\rocks.lua:28: in main chunk
from rocks.nvim.
Ah, I think I know what's happening.
The installer tells you to set the paths for Linux binaries.
I think if you change ?.so
to ?.dll
in the luarocks_cpath
patterns, it should work.
from rocks.nvim.
Somehow neovim crashed
nvim-rocks-forceclose.mp4
from rocks.nvim.
Oof, that's going to be hard for me to troubleshoot without a Windows machine.
I suppose you could go into the rocks.nvim installation and try to comment out parts of the plugin/rocks.lua file, so we can get an idea when it is crashing.
Thanks for all the patience by the way π
from rocks.nvim.
I've added a GitHub action for Windows, and I think I can reproduce the crash.
It appears to crash before the log file is created.
from rocks.nvim.
π€ it looks like it could be crashing even without rocks.nvim (at least my test command isn't printing to stdout [note: I have to redirect stderr because neovim prints to stderr]).
@tembokk are you able to run neovim nightly (without rocks.nvim) on Windows?
from rocks.nvim.
Update: I fixed the init.lua I was using to test, and can confirm it segfaults on Windows.
Now for the difficult task of finding out why...
from rocks.nvim.
I've tracked down the segfault to a require("toml")
call.
It doesn't happen with another library (require("toml_edit")
), so I think this is a toml.lua bug.
from rocks.nvim.
Thank you! So I just need to wait for that PR to be merged right?
from rocks.nvim.
Thank you! So I just need to wait for that PR to be merged right?
Yes, hopefully that should be the last hurdle.
I've set up a GitHub action with a basic integration test for Windows, so I'll see after it's merged if there's anything else.
from rocks.nvim.
@tembokk I've removed the toml
dependency from the latest release.
My Windows test on GitHub Actions isn't working yet, but you could give it another try.
from rocks.nvim.
My basic windows integration test just succeeded π
from rocks.nvim.
I've created a separate issue for the installer script: #255
from rocks.nvim.
Related Issues (20)
- :Rocks sync error logging is unhelpful HOT 4
- Rocks update fails HOT 3
- :Rocks log missing error HOT 3
- [Feature] Allow overriding or extending the luarocks config
- Plugins not starting HOT 3
- AUR install script
- [Enhancement] pin luarocks version / manage luarocks installation
- vim.tbl_islist is deprecated HOT 6
- [Module]: `rocks-format.nvim` HOT 1
- doesn't work on systems without libgcc_s.so.1 HOT 5
- [BUG] Breaking change in luarocks cmdline interface HOT 2
- [Bug] "Failed to remove symlink" error log
- self install Rocks script failing HOT 7
- How to list all loaded plugins?
- Feline dependencie failure to install HOT 1
- Investigate `Rocks update` potentially not updating `scm`/`dev` plugins HOT 1
- Canβt install/build tree-sitter parsers HOT 1
- duplicated tree-sitter parsers in runtimepath HOT 13
- [External module] Support installing from local rockspec
- Install script: wrap `vim.system` calls to output nicer error messages if binary can't be found HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rocks.nvim.