Integra KISUM (audio→Strudel) + pestaña Visor + accesos en la cabecera
- Pestaña KISUM: sube audio/vídeo y lo convierte en código Strudel vía un mini-servidor Python local (kisum/, puerto 3010) que arranca el lanzador. - Pestaña Visor: piano-roll (pentagrama) + osciloscopio + espectro en vivo de lo que suena, sin escribir .pianoroll()/.scope(). - Botones en la cabecera: projects, KISUM, visor, ajustes. - KISUM empaquetado en kisum/ (código, sin venv) + install.sh de un comando y lanzador portable (sin rutas absolutas). - .gitignore excluye venv/cachés/logs de KISUM. Docs en README. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
970b89b08c
commit
7ace286d8a
13 changed files with 1052 additions and 13 deletions
51
install.sh
Executable file
51
install.sh
Executable file
|
|
@ -0,0 +1,51 @@
|
|||
#!/usr/bin/env bash
|
||||
# Instalador todo-en-uno del fork de Strudel (hacklab) + KISUM, para Linux.
|
||||
# NO descarga nada raro: usa pnpm para Node y venv+pip para KISUM.
|
||||
#
|
||||
# git clone https://gitea.laenre.net/hacklab/strudel.git
|
||||
# cd strudel && ./install.sh && ./strudel-launcher.sh
|
||||
#
|
||||
set -euo pipefail
|
||||
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
cd "$DIR"
|
||||
|
||||
echo "════════════════════════════════════════════"
|
||||
echo " Instalador Strudel (fork hacklab) + KISUM"
|
||||
echo "════════════════════════════════════════════"
|
||||
|
||||
# ── Node / pnpm ─────────────────────────────────────────────────────
|
||||
# Si node no está en el PATH pero hay nvm, lo usamos.
|
||||
if ! command -v node >/dev/null 2>&1 && [ -d "$HOME/.nvm/versions/node" ]; then
|
||||
NODE_BIN="$(ls -d "$HOME"/.nvm/versions/node/*/bin 2>/dev/null | sort -V | tail -1)"
|
||||
[ -n "${NODE_BIN:-}" ] && export PATH="${NODE_BIN}:${PATH}"
|
||||
fi
|
||||
if ! command -v node >/dev/null 2>&1; then
|
||||
echo "ERROR: falta Node.js (>= 20)." >&2
|
||||
echo " Instálalo con nvm: https://github.com/nvm-sh/nvm" >&2
|
||||
echo " nvm install 20 && nvm use 20" >&2
|
||||
exit 1
|
||||
fi
|
||||
if ! command -v pnpm >/dev/null 2>&1; then
|
||||
echo "==> activando pnpm con corepack"
|
||||
corepack enable pnpm 2>/dev/null || {
|
||||
echo "ERROR: no pude activar pnpm. Instálalo: npm i -g pnpm" >&2
|
||||
exit 1
|
||||
}
|
||||
fi
|
||||
|
||||
echo "==> Strudel: instalando dependencias de Node (pnpm i)…"
|
||||
pnpm i
|
||||
echo "==> Strudel: construyendo la web (pnpm build)…"
|
||||
pnpm build
|
||||
|
||||
# ── KISUM (opcional; si falla, Strudel funciona igual) ──────────────
|
||||
if [ -f "$DIR/kisum/install.sh" ]; then
|
||||
echo "==> Configurando KISUM (audio → código Strudel)…"
|
||||
bash "$DIR/kisum/install.sh" || echo "AVISO: KISUM no se instaló del todo. Strudel funciona igual; revisa python3/ffmpeg."
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "✔ Instalación completa."
|
||||
echo " Arranca con: ./strudel-launcher.sh"
|
||||
echo " Strudel: http://127.0.0.1:3009"
|
||||
echo " KISUM server: http://127.0.0.1:3010 (arranca solo con el lanzador)"
|
||||
Loading…
Add table
Add a link
Reference in a new issue