# Instalador de Strudel (fork hacklab) + KISUM para Windows (PowerShell). # Ejecuta desde una terminal PowerShell en la carpeta del repo: # powershell -ExecutionPolicy Bypass -File .\install.ps1 # # NO sube paquetes al repo: usa pnpm (Node) y un venv de Python para KISUM. # ⚠ Escrito y revisado, pero pendiente de probar en un Windows real. $ErrorActionPreference = "Stop" $DIR = Split-Path -Parent $MyInvocation.MyCommand.Path Set-Location $DIR Write-Host "============================================" Write-Host " Instalador Strudel (fork hacklab) + KISUM" Write-Host "============================================" # --- Node / pnpm --- if (-not (Get-Command node -ErrorAction SilentlyContinue)) { Write-Error "Falta Node.js (>= 20). Instálalo: winget install OpenJS.NodeJS.LTS (y reabre la terminal)" } if (-not (Get-Command pnpm -ErrorAction SilentlyContinue)) { Write-Host "==> activando pnpm con corepack" corepack enable pnpm } Write-Host "==> Strudel: instalando dependencias de Node (pnpm i)..." pnpm i Write-Host "==> Strudel: construyendo la web (pnpm build)..." pnpm build # --- KISUM (opcional) --- $kisum = Join-Path $DIR "kisum" if (Test-Path (Join-Path $kisum "requirements.txt")) { Write-Host "==> Configurando KISUM (audio -> codigo Strudel)..." $venv = Join-Path $kisum ".venv" if (Get-Command py -ErrorAction SilentlyContinue) { py -3 -m venv $venv } elseif (Get-Command python -ErrorAction SilentlyContinue) { python -m venv $venv } else { Write-Warning "No encuentro Python. Instálalo: winget install Python.Python.3.12 (KISUM no se instalará; Strudel funciona igual)" $venv = $null } if ($venv) { $pip = Join-Path $venv "Scripts\pip.exe" & $pip install --upgrade pip & $pip install -r (Join-Path $kisum "requirements.txt") if (-not (Get-Command ffmpeg -ErrorAction SilentlyContinue)) { Write-Warning "ffmpeg no está en el PATH. KISUM lo necesita para vídeo. Instálalo: winget install Gyan.FFmpeg (y reabre la terminal)" } } } Write-Host "" Write-Host "OK. Arranca con: powershell -ExecutionPolicy Bypass -File .\strudel-launcher.ps1" Write-Host " Strudel: http://127.0.0.1:3009" Write-Host " KISUM server: http://127.0.0.1:3010 (arranca solo con el lanzador)"