fix: clean up SSH environment variable propagation

This commit is contained in:
Jason Rayne
2025-06-16 15:58:48 -07:00
parent b07b3e4608
commit 2e9a0e92db
4 changed files with 8 additions and 28 deletions

View File

@ -170,9 +170,7 @@ if [[ -n "$GHOSTTY_SSH_INTEGRATION" ]]; then
env_vars+=("TERM=xterm-ghostty")
# Propagate Ghostty shell integration environment variables
[[ -n "$GHOSTTY_SHELL_INTEGRATION_NO_CURSOR" ]] && env_vars+=("GHOSTTY_SHELL_INTEGRATION_NO_CURSOR=$GHOSTTY_SHELL_INTEGRATION_NO_CURSOR")
[[ -n "$GHOSTTY_SHELL_INTEGRATION_NO_SUDO" ]] && env_vars+=("GHOSTTY_SHELL_INTEGRATION_NO_SUDO=$GHOSTTY_SHELL_INTEGRATION_NO_SUDO")
[[ -n "$GHOSTTY_SHELL_INTEGRATION_NO_TITLE" ]] && env_vars+=("GHOSTTY_SHELL_INTEGRATION_NO_TITLE=$GHOSTTY_SHELL_INTEGRATION_NO_TITLE")
[[ -n "$GHOSTTY_SHELL_FEATURES" ]] && env_vars+=("GHOSTTY_SHELL_FEATURES=$GHOSTTY_SHELL_FEATURES")
# Normal SSH connection with Ghostty terminfo available
env "${env_vars[@]}" ssh "$@"

View File

@ -172,14 +172,10 @@
set env-vars = [$@env-vars TERM=xterm-ghostty]
# Propagate Ghostty shell integration environment variables
if (has-env GHOSTTY_SHELL_INTEGRATION_NO_CURSOR) {
set env-vars = [$@env-vars GHOSTTY_SHELL_INTEGRATION_NO_CURSOR=$E:GHOSTTY_SHELL_INTEGRATION_NO_CURSOR]
if (has-env GHOSTTY_SHELL_FEATURES) {
if (not-eq "" $E:GHOSTTY_SHELL_FEATURES) {
set env-vars = [$@env-vars GHOSTTY_SHELL_FEATURES=$E:GHOSTTY_SHELL_FEATURES]
}
if (has-env GHOSTTY_SHELL_INTEGRATION_NO_SUDO) {
set env-vars = [$@env-vars GHOSTTY_SHELL_INTEGRATION_NO_SUDO=$E:GHOSTTY_SHELL_INTEGRATION_NO_SUDO]
}
if (has-env GHOSTTY_SHELL_INTEGRATION_NO_TITLE) {
set env-vars = [$@env-vars GHOSTTY_SHELL_INTEGRATION_NO_TITLE=$E:GHOSTTY_SHELL_INTEGRATION_NO_TITLE]
}
# Normal SSH connection with Ghostty terminfo available

View File

@ -126,10 +126,6 @@ function __ghostty_setup --on-event fish_prompt -d "Setup ghostty integration"
set env_vars $env_vars GHOSTTY_SHELL_FEATURES="$GHOSTTY_SHELL_FEATURES"
end
if test -n "$GHOSTTY_RESOURCES_DIR"
set env_vars $env_vars GHOSTTY_RESOURCES_DIR="$GHOSTTY_RESOURCES_DIR"
end
# Execute with environment variables if any were set
if test (count $env_vars) -gt 0
env $env_vars ssh $argv
@ -156,14 +152,8 @@ function __ghostty_setup --on-event fish_prompt -d "Setup ghostty integration"
set -a env_vars TERM=xterm-ghostty
# Propagate Ghostty shell integration environment variables
if set -q GHOSTTY_SHELL_INTEGRATION_NO_CURSOR
set -a env_vars GHOSTTY_SHELL_INTEGRATION_NO_CURSOR=$GHOSTTY_SHELL_INTEGRATION_NO_CURSOR
end
if set -q GHOSTTY_SHELL_INTEGRATION_NO_SUDO
set -a env_vars GHOSTTY_SHELL_INTEGRATION_NO_SUDO=$GHOSTTY_SHELL_INTEGRATION_NO_SUDO
end
if set -q GHOSTTY_SHELL_INTEGRATION_NO_TITLE
set -a env_vars GHOSTTY_SHELL_INTEGRATION_NO_TITLE=$GHOSTTY_SHELL_INTEGRATION_NO_TITLE
if test -n "$GHOSTTY_SHELL_FEATURES"
set env_vars $env_vars GHOSTTY_SHELL_FEATURES="$GHOSTTY_SHELL_FEATURES"
end
# Normal SSH connection with Ghostty terminfo available

View File

@ -280,11 +280,9 @@ _ghostty_deferred_init() {
if [[ "$TERM" == "xterm-ghostty" ]]; then
TERM=xterm-256color \
GHOSTTY_SHELL_FEATURES="${GHOSTTY_SHELL_FEATURES}" \
GHOSTTY_RESOURCES_DIR="${GHOSTTY_RESOURCES_DIR}" \
builtin command ssh "$@"
else
GHOSTTY_SHELL_FEATURES="${GHOSTTY_SHELL_FEATURES}" \
GHOSTTY_RESOURCES_DIR="${GHOSTTY_RESOURCES_DIR}" \
builtin command ssh "$@"
fi
}
@ -307,9 +305,7 @@ _ghostty_deferred_init() {
env_vars+=("TERM=xterm-ghostty")
# Propagate Ghostty shell integration environment variables
[[ -n "$GHOSTTY_SHELL_INTEGRATION_NO_CURSOR" ]] && env_vars+=("GHOSTTY_SHELL_INTEGRATION_NO_CURSOR=$GHOSTTY_SHELL_INTEGRATION_NO_CURSOR")
[[ -n "$GHOSTTY_SHELL_INTEGRATION_NO_SUDO" ]] && env_vars+=("GHOSTTY_SHELL_INTEGRATION_NO_SUDO=$GHOSTTY_SHELL_INTEGRATION_NO_SUDO")
[[ -n "$GHOSTTY_SHELL_INTEGRATION_NO_TITLE" ]] && env_vars+=("GHOSTTY_SHELL_INTEGRATION_NO_TITLE=$GHOSTTY_SHELL_INTEGRATION_NO_TITLE")
[[ -n "$GHOSTTY_SHELL_FEATURES" ]] && env_vars+=("GHOSTTY_SHELL_FEATURES=$GHOSTTY_SHELL_FEATURES")
# Normal SSH connection with Ghostty terminfo available
env "${env_vars[@]}" ssh "$@"