aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/dot_config/nvim/lua/plugins/ai.lua
diff options
context:
space:
mode:
authorLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-05-13 13:43:40 +0100
committerLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-05-13 13:43:40 +0100
commitab8ee06cbfce42f94e07a0a694701a4df9201815 (patch)
treecf62051aa2539a939e196047a8ab634b0ff693a6 /dot_config/nvim/lua/plugins/ai.lua
parent7771ced1411c3140f5ca17bfe282dc23a949c4a6 (diff)
downloaddotfiles-ab8ee06cbfce42f94e07a0a694701a4df9201815.tar.gz
dotfiles-ab8ee06cbfce42f94e07a0a694701a4df9201815.tar.bz2
dotfiles-ab8ee06cbfce42f94e07a0a694701a4df9201815.zip
feat(nvim): pin copilot to Node 24 to dodge LSP/Node 26 incompat
copilot-language-server emits 'HTTP 200 response does not appear to originate from GitHub' under Node 26 (the current Arch nodejs). Upstream tracking: https://github.com/zbirenbaum/copilot.lua/issues/695 https://github.com/github/copilot.vim/issues/282 https://github.com/github/copilot-language-server-release/issues/45 Workaround universally confirmed in those threads is to run the language-server under Node 24. Rather than downgrade system nodejs (used by lots of other tooling) install a private Node 24 under ~/.local/share/copilot-node/ via a chezmoi run_onchange script that verifies the official sha256, and point copilot.lua at it via copilot_node_command. Drop in once, bump NODE_VERSION when the upstream incompatibility is resolved.
Diffstat (limited to 'dot_config/nvim/lua/plugins/ai.lua')
-rw-r--r--dot_config/nvim/lua/plugins/ai.lua3
1 files changed, 3 insertions, 0 deletions
diff --git a/dot_config/nvim/lua/plugins/ai.lua b/dot_config/nvim/lua/plugins/ai.lua
index 8c213b5..995f6a0 100644
--- a/dot_config/nvim/lua/plugins/ai.lua
+++ b/dot_config/nvim/lua/plugins/ai.lua
@@ -1,6 +1,9 @@
require("copilot").setup({
suggestion = { enabled = false },
panel = { enabled = false },
+ -- Pinned Node 24 runtime; system nodejs (26.x) is incompatible with
+ -- copilot-language-server. See ~/.local/share/chezmoi/run_onchange_after_install-copilot-node.sh
+ copilot_node_command = vim.fs.joinpath(vim.env.XDG_DATA_HOME or (vim.env.HOME .. "/.local/share"), "copilot-node/bin/node"),
server_opts_overrides = {
settings = {
telemetry = {