RomM (ROM Manager) è un’applicazione web-based progettata per gestire e organizzare la tua collezione di ROM per il retrogaming. Offre un’interfaccia moderna e pulita che permette di sfogliare i giochi per console, scaricare automaticamente metadati e locandine (tramite IGDB) e, grazie all’integrazione con EmulatorJS, giocare direttamente nel browser.
Processo di Installazione
Per installare RomM è consigliato utilizzare Docker Compose. Il sistema richiede un database MariaDB per memorizzare le informazioni della libreria e i salvataggi degli utenti.
Docker Compose
Il seguente file docker-compose.yml configura l’applicativo principale e il database necessario.
services:
romm:
image: rommapp/romm:latest
container_name: romm
restart: always
environment:
- DB_HOST=romm-db
- DB_NAME=${ROMM_DB_NAME:-romm}
- DB_USER=${ROMM_DB_USER:-romm_user}
- DB_PASSWORD=${ROMM_DB_PASSWORD}
- ROMM_AUTH_SECRET=${ROMM_AUTH_SECRET} # Genera con: openssl rand -hex 32
# Opzionale: Configurazione IGDB per i metadati
- IGDB_CLIENT_ID=${IGDB_CLIENT_ID}
- IGDB_CLIENT_SECRET=${IGDB_CLIENT_SECRET}
ports:
- "8080:8080"
volumes:
- ./romm_resources:/romm/resources
- ./romm_config:/romm/config
- /path/to/your/roms:/romm/library # Modifica con il percorso della tua cartella ROM
depends_on:
romm-db:
condition: service_healthy
romm-db:
image: mariadb:latest
container_name: romm-db
restart: always
environment:
- MYSQL_ROOT_PASSWORD=${ROMM_DB_ROOT_PASSWORD}
- MYSQL_DATABASE=${ROMM_DB_NAME:-romm}
- MYSQL_USER=${ROMM_DB_USER:-romm_user}
- MYSQL_PASSWORD=${ROMM_DB_PASSWORD}
volumes:
- ./romm_db:/var/lib/mysql
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
interval: 10s
timeout: 5s
retries: 5Configurazione delle Variabili (.env)
Crea un file .env nella stessa directory del Compose per gestire in sicurezza le password e le chiavi segrete.
ROMM_DB_NAME=romm
ROMM_DB_USER=romm_user
ROMM_DB_PASSWORD=una_password_sicura
ROMM_DB_ROOT_PASSWORD=una_password_root_sicura
ROMM_AUTH_SECRET=genera_un_segreto_lungo_casuale
# Facoltativo
IGDB_CLIENT_ID=il_tuo_id_client
IGDB_CLIENT_SECRET=il_tuo_segreto_clientAvvio del Servizio
Una volta configurati i file, avvia lo stack con il comando:
docker-compose up -dDopo l’avvio, potrai accedere a RomM tramite browser all’indirizzo http://<indirizzo_IP_server>:8080. Al primo accesso ti verrà richiesto di configurare l’account amministratore e scansionare la tua libreria.
Consigli Utili
- Organizzazione cartelle: Per un riconoscimento ottimale, organizza le ROM in sottocartelle nominate in base alla console (es.
library/snes/,library/gba/). - Metadati IGDB: Ti consigliamo vivamente di registrare un account developer su Twitch per ottenere le chiavi IGDB; questo permetterà a RomM di scaricare locandine di alta qualità e descrizioni dettagliate in automatico.
- Salvataggi: RomM supporta il caricamento e il download degli stati di salvataggio (save states), permettendoti di riprendere la partita da qualsiasi dispositivo.