From 8e5f5efc70680128545d26864263e5628fc74276 Mon Sep 17 00:00:00 2001 From: sommerfeld Date: Thu, 14 May 2026 12:29:15 +0100 Subject: fix(remote-dev): install basedpyright outside Mason Mason's pypi distribution of basedpyright pulls nodejs-wheel-binaries which only ships manylinux_2_28 Linux wheels. uv's python-build- standalone interpreter is tagged manylinux2014 (glibc 2.17 for max portability) and rejects those wheels; pip then falls back to building Node 24 from source, which fails on Ubuntu 20.04's gcc 9.4 (needs gcc >=10 for -std=gnu++20). Provide basedpyright via the system package manager instead: - pacman on Arch (added to meta/base.txt) - pkgs.basedpyright on the VM (added to remote-dev/home.nix) Drop it from mason-tool-installer's ensure_installed; lspconfig picks it up from PATH. Document the exception in remote-dev/README.md. --- remote-dev/home.nix | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'remote-dev/home.nix') diff --git a/remote-dev/home.nix b/remote-dev/home.nix index 1a1b98f..cdb5890 100644 --- a/remote-dev/home.nix +++ b/remote-dev/home.nix @@ -85,6 +85,10 @@ in nodejs_24 # Mason npm LSPs + copilot-language-server (needs Node 24, see ai.lua) uv # Mason python LSPs in isolated venvs; brings `uv`/`uvx` only jre # for Mason's groovy-language-server (headless Java runtime) + basedpyright # see lsp.lua: Mason's pypi distro can't install on Ubuntu 20.04 + # (nodejs-wheel-binaries has only manylinux_2_28 wheels which + # uv's python rejects since it's manylinux2014; source build + # of Node 24 needs gcc >=10 and host gcc is 9.4) # NB: python3.11 for Mason is NOT installed here — see bootstrap.sh # step 4. Nix's python disables manylinux wheel support by design -- cgit v1.3.1