This page lists common issues and their resolutions when running Nexterm.
If your issue is not listed, please open a GitHub issue with:
- Nexterm version (
nexterm-ctl --version) - OS / GPU driver version
- The exact command you ran
- The stderr output captured with
NEXTERM_LOG=debug
The GPU client links against several X11/Wayland/audio system libraries. On Ubuntu / Debian, install:
sudo apt-get install -y libx11-dev libxkbcommon-dev libwayland-dev libasound2-dev libpulse-devThe WiX preprocessor variable syntax for candle.exe must use -dName=Value (no space).
When invoked from PowerShell, write the argument as one token:
& candle.exe "-dVersion=$version" ...See CLAUDE.md for the canonical build invocation.
Check whether another nexterm-server instance owns the socket:
- Linux/macOS:
ls $XDG_RUNTIME_DIR/nexterm.sock - Windows:
Get-ChildItem \\.\pipe\nexterm-*
Remove the stale socket file (Linux only — Windows pipes vanish automatically) and retry.
SNAPSHOT_VERSION_MIN will be raised from 1 to 2 at v2.0.0 (see ADR-0007).
Run any v1.x release once before upgrading to v2.0.0 so the snapshot is migrated to v2 automatically.
Your plugin exports no nexterm_api_version() function, so the host treats it as v1.
Add the v2 ABI declaration (see examples/plugins/README.md).
v1 will be removed in v2.0.0 — see ADR-0003.
Force the discrete GPU before launching:
DRI_PRIME=1 nexterm
# or for NVIDIA Optimus:
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia nextermIf the discrete GPU is still skipped, set [gpu] backend = "vulkan" in config.toml.
Enable mailbox present mode in config.toml:
[gpu]
present_mode = "mailbox"auto defaults to fifo on most drivers. mailbox trims one display frame at the cost of
occasional tearing under heavy load.
Confirm WSL is installed and wsl.exe --list --verbose lists at least one distro.
Then re-run with --dry-run to preview:
nexterm-ctl wsl import-profiles --dry-runThis indicates a host key mismatch — possibly a MITM attack or a legitimate server rotation.
If you trust the new key, remove the offending line from ~/.ssh/known_hosts and reconnect.
Never disable host key verification unconditionally.
SSH agent authentication is currently Unix-only.
On Windows, use private key files (auth_type = "key" in the host entry) until agent support
lands. Track issue: ADR/Roadmap.
Tokens are sourced from WEB_AUTH_TOKEN env var first, then config.toml.
If both differ, the env var wins. Verify with:
env | grep WEB_AUTH_TOKENThe redirect URI registered in your OAuth provider must exactly match the
redirect_url field in [web.oauth]. Trailing slashes count.
Check:
present_mode = "mailbox"(above)- GPU driver up to date
[font]size larger than 24pt — glyph atlas thrashing increases. Lowerglyph_atlas_sizeif memory is tight, or raise it (default 1024) for fewer evictions.
Run cargo bench -p nexterm-vt to verify the VT parser itself isn't the bottleneck.
- GitHub Discussions
- GitHub Issues
NEXTERM_LOG=trace nexterm-server 2> trace.logfor deep diagnostics