Cover mayhem install issues: kitty-terminfo package + install-omaterm TTY wrapper
This commit is contained in:
parent
67f10da503
commit
99a3598c68
1 changed files with 25 additions and 5 deletions
|
|
@ -107,11 +107,14 @@ if [ ! -d "/usr/lib/modules/$(uname -r)" ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Minimal host package set — omaterm installs everything else it needs
|
# Minimal host package set — omaterm installs everything else it needs
|
||||||
# (git, tmux, agents, tailscale all live inside its container)
|
# (git, tmux, agents, tailscale all live inside its container).
|
||||||
|
# kitty-terminfo: without it, SSHing in from kitty gives
|
||||||
|
# "'xterm-kitty': unknown terminal type" and the omaterm installer dies
|
||||||
pacman -S --noconfirm --needed \
|
pacman -S --noconfirm --needed \
|
||||||
ufw \
|
ufw \
|
||||||
fail2ban \
|
fail2ban \
|
||||||
curl \
|
curl \
|
||||||
|
kitty-terminfo \
|
||||||
docker
|
docker
|
||||||
|
|
||||||
# Docker must be running before omaterm installs — the new omaterm is
|
# Docker must be running before omaterm installs — the new omaterm is
|
||||||
|
|
@ -329,6 +332,23 @@ else
|
||||||
warn "Image pre-pull failed — the omaterm installer will pull it instead"
|
warn "Image pre-pull failed — the omaterm installer will pull it instead"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Installer wrapper: `curl | bash` makes stdin the pipe, so the installer's
|
||||||
|
# final `docker run -it` attach fails with "stdin is not a terminal".
|
||||||
|
# Download-then-run keeps stdin on the real TTY.
|
||||||
|
cat > /home/$DEPLOY_USER/install-omaterm << 'OMAEOF'
|
||||||
|
#!/bin/bash
|
||||||
|
# Fetch and run the omaterm installer with a real TTY on stdin
|
||||||
|
set -euo pipefail
|
||||||
|
tmp=$(mktemp)
|
||||||
|
trap 'rm -f "$tmp"' EXIT
|
||||||
|
curl -fsSL https://omaterm.org/install -o "$tmp"
|
||||||
|
bash "$tmp"
|
||||||
|
OMAEOF
|
||||||
|
|
||||||
|
chown $DEPLOY_USER:$DEPLOY_USER /home/$DEPLOY_USER/install-omaterm
|
||||||
|
chmod +x /home/$DEPLOY_USER/install-omaterm
|
||||||
|
log "Installer wrapper created at ~/install-omaterm"
|
||||||
|
|
||||||
# =============================================================================
|
# =============================================================================
|
||||||
# SWAP (2GB)
|
# SWAP (2GB)
|
||||||
# =============================================================================
|
# =============================================================================
|
||||||
|
|
@ -458,13 +478,13 @@ echo ""
|
||||||
echo -e " ${CYAN}────── COPY ABOVE THIS LINE ──────${NC}"
|
echo -e " ${CYAN}────── COPY ABOVE THIS LINE ──────${NC}"
|
||||||
echo ""
|
echo ""
|
||||||
echo " 2. Test SSH: ssh $SSH_ALIAS"
|
echo " 2. Test SSH: ssh $SSH_ALIAS"
|
||||||
echo " 3. Install omaterm (interactive SSH session, NOT a one-liner —"
|
echo " 3. Install omaterm (from an interactive SSH session — do NOT"
|
||||||
echo " the installer needs a real terminal with TERM set):"
|
echo " curl|bash it, the container attach step needs a real TTY):"
|
||||||
echo ""
|
echo ""
|
||||||
echo -e " ${CYAN}ssh $SSH_ALIAS${NC}"
|
echo -e " ${CYAN}ssh $SSH_ALIAS${NC}"
|
||||||
echo -e " ${CYAN}curl -fsSL https://omaterm.org/install | bash${NC}"
|
echo -e " ${CYAN}./install-omaterm${NC}"
|
||||||
echo ""
|
echo ""
|
||||||
echo " If it complains about the terminal: TERM=xterm-256color first."
|
echo " If it complains about the terminal: TERM=xterm-256color ./install-omaterm"
|
||||||
echo ""
|
echo ""
|
||||||
echo " Once step 1 is done, Claude Code can control this server."
|
echo " Once step 1 is done, Claude Code can control this server."
|
||||||
echo ""
|
echo ""
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue