#!/bin/sh
set -eu
URL=${NAIXI_IPKG_URL:-https://dl.naixi.net/ikuai/apps/naixi-0.1.0.ipkg}
HOME_DIR=/etc/log/naixi
mkdir -p "$HOME_DIR/cache" "$HOME_DIR/logs" "$HOME_DIR/backups"
TMP="$HOME_DIR/cache/naixi-bootstrap.ipkg"
if command -v curl >/dev/null 2>&1; then
  curl -fL --retry 3 -o "$TMP" "$URL"
else
  wget -O "$TMP" "$URL"
fi
# If an existing naixi command exists, use it; otherwise do a minimal unpack to expose it.
if [ -x "$HOME_DIR/naixi" ]; then
  "$HOME_DIR/naixi" install --force "$TMP"
else
  work=/tmp/naixi-bootstrap.$$; rm -rf "$work"; mkdir -p "$work"
  tar -xzf "$TMP" -C "$work"
  bin=$(find "$work" -path '*/app/bin/naixi' -type f | head -1)
  [ -n "$bin" ] || { echo "naixi binary not found in package" >&2; exit 1; }
  cp -f "$bin" "$HOME_DIR/naixi"; chmod 755 "$HOME_DIR/naixi"
  ln -sf "$HOME_DIR/naixi" /usr/bin/naixi 2>/dev/null || true
  "$HOME_DIR/naixi" install --force "$TMP"
  rm -rf "$work"
fi
"$HOME_DIR/naixi" ensure-sshd-sh || true
echo "naixi installed. sshd login shell is /bin/sh. Try: naixi list"
