12 Commits

Author SHA1 Message Date
Ogulcan Celik eac2314e6c fix: handle package-manager remote updates 2026-05-26 22:51:28 +03:00
Ogulcan Celik 2ea4878bae feat: gate live handoff behind explicit flag 2026-05-25 20:56:17 +03:00
Ogulcan Celik d4a5e02e84 feat: hand off ptys during updates 2026-05-25 15:36:50 +03:00
Ogulcan Celik 866aaf740e refactor: separate server client boundaries 2026-05-21 20:22:57 +03:00
Ogulcan Celik 06bcd06a17 feat: use local keybindings for remote attach 2026-05-21 15:17:37 +03:00
Ogulcan Celik 7410952567 fix: restart remote server after binary update 2026-05-21 02:01:22 +03:00
Ogulcan Celik 836fd7e585 feat: add keybinding v2
refs #154
refs #201
refs #202
refs #219
2026-05-20 18:55:41 +03:00
Ogulcan Celik ed478be983 fix: bridge remote clipboard image paste
refs #205
2026-05-20 02:51:59 +03:00
Ogulcan Celik 6e8132bf78 fix: find remote herdr on path
refs #170
2026-05-19 01:13:03 +03:00
moonsphere 8f747e96eb fix(remote): keep bridge socket path under sun_path ceiling (#103)
local_forward_socket_path built {TMPDIR}/herdr-remote-{pid}-{target}-
{session}.sock. On macOS std::env::temp_dir() returns /var/folders/.../T/
(~49 chars), so a ~24-char target was enough to push the path past
sun_path's 104-byte ceiling and UnixListener::bind rejected it with
"path must be shorter than SUN_LEN". Per-component sanitization capped
each piece at 32 chars but ignored the directory prefix.

The function now picks the first form that fits within 103 bytes (one
byte of headroom for the trailing NUL; portable across macOS' 104 and
Linux's 108) measured via OsStrExt::as_bytes:

  1. Readable name in TMPDIR (unchanged when it fits).
  2. Hashed short name in TMPDIR.
  3. Hashed short name in /tmp (rare fallback for over-long TMPDIRs).

The hash covers the full unsanitized target/session so uniqueness does
not depend on prefix truncation; the truncated prefix is kept only for
debuggability of the short-form filename.

Co-authored-by: jett <jett@pingcap.cn>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 14:08:41 +03:00
Ogulcan Celik 3b53ae6e6e fix(remote): bootstrap remote herdr install 2026-05-09 15:15:45 +03:00
Ogulcan Celik 793f127e54 feat(remote): add network-efficient thin client transport
Add SSH stdio remote attach, negotiate terminal-ANSI render encoding, move blit encoding server-side for remote clients, and split control/render writer delivery for safer backpressure.

Fixes #76
2026-05-08 22:20:04 +03:00