#!/bin/bash
# Spouštěč Bábofkátoru. Při prvním spuštění doinstaluje potřebné knihovny.
VER="1.0.0"
RES="$(cd "$(dirname "$0")/../Resources" && pwd)"
SUP="$HOME/Library/Application Support/Babofkator"
VENV="$SUP/venv"
PY="$VENV/bin/python"

if [ ! -x "$PY" ] || [ ! -f "$SUP/.nainstalovano-$VER" ]; then
  # uživatel aplikaci právě povolil -> sundat karanténu i z vnitřních souborů
  xattr -dr com.apple.quarantine "$RES/.." 2>/dev/null

  SYSPY=""
  for c in python3.13 python3.12 python3.11 python3.10 python3; do
    if command -v "$c" >/dev/null 2>&1; then
      V=$("$c" -c 'import sys;print("%d%02d"%sys.version_info[:2])' 2>/dev/null)
      if [ -n "$V" ] && [ "$V" -ge 309 ]; then SYSPY=$(command -v "$c"); break; fi
    fi
  done

  if [ -z "$SYSPY" ]; then
    A=$(osascript -e 'display dialog "Bábofkátor potřebuje Python 3.9 nebo novější, který v systému není.\n\nOtevřít stránku, odkud se stahuje? (balík „macOS 64-bit universal2“)" with title "Bábofkátor" buttons {"Zavřít","Otevřít stránku"} default button 2 with icon caution' 2>/dev/null)
    case "$A" in *"Otevřít stránku"*) open "https://www.python.org/downloads/macos/";; esac
    exit 1
  fi

  # grafický instalátor (okno s průběhem, bez Terminálu)
  "$SYSPY" "$RES/instalator.py"
  rc=$?
  if [ "$rc" -eq 3 ]; then      # chybí tkinter -> textová instalace
    chmod +x "$RES/prvni-spusteni.command" 2>/dev/null
    open -a Terminal "$RES/prvni-spusteni.command" 2>/dev/null || \
      "$RES/prvni-spusteni.command"
  fi
  exit 0
fi

export PYTHONPATH="$RES/app"
export PYTHONDONTWRITEBYTECODE=1
exec "$PY" -m babofkator.desktop
