Herramientas de usuario

Herramientas del sitio


informatica:software:aplicaciones_web:romm

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
informatica:software:aplicaciones_web:romm [2026/03/03 13:06] tempwininformatica:software:aplicaciones_web:romm [2026/03/23 20:01] (actual) – [Configuración inicial] tempwin
Línea 1: Línea 1:
 ====== RomM ====== ====== RomM ======
  
-Aplicación web para la gestión de ROMs. También permite jugar a esas ROMs desde el propio navegador usando EmulatorJS.+Aplicación web para la gestión de colecciones de juegos, especialmente ROMs. También permite jugar a esas ROMs desde el propio navegador.
  
   * [[https://romm.app/|Sitio web]]   * [[https://romm.app/|Sitio web]]
   * [[https://github.com/rommapp/romm|Repositorio de código]]   * [[https://github.com/rommapp/romm|Repositorio de código]]
 +  * [[https://docs.romm.app/latest/|Documentación]]
  
 {{ https://raw.githubusercontent.com/rommapp/romm/master/.github/resources/screenshots/preview-desktop.webp |}} {{ https://raw.githubusercontent.com/rommapp/romm/master/.github/resources/screenshots/preview-desktop.webp |}}
 +
 +===== Características =====
 +
 +  * Gestiona tu biblioteca de juegos: escanea tus ROMs, agrégales etiquetas, carátulas y metadatos automáticamente con fuentes como IGDB o MobyGames.
 +  * Soporte para [[https://docs.romm.app/latest/Platforms-and-Players/Supported-Platforms/|más de 400 plataformas]] (consolas, micro ordenadores, etc)
 +  * Juega directamente desde el navegador: gracias a [[https://emulatorjs.org/|EmulatorJS]], juega sin instalar nada adicional.
 +  * Self-hosted y abierto: tú mismo alojas la aplicación (por ejemplo con Docker), mantienes el control de tus datos y puedes extenderlo o integrarlo con otras herramientas.
 +  * Aplicaciones nativas e integraciones para jugar desde donde queramos: Playnite (Windows), Argosy Launcher (Android) o consolas portátiles con CFW (como TrimUI).
 +
 +
 +===== Instalación =====
 +
 +==== Docker ====
 +
 +Ejemplo de fichero Docker Compose:
 +
 +<code yaml>
 +version: "3"
 +
 +volumes:
 +  mysql_data:
 +  romm_resources:
 +  romm_redis_data:
 +
 +services:
 +  romm:
 +    image: rommapp/romm:latest
 +    container_name: romm
 +    restart: unless-stopped
 +    environment:
 +      - DB_HOST=romm-db
 +      - DB_NAME=romm # Should match MARIADB_DATABASE in mariadb
 +      - DB_USER=romm-user # Should match MARIADB_USER in mariadb
 +      - DB_PASSWD= # Should match MARIADB_PASSWORD in mariadb
 +      - ROMM_AUTH_SECRET_KEY= # Generate a key with `openssl rand -hex 32`
 +      - SCREENSCRAPER_USER= # These are the recommended metadata providers
 +      - SCREENSCRAPER_PASSWORD= # https://docs.romm.app/latest/Getting-Started/Metadata-Providers/#screenscraper
 +      - RETROACHIEVEMENTS_API_KEY= # https://docs.romm.app/latest/Getting-Started/Metadata-Providers/#retroachievements
 +      - STEAMGRIDDB_API_KEY= # https://docs.romm.app/latest/Getting-Started/Metadata-Providers/#steamgriddb
 +      - HASHEOUS_API_ENABLED=true # https://docs.romm.app/latest/Getting-Started/Metadata-Providers/#hasheous
 +    volumes:
 +      - romm_resources:/romm/resources # Resources fetched from IGDB (covers, screenshots, etc.)
 +      - romm_redis_data:/redis-data # Cached data for background tasks
 +      - /path/to/library:/romm/library # Your game library. Check https://docs.romm.app/latest/Getting-Started/Folder-Structure/ for more details.
 +      - /path/to/assets:/romm/assets # Uploaded saves, states, etc.
 +      - /path/to/config:/romm/config # (Optional) Path where config.yml is stored
 +    ports:
 +      - 80:8080
 +    depends_on:
 +      romm-db:
 +        condition: service_healthy
 +        restart: true
 +
 +  romm-db:
 +    image: mariadb:latest
 +    container_name: romm-db
 +    restart: unless-stopped
 +    environment:
 +      - MARIADB_ROOT_PASSWORD= # Use a unique, secure password
 +      - MARIADB_DATABASE=romm
 +      - MARIADB_USER=romm-user
 +      - MARIADB_PASSWORD=
 +    volumes:
 +      - mysql_data:/var/lib/mysql
 +    healthcheck:
 +      test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
 +      start_period: 30s
 +      start_interval: 10s
 +      interval: 10s
 +      timeout: 5s
 +      retries: 5
 +
 +</code>
 +
 +  * [[https://github.com/rommapp/romm/blob/master/examples/config.example.yml|Ejemplo de fichero "config.yml"]]
 +
 +
 +===== Estructura de directorios =====
 +
 +Si queremos que RomM detecte automáticamente nuestra bibilioteca de ROMs, podemos optar por dos organizaciones:
 +
 +  * Estructura A
 +  * Estructura B
 +
 +Si no existe ninguna estructura de directorios, los ficheros se pueden subir desde la interfaz web de RomM y la aplicación automáticamente creará la **Estructura A**.
 +==== Estructura A ====
 +
 +La recomendada. Tanto ROMs como BIOS tienen sus directorios dedicados.
 +
 +  * ''/roms/<PLATAFORMA>/''
 +  * ''/bios/<PLATAFORMA>/''
 +
 +Ejemplo:
 +
 +<code>
 +library/
 +        ├─ roms/
 +        │  ├─ gbc/
 +        │  │  ├─ game_1.gbc
 +        │  │  └─ game_2.gbc
 +        │  │
 +        │  ├─ gba/
 +        │  │  ├─ game_3.gba
 +        │  │  └─ game_4/
 +        │  │     ├─ game_4.gba
 +        │  │     ├─ dlc
 +        │  │     │  ├─ game_4_dlc_1.7z
 +        │  │     │  └─ game_4_dlc_2.7z
 +        │  │     ├─ hack
 +        │  │     │  └─ game_4_hardmode.rar
 +        │  │     ├─ manual
 +        │  │     │  └─ game_4_manual.pdf
 +        │  │     ├─ mod
 +        │  │     │  └─ game_4_crazy_mode.zip
 +        │  │     ├─ patch
 +        │  │     │  └─ game_4_patch_v1.1.zip
 +        │  │     ├─ update
 +        │  │     ├─ demo
 +        │  │     ├─ translation
 +        │  │     └─ prototype
 +        │  │
 +        │  └─ ps/
 +        │     ├─ game_5/
 +        │     │   ├─ game_5_cd_1.iso
 +        │     │   └─ game_5_cd_2.iso
 +        │     │
 +        │     └─ game_6.iso
 +        │
 +        └─ bios/
 +           ├─ gba/
 +           │  └─ gba_bios.bin
 +           │
 +           └─ ps/
 +              ├─ scph1001.bin
 +              ├─ scph5501.bin
 +              └─ scph5502.bin
 +</code>
 +
 +==== Estructura B ====
 +
 +Cada plataforma tiene su propia carpeta donde se almacenan tanto las ROMs como las BIOS:
 +
 +  * ''/<PLATAFORMA>/roms''
 +  * ''/<PLATAFORMA>/bios''
 +
 +Ejemplo:
 +
 +<code>
 +library/
 +        ├─ gbc/
 +        │  └─ roms/
 +        │     ├─ game_1.gbc
 +        │     └─ game_2.gbc
 +        │
 +        ├─ gba/
 +        │  ├─ roms/
 +        │  │  ├─ game_3.gba
 +        │  │  └─ game_4/
 +        │  │     ├─ game_4.gba
 +        │  │     ├─ dlc
 +        │  │     │  ├─ game_4_dlc_1.7z
 +        │  │     │  └─ game_4_dlc_2.7z
 +        │  │     ├─ hack
 +        │  │     │  └─ game_4_hardmode.rar
 +        │  │     ├─ manual
 +        │  │     │  └─ game_4_manual.pdf
 +        │  │     ├─ mod
 +        │  │     │  └─ game_4_crazy_mode.zip
 +        │  │     ├─ patch
 +        │  │     │  └─ game_4_patch_v1.1.zip
 +        │  │     ├─ update
 +        │  │     ├─ demo
 +        │  │     ├─ translation
 +        │  │     └─ prototype
 +        │  │
 +        │  └─ bios/
 +        │     └─ gba_bios.bin
 +        │
 +        └─ ps/
 +           ├─ roms/
 +           │  ├─ game_5/
 +           │  │  ├─ game_5_cd_1.iso
 +           │  │  └─ game_5_cd_2.iso
 +           │ 
 +           │  └─ game_6.iso
 +           │
 +           └─ bios/
 +              ├─ scph1001.bin
 +              ├─ scph5501.bin
 +              └─ scph5502.bin
 +</code>
 +
 +===== Configuración inicial =====
 +
 +Al entrar por primera vez a http://localhost:8080 (o la IP y puerto que hayamos configurado), se nos presentará un asistente para elegir:
 +
 +  * Estructura de la biblioteca de roms (ver sección más abajo)
 +  * Creación del usuario administrador.
 +  * Orígenes de metadatos para completar automáticamente información sobre nuestras roms.
 +
 +===== Subir roms =====
 +
 +
informatica/software/aplicaciones_web/romm.1772539583.txt.gz · Última modificación: por tempwin