mason.nvim
mason.nvim copied to clipboard
haskell-language-server installation fails hls
I've searched open issues for similar requests
- [X] Yes
I've recently downloaded the latest plugin version of mason.nvim
- [X] Yes
Problem description
When hitting i to install haskell-language-server, there is an immediate error of:
▶ # [4/4] spawn: bash failed with exit code 127 and signal 0.
clangd and the bash language server were able to install just fine
Expected behavior
Installation should succeed.
Affected packages
haskell-language-server
Mason output
` ▶ # [4/4] spawn: bash failed with exit code 127 and signal 0. `
Installation log
[DEBUG Wed 15 Jan 2025 02:03:12 AM PST] ...ocal/share/nvim/lazy/mason.nvim/lua/mason-core/fetch.lua:37: Fetching URL "https://api.mason-registry.dev/api/github/mason-org/mason-registry/releases/latest"
[DEBUG Wed 15 Jan 2025 02:03:12 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:116: Spawning cmd="curl", spawn_opts={
args = { "-H", "Accept: application/vnd.mason-registry.v1+json; q=1.0, application/json; q=0.8", "-H", "User-Agent: mason.nvim v1.10.0 (+https://github.com/williamboman/mason.nvim)", "-fsSL", "-X", "GET", "--connect-timeout", 30, "https://api.mason-registry.dev/api/github/mason-org/mason-registry/releases/latest" }
}
[DEBUG Wed 15 Jan 2025 02:03:12 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:162: Spawned with pid 107984
[DEBUG Wed 15 Jan 2025 02:03:12 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:148: Job pid=107984 exited with exit_code=0, signal=0
[DEBUG Wed 15 Jan 2025 02:03:12 AM PST] ...ocal/share/nvim/lazy/mason.nvim/lua/mason-core/fetch.lua:37: Fetching URL "https://github.com/mason-org/mason-registry/releases/download/2025-01-15-still-gun/registry.json.zip"
[DEBUG Wed 15 Jan 2025 02:03:12 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:116: Spawning cmd="curl", spawn_opts={
args = { "-H", "User-Agent: mason.nvim v1.10.0 (+https://github.com/williamboman/mason.nvim)", "-fsSL", "-X", "GET", "-o", "/home/REDACTED/.local/share/nvim/mason/registries/github/mason-org/mason-registry/registry.json.zip", "--connect-timeout", 30, "https://github.com/mason-org/mason-registry/releases/download/2025-01-15-still-gun/registry.json.zip" }
}
[DEBUG Wed 15 Jan 2025 02:03:12 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:162: Spawned with pid 107986
[DEBUG Wed 15 Jan 2025 02:03:13 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:148: Job pid=107986 exited with exit_code=0, signal=0
[DEBUG Wed 15 Jan 2025 02:03:13 AM PST] .../.local/share/nvim/lazy/mason.nvim/lua/mason-core/fs.lua:59: fs: unlink /home/REDACTED/.local/share/nvim/mason/registries/github/mason-org/mason-registry/registry.json.zip
[DEBUG Wed 15 Jan 2025 02:03:13 AM PST] ...ocal/share/nvim/lazy/mason.nvim/lua/mason-core/fetch.lua:37: Fetching URL "https://github.com/mason-org/mason-registry/releases/download/2025-01-15-still-gun/checksums.txt"
[DEBUG Wed 15 Jan 2025 02:03:13 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:116: Spawning cmd="curl", spawn_opts={
args = { "-H", "User-Agent: mason.nvim v1.10.0 (+https://github.com/williamboman/mason.nvim)", "-fsSL", "-X", "GET", "--connect-timeout", 30, "https://github.com/mason-org/mason-registry/releases/download/2025-01-15-still-gun/checksums.txt" }
}
[DEBUG Wed 15 Jan 2025 02:03:13 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:162: Spawned with pid 107989
[DEBUG Wed 15 Jan 2025 02:03:14 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:148: Job pid=107989 exited with exit_code=0, signal=0
[INFO Wed 15 Jan 2025 02:03:28 AM PST] ...e/nvim/lazy/mason.nvim/lua/mason-core/installer/init.lua:184: Executing installer for Package(name=haskell-language-server) {}
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] ...e/nvim/lazy/mason.nvim/lua/mason-core/installer/init.lua:58: Attempting to lock package Package(name=haskell-language-server)
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] ...e/nvim/lazy/mason.nvim/lua/mason-core/installer/init.lua:70: Wrote lockfile Package(name=haskell-language-server)
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] .../.local/share/nvim/lazy/mason.nvim/lua/mason-core/fs.lua:71: fs: mkdirp /home/REDACTED/.local/share/nvim/mason/staging/haskell-language-server
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] ...zy/mason.nvim/lua/mason-core/installer/registry/init.lua:149: Compiling installer. haskell-language-server {}
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] .../mason.nvim/lua/mason-core/installer/managers/common.lua:100: build: run {
bin = {
server_9_10_1 = "bin/haskell-language-server-9.10.1",
server_9_2_8 = "bin/haskell-language-server-9.2.8",
server_9_4_8 = "bin/haskell-language-server-9.4.8",
server_9_6_6 = "bin/haskell-language-server-9.6.6",
server_9_8_2 = "bin/haskell-language-server-9.8.2",
wrapper = "bin/haskell-language-server-wrapper"
},
env = {
VERSION = "2.9.0.1"
},
run = 'ghcup install hls "$VERSION" -i "$PWD"',
staged = false,
target = "unix"
}
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] ...vim/lazy/mason.nvim/lua/mason-core/installer/context.lua:229: Promoting cwd "/home/REDACTED/.local/share/nvim/mason/staging/haskell-language-server" to "/home/REDACTED/.local/share/nvim/mason/packages/haskell-language-server"
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] .../.local/share/nvim/lazy/mason.nvim/lua/mason-core/fs.lua:65: fs: mkdir /home/REDACTED/.local/share/nvim/mason/packages/haskell-language-server
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] .../.local/share/nvim/lazy/mason.nvim/lua/mason-core/fs.lua:84: fs: rename /home/REDACTED/.local/share/nvim/mason/staging/haskell-language-server /home/REDACTED/.local/share/nvim/mason/packages/haskell-language-server
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:116: Spawning cmd="bash", spawn_opts={
args = {},
cwd = "/home/REDACTED/.local/share/nvim/mason/packages/haskell-language-server",
env = { "PATH=/home/REDACTED/.local/share/nvim/mason/bin:/home/REDACTED/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl", "MASON=<redacted>", "VIM=<redacted>", "MOTD_SHOWN=<redacted>", "USER=<redacted>", "GIT_PS1_SHOWDIRTYSTATE=<redacted>", "SESSION_MANAGER=<redacted>", "XDG_SEAT_PATH=<redacted>", "OLDPWD=<redacted>", "EDITOR=<redacted>", "COLORTERM=<redacted>", "XDG_RUNTIME_DIR=<redacted>", "XDG_VTNR=<redacted>", "FUNCNEST=<redacted>", "QV4_GC_TIMELIMIT=<redacted>", "XDG_CONFIG_DIRS=<redacted>", "GIT_PS1_SHOWUNTRACKEDFILES=<redacted>", "QT_WAYLAND_RECONNECT=<redacted>", "XDG_MENU_PREFIX=<redacted>", "ICEAUTHORITY=<redacted>", "XDG_SESSION_CLASS=<redacted>", "RANGER_LOAD_DEFAULT_RC=<redacted>", "GHOSTTY_BIN_DIR=<redacted>", "XAUTHORITY=<redacted>", "GTK_RC_FILES=<redacted>", "TERM_PROGRAM_VERSION=<redacted>", "GIT_PS1_SHOWUPSTREAM=<redacted>", "QT_AUTO_SCREEN_SCALE_FACTOR=<redacted>", "GTK2_RC_FILES=<redacted>", "PAM_KWALLET5_LOGIN=<redacted>", "XDG_CURRENT_DESKTOP=<redacted>", "PWD=<redacted>", "MAIL=<redacted>", "NVIM_LOG_FILE=<redacted>", "XDG_SESSION_TYPE=<redacted>", "DEBUGINFOD_URLS=<redacted>", "GHOSTTY_RESOURCES_DIR=<redacted>", "KDE_SESSION_UID=<redacted>", "KDE_APPLICATIONS_AS_SCOPE=<redacted>", "GIT_PS1_STATESEPARATOR=<redacted>", "LS_COLORS=<redacted>", "SHLVL=<redacted>", "GIT_PS1_SHOWSTASHSTATE=<redacted>", "XDG_SESSION_ID=<redacted>", "TERM=<redacted>", "DISPLAY=<redacted>", "VIMRUNTIME=<redacted>", "SHELL=<redacted>", "TERMINFO=<redacted>", "DESKTOP_SESSION=<redacted>", "MYVIMRC=<redacted>", "KDE_FULL_SESSION=<redacted>", "TERM_PROGRAM=<redacted>", "_=<redacted>", "GHOSTTY_SHELL_INTEGRATION_NO_SUDO=<redacted>", "KDE_SESSION_VERSION=<redacted>", "HOME=<redacted>", "LANG=<redacted>", "GIT_PS1_SHOWCOLORHINTS=<redacted>", "LC_COLLATE=<redacted>", "GROFF_NO_SGR=<redacted>", "DBUS_SESSION_BUS_ADDRESS=<redacted>", "LOGNAME=<redacted>", "GTK_MODULES=<redacted>", "XDG_SEAT=<redacted>", "XDG_SESSION_PATH=<redacted>", "VERSION=<redacted>" }
}
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:162: Spawned with pid 107993
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] ...al/share/nvim/lazy/mason.nvim/lua/mason-core/process.lua:148: Job pid=107993 exited with exit_code=127, signal=0
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] .../.local/share/nvim/lazy/mason.nvim/lua/mason-core/fs.lua:59: fs: unlink /home/REDACTED/.local/share/nvim/mason/staging/haskell-language-server.lock
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] .../.local/share/nvim/lazy/mason.nvim/lua/mason-core/fs.lua:47: fs: rmrf /home/REDACTED/.local/share/nvim/mason/packages/haskell-language-server
[DEBUG Wed 15 Jan 2025 02:03:28 AM PST] ...e/nvim/lazy/mason.nvim/lua/mason-core/installer/init.lua:39: Building receipt for Package(name=haskell-language-server)
[ERROR Wed 15 Jan 2025 02:03:28 AM PST] ...e/nvim/lazy/mason.nvim/lua/mason-core/installer/init.lua:249: Installation failed for Package(name=haskell-language-server) error=spawn: bash failed with exit code 127 and signal 0.
Neovim version (>= 0.7)
NVIM v0.11.0-dev-a37784a Build type: RelWithDebInfo LuaJIT 2.1.1734355927
Operating system/version
Linux ArtixMain 6.6.69-1-lts x86_64 GNU/Linux
Healthcheck
==============================================================================
mason: require("mason.health").check()
mason.nvim ~
- OK mason.nvim version v1.10.0
- OK PATH: prepend
- OK Providers:
mason.providers.registry-api
mason.providers.client
- OK neovim version >= 0.7.0
mason.nvim [Registries] ~
- OK Registry `github.com/mason-org/mason-registry version: 2025-01-15-still-gun` is installed.
mason.nvim [Core utils] ~
- OK unzip: `UnZip 6.00 of 20 April 2009, by Info-ZIP. Maintained by C. Spieler. Send`
- OK wget: `GNU Wget 1.25.0 built on linux-gnu.`
- OK curl: `curl 8.11.1 (x86_64-pc-linux-gnu) libcurl/8.11.1 OpenSSL/3.4.0 zlib/1.3.1 brotli/1.1.0 zstd/1.5.6 libidn2/2.3.7 libpsl/0.21.5 libssh2/1.11.1 nghttp2/1.64.0 nghttp3/1.7.0`
- OK gzip: `gzip 1.13`
- OK tar: `tar (GNU tar) 1.35`
- OK bash: `GNU bash, version 5.2.37(1)-release (x86_64-pc-linux-gnu)`
- OK sh: `Ok`
mason.nvim [Languages] ~
- WARNING cargo: not available
- ADVICE:
- spawn: cargo failed with exit code - and signal -. cargo is not executable
- WARNING Composer: not available
- ADVICE:
- spawn: composer failed with exit code - and signal -. composer is not executable
- WARNING PHP: not available
- ADVICE:
- spawn: php failed with exit code - and signal -. php is not executable
- WARNING luarocks: not available
- ADVICE:
- spawn: luarocks failed with exit code - and signal -. luarocks is not executable
- OK node: `v23.4.0`
- WARNING javac: not available
- ADVICE:
- spawn: javac failed with exit code - and signal -. javac is not executable
- WARNING java: not available
- ADVICE:
- spawn: java failed with exit code - and signal -. java is not executable
- WARNING julia: not available
- ADVICE:
- spawn: julia failed with exit code - and signal -. julia is not executable
- OK python: `Python 3.13.1`
- OK Ruby: `ruby 3.3.5 (2024-09-03 revision ef084cc8f4) [x86_64-linux]`
- WARNING pip: not available
- ADVICE:
- spawn: python3 failed with exit code 1 and signal 0. /usr/bin/python3: No module named pip
- OK Go: `go version go1.23.4 linux/amd64`
- OK python venv: `Ok`
- OK npm: `11.0.0`
- OK RubyGem: `3.5.16`
mason.nvim [GitHub] ~
- OK GitHub API rate limit. Used: 0. Remaining: 60. Limit: 60. Reset: Wed 15 Jan 2025 03:11:51 AM PST.
Install and authenticate via gh-cli to increase rate limit.
Screenshots
No response
I have the exact same issue as well. It's the only language server giving me this issue, I'm on Arch Linux.
Not sure if this is the same issue you are facing, but when I hit a snag with this package in the last couple of weeks I looked at some logs and discovered Mason wasn't finding the appropriate download.
Then I poked around in my Haskell toolchain and discovered various portions were a bit 'behind'.
I updated ghcup, then ghc, cabal, hls and stack to the latest versions (not sure all that was required, but figured I'd bring them in line with one another), then re-ran :MasonInstall haskell-language-server and it succeeded.
Hopefully this helps!