# Guía de instalación Esta guía describe cómo instalar NovelasVM desde cero en un servidor Ubuntu. ## Tabla de contenidos 1. [Preparación del sistema](#preparación-del-sistema) 2. [Usuario y directorios](#usuario-y-directorios) 3. [Instalación de dependencias](#instalación-de-dependencias) 4. [Instalación de Ren'Py SDK](#instalación-de-renpy-sdk) 5. [Instalación de OnscripterYuri web](#instalación-de-onscripteryuri-web) 6. [Configuración de nginx](#configuración-de-nginx) 7. [Instalación del portal](#instalación-del-portal) 8. [Configuración de Umineko Web](#configuración-de-umineko-web) 9. [Verificación final](#verificación-final) --- ## Preparación del sistema Actualiza el sistema: ```bash sudo apt update && sudo apt upgrade -y ``` Configura una IP estática. Edita `/etc/netplan/00-installer-config.yaml` o el archivo correspondiente: ```yaml network: version: 2 ethernets: eth0: addresses: - 192.168.10.111/24 routes: - to: default via: 192.168.10.254 nameservers: addresses: - 8.8.8.8 - 8.8.4.4 ``` Aplica: ```bash sudo netplan apply ``` --- ## Usuario y directorios Crea el usuario `novelas` y los directorios base: ```bash sudo useradd -m -s /bin/bash novelas sudo mkdir -p /opt/novelas/{bin,builds,projects,tools,config,templates/portal,docs} sudo mkdir -p /var/www/novelas/{games,assets} sudo chown -R novelas:novelas /opt/novelas ``` --- ## Instalación de dependencias ```bash sudo apt install -y \ nginx \ docker.io \ docker-compose \ python3 \ python3-pip \ nodejs \ npm \ xvfb \ p7zip-full \ git \ curl \ wget \ imagemagick \ ufw ``` Habilita Docker: ```bash sudo systemctl enable --now docker sudo usermod -aG docker novelas ``` --- ## Instalación de Ren'Py SDK Descarga Ren'Py SDK con el paquete web: ```bash sudo mkdir -p /opt/novelas/tools/renpy cd /opt/novelas/tools/renpy sudo curl -sL -O https://www.renpy.org/dl/8.3.4/renpy-8.3.4-sdk.tar.bz2 sudo tar -xjf renpy-8.3.4-sdk.tar.bz2 sudo mv renpy-8.3.4-sdk/* . sudo rm -rf renpy-8.3.4-sdk renpy-8.3.4-sdk.tar.bz2 sudo chown -R novelas:novelas /opt/novelas/tools/renpy ``` Verifica: ```bash /opt/novelas/tools/renpy/renpy.sh --version ``` --- ## Instalación de OnscripterYuri web Descarga la última versión web: ```bash sudo mkdir -p /opt/novelas/tools/onscripter-yuri cd /opt/novelas/tools/onscripter-yuri VERSION="0.7.6" curl -sL -o onsyuri_v${VERSION}_web.7z \ https://github.com/YuriSizuku/OnscripterYuri/releases/download/v${VERSION}/onsyuri_v${VERSION}_web.7z 7z x -y onsyuri_v${VERSION}_web.7z rm onsyuri_v${VERSION}_web.7z sudo chown -R novelas:novelas /opt/novelas/tools/onscripter-yuri ``` --- ## Configuración de nginx Copia la configuración del repositorio: ```bash sudo cp /opt/novelas/repo/config/nginx.conf /etc/nginx/sites-available/novelas sudo ln -sf /etc/nginx/sites-available/novelas /etc/nginx/sites-enabled/novelas sudo rm -f /etc/nginx/sites-enabled/default sudo nginx -t sudo systemctl reload nginx ``` > Nota: el archivo `config/nginx.conf` del repositorio es una plantilla; ajústala según tu IP/dominio. --- ## Instalación del portal Copia los archivos del portal: ```bash sudo cp -r /opt/novelas/repo/var-www/* /var/www/novelas/ sudo chown -R www-data:www-data /var/www/novelas sudo find /var/www/novelas -type f -exec chmod 644 {} \; sudo find /var/www/novelas -type d -exec chmod 755 {} \; ``` Copia los scripts: ```bash sudo cp /opt/novelas/repo/bin/* /opt/novelas/bin/ sudo chmod +x /opt/novelas/bin/*.sh sudo chown -R novelas:novelas /opt/novelas/bin ``` --- ## Configuración de Umineko Web Clona el repositorio del contenedor: ```bash sudo mkdir -p /opt/novelas/tools cd /opt/novelas/tools sudo git clone --depth 1 https://github.com/VictoriqueMoe/umineko_web_asm.git umineko-web-asm sudo cp /opt/novelas/repo/bin/umineko-web.sh umineko-web-asm/run-umineko-web.sh sudo chmod +x umineko-web-asm/run-umineko-web.sh ``` Edita `run-umineko-web.sh` con la ruta correcta a los archivos del juego y la IP del servidor. Coloca los archivos de Umineko en `/opt/novelas/projects/umineko/` y luego: ```bash sudo /opt/novelas/bin/umineko-web.sh start ``` --- ## Verificación final ```bash # nginx sudo systemctl is-active nginx # Docker sudo docker ps # Portal curl -s http://localhost/games.json # Umineko redirect curl -sI http://localhost/games/umineko/ ``` Accede con tu navegador a `http://192.168.10.111/`.