mirror of
https://github.com/l0ng-ai/tty7.git
synced 2026-11-06 08:15:35 +00:00
What SSH `exec` sends is parsed by the user's login shell first. The daemon launch, the running-server probe and the stop went out as bare POSIX scripts, so on a host whose shell is fish the launch died on its first word (`out=…`), no daemon started, and the client waited out its 15s timeout before reporting that the server "logged nothing" to a startup log the script never got to create. - Send those three scripts through `sh -c`, as the quick probe already did, via a shared `under_sh`. - Make `shell_quote` read back identically under fish: fish treats a backslash inside single quotes as an escape, which broke any script quoted a second time for `sh -c`. Backslashes now sit outside the quotes. - Treat a non-zero status from the launch as a failed launch and carry the shell's stderr into the error, instead of reporting a timeout.