fix(boot): load nvm before launching gemini so PATH is correct in script subshell

This commit is contained in:
chrischristiansen-glitch 2026-05-24 19:33:34 +02:00
parent 68ac4fde35
commit e53503289a

View File

@ -24,6 +24,19 @@ FAIL="${RED}[XX]${NC}"
SESSION_ID="$(date '+%Y%m%d-%H%M%S')"
# =============================================================================
# Load nvm so node/npm/gemini are on PATH even when script runs as subshell
# =============================================================================
export NVM_DIR="$HOME/.nvm"
# shellcheck source=/dev/null
[[ -s "$NVM_DIR/nvm.sh" ]] && source "$NVM_DIR/nvm.sh"
# Also check common system paths for gemini (e.g. symlinked to /usr/local/bin)
if ! command -v gemini &>/dev/null && [[ -d "$NVM_DIR" ]]; then
# nvm may not auto-select a version in non-interactive shells
NVM_DEFAULT=$(nvm version default 2>/dev/null || true)
[[ -n "$NVM_DEFAULT" ]] && nvm use "$NVM_DEFAULT" &>/dev/null || true
fi
clear
cat << 'BANNER'
@ -74,6 +87,14 @@ else
printf " $WARN GitHub CLI ${YELLOW}gh auth login (valgfritt)${NC}\n"
fi
# Gemini CLI
if command -v gemini &>/dev/null; then
GEMINI_VER=$(gemini --version 2>/dev/null || echo "ukjent")
printf " $OK Gemini CLI ${DIM}%s${NC}\n" "$GEMINI_VER"
else
printf " $WARN Gemini CLI ${YELLOW}Ikke installert — kjør: npm install -g @google/gemini-cli${NC}\n"
fi
printf "\n"
@ -124,7 +145,6 @@ printf "\n"
# =============================================================================
# SECTION 4: SESSION-LOGG
# Ber deg beskrive hva du skal gjøre — logger ved start og spør ved slutt
# =============================================================================
mkdir -p "$(dirname "$SESSION_LOG")"
@ -134,7 +154,6 @@ printf " ${DIM}(skriv kort beskrivelse, trykk Enter)${NC}\n > "
read -r SESSION_DESC
[[ -z "$SESSION_DESC" ]] && SESSION_DESC="(ingen beskrivelse)"
# Skriv session-header til logg
cat >> "$SESSION_LOG" << EOF
---
@ -161,7 +180,7 @@ printf "${DIM} ---------------------------------------------------${NC}\n\n"
# =============================================================================
# AVSLUTT-HOOK (kjøres når du er ferdig — skriv: opax-logg-slutt)
# AVSLUTT-HOOK
# =============================================================================
opax-logg-slutt() {
printf "\n ${BOLD}${CYAN}Sesjonslogg — avslutt${NC}\n"
@ -191,9 +210,19 @@ read -r -p " Starte Gemini-CLI nå? [y/N]: " ANSWER
case "$ANSWER" in
y|Y)
echo
echo " [OSVauco] Starter Gemini-CLI fra ~/OSVauco..."
cd "$OSVAUCO_DIR"
gemini
if ! command -v gemini &>/dev/null; then
printf " ${RED}[XX]${NC} gemini ikke funnet.\n"
printf " Installer med:\n"
printf " curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash\n"
printf " export NVM_DIR=\"\$HOME/.nvm\" && source \"\$NVM_DIR/nvm.sh\"\n"
printf " nvm install --lts\n"
printf " npm install -g @google/gemini-cli\n"
printf " ln -sf \$(which gemini) /usr/local/bin/gemini\n"
else
echo " [OSVauco] Starter Gemini-CLI fra ~/OSVauco..."
cd "$OSVAUCO_DIR"
gemini
fi
;;
*)
echo