Build node-pty from source using buildNpmPackage so Claude Desktop's
terminal features (Claude Code) work on NixOS. The derivation handles
three issues with the upstream package:
- Strips macOS-only fsevents reference from package-lock.json so
npm ci doesn't fail on lock/json mismatch
- Runs both tsc (TypeScript to JS) and node-gyp rebuild (native addon)
- Copies build/Release/pty.node into output since npmInstallHook
doesn't include native addons
Also wires node-pty into claude-desktop.nix via --node-pty-dir flag
and updates the flake overlay to expose it.
Co-Authored-By: Claude <claude@anthropic.com>