I am unsure whether this is a config error, or if I should make an issue on GitHub.
When starting HSL from neovim I get the following error:
[ERROR][2026-01-31 15:22:33] ...p/_transport.lua:36 "rpc" "haskell-language-server-wrapper" "stderr" "2026-0"
[ERROR][2026-01-31 15:22:33] ...p/_transport.lua:36 "rpc" "haskell-language-server-wrapper" "stderr" "1-31T14:22:33.049948Z | Debug | /ni"
[ERROR][2026-01-31 15:22:33] ...p/_transport.lua:36 "rpc" "haskell-language-server-wrapper" "stderr" "x/store/n1yf"
[ERROR][2026-01-31 15:22:33] ...p/_transport.lua:36 "rpc" "haskell-language-server-wrapper" "stderr" "gg69q"
[ERROR][2026-01-31 15:22:33] ...p/_transport.lua:36 "rpc" "haskell-language-server-wrapper" "stderr" "0idh36xrfyx5vzx1g1y4mza-g"
[ERROR][2026-01-31 15:22:33] ...p/_transport.lua:36 "rpc" "haskell-language-server-wrapper" "stderr" "hc-9.12.2/bi"
[ERROR][2026-01-31 15:22:33] ...p/_transport.lua:36 "rpc" "haskell-language-server-wrapper" "stderr" "n/ghc --print-libdir\n"
[ERROR][2026-01-31 15:22:33] ...p/_transport.lua:36 "rpc" "haskell-language-server-wrapper" "stderr" "\27[0;31mGHC ABIs don't match!\27[0m\n"
[ERROR][2026-01-31 15:22:33] ...p/_transport.lua:36 "rpc" "haskell-language-server-wrapper" "stderr" "\27[0;31m\27[0m\n"
[ERROR][2026-01-31 15:22:33] ...p/_transport.lua:36 "rpc" "haskell-language-server-wrapper" "stderr" "\27[0;31mExpected: ghc-9.12.2:cc933b64fc1fbe71c7840c2ab9fe9acd template-haskell-2.23.0.0:1eb15012c20fadded745174ff3c5e912\27[0m\n"
[ERROR][2026-01-31 15:22:33] ...p/_transport.lua:36 "rpc" "haskell-language-server-wrapper" "stderr" "\27[0;31mGot: ghc-9.12.2:bbed4f441ef45bc5960eee0afb8f19d2 template-haskell-2.23.0.0:8c7cc2c26da72cd2275b1b23b2c960ae\27[0m\n"
[ERROR][2026-01-31 15:22:33] ...m/lsp/client.lua:1051 "LSP[hls]" "on_error" { code = "INVALID_SERVER_JSON", err = "Expected value but found unexpected end of string at character 204" }
I have neovim configured with nixvim, with hsl configured like so:
{
plugins.lspconfig.enable = true;
lsp.servers.hls = {
enable = true;
package = pkgs.haskell-language-server.override { supportedGhcVersions = [ "912" "910" ]; };
};
}
I am using nixos unstable with flakes.
It worked just fine before I updated my flakes today. I have not updated my flakes in a long time though, so this error is not necessarily recent.
when running :checkhealth vim.lsp is OK and hls has the following config:
- hls:
- capabilities: {
textDocument = {
completion = {
completionItem = {
commitCharactersSupport = true,
deprecatedSupport = true,
insertReplaceSupport = true,
insertTextModeSupport = {
valueSet = { 1, 2 }
},
labelDetailsSupport = true,
preselectSupport = true,
resolveSupport = {
properties = { "documentation", "additionalTextEdits", "insertTextFormat", "insertTextMode", "command" }
},
snippetSupport = true,
tagSupport = {
valueSet = { 1 }
}
},
completionList = {
itemDefaults = { "commitCharacters", "editRange", "insertTextFormat", "insertTextMode", "data" }
},
contextSupport = true,
dynamicRegistration = false,
insertTextMode = 1
}
}
}
- cmd: { "haskell-language-server-wrapper", "--lsp" }
- filetypes: haskell, lhaskell
- root_dir: <function @/nix/store/jj6kh1vn5g3bylvavvb2ay71c7n7py17-vim-pack-dir/pack/myNeovimPackages/start/nvim-lspconfig/lsp/hls.lua:21>
- settings: {
haskell = {
cabalFormattingProvider = "cabal-fmt",
formattingProvider = "ormolu"
}
}