vscode: revamp terminal UX, fix sizing, add cross-platform packaging

Nexus terminal:
- Fix CSP that silently blocked the inline <style>, so the terminal now
  fills 100% of the tab; theme xterm from VSCode colour variables and use
  the editor/terminal monospace font.
- Re-fit via ResizeObserver/visibility/font-load and re-send geometry once
  the session is connected, so the remote PTY no longer stays at 80x24.
- Remove the floating SFTP icon; SFTP now opens in the user's home folder
  (retry SFTPPwd instead of falling back to /).

Both extensions:
- Polish panels to VSCode design standards (themed buttons, focus rings,
  primary actions); redraw the activity-bar logos.
- chmod +x the bridge on activation (VSIX extraction may drop the exec bit).

Packaging:
- Stop tracking the per-host bridge binary (committed a macOS arm64 build
  that broke Linux/Windows); ignore vscode/bin, vscode/dist, vscode/*/bin.
- Add package-all.sh to cross-compile the pure-Go bridge and produce one
  platform-specific VSIX per target (win32/darwin/linux x64+arm64), with an
  opt-in macOS codesign + notarization hook.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-23 19:56:31 +01:00
co-authored by Claude Opus 4.8
parent 0f0b18c124
commit ab0e3a44e6
9 changed files with 440 additions and 85 deletions
+7
View File
@@ -6,6 +6,13 @@
build/bin/
dist/
# ── VSCode extensions: platform-specific build artifacts (never commit) ────
# The Go bridge is compiled per-host by vscode/build.sh and staged into each
# extension's bin/ — committing it ships a binary for the wrong OS/arch.
vscode/bin/
vscode/dist/
vscode/*/bin/
# ── Build platform resources (tracked — icons, plists, manifests) ─────────
# build/darwin/, build/windows/, build/linux/ are tracked for icons & metadata