Installazione
Dipendenze
- Podman oppure Docker
- Python 3 (+ venv, yaml)
- PostgreSQL
- Java 21
- Maven
Esempio con Debian:
sudo apt install podman postgresql openjdk-21-jdk maven python3-venv python3-yaml
Clone del repo
git clone https://codeberg.org/LUG-Trieste/linux-bomb.git
Setup del database
sudo su - postgres
createdb bomb
psql bomb
Esegui il codice SQL contenuto in server/src/main/resources/db/migration/V1.0__db-structure.sql
per creare le tabelle.
Crea l’utente che il server usa per accedere al database:
CREATE ROLE bomb WITH PASSWORD 'bomb';
ALTER ROLE bomb WITH LOGIN;
GRANT ALL PRIVILEGES ON DATABASE bomb TO bomb;
Installare dipendenze Python della CLI
Installare le dipendenze in virtualenv:
cd cli
python3 -m venv venv
source ./venv/bin/activate
pip install -r requirements.txt
Compilare il server in Java
cd server
mvn clean package
Generare le immagini Docker
Generare le immagini base:
cd server/src/main/resources/static/levels/base
podman build -t linux-bomb-base:en .
podman build --build-arg LANG=it_IT.UTF-8 -t linux-bomb-base:it .
podman build --build-arg LANG=sl_SI.UTF-8 -t linux-bomb-base:sl .
Generare le immagini dei livelli:
cd ../1/
podman build -t linux-bomb-n00b:en .
podman build -t linux-bomb-n00b:it -f Dockerfile.it .
podman build -t linux-bomb-n00b:sl -f Dockerfile.sl .
cd ../2/
podman build -t linux-bomb-explorer:en .
podman build -t linux-bomb-explorer:it -f Dockerfile.it .
podman build -t linux-bomb-explorer:sl -f Dockerfile.sl .
cd ../3/
podman build -t linux-bomb-ninja:en .
podman build -t linux-bomb-ninja:it -f Dockerfile.it .
podman build -t linux-bomb-ninja:sl -f Dockerfile.sl .
Avviare il server
cd server
java -jar target/bomb-0.0.1-SNAPSHOT.jar