Update romm-install.sh

This commit is contained in:
CanbiZ 2026-01-05 15:05:39 +01:00
parent 1153b1f635
commit 1d9b65c0d7

View File

@ -17,35 +17,32 @@ update_os
msg_info "Installing dependencies" msg_info "Installing dependencies"
$STD apt-get install -y \ $STD apt-get install -y \
acl \ acl \
build-essential \ build-essential \
gcc \ gcc \
g++ \ g++ \
make \ make \
git \ libssl-dev \
curl \ libffi-dev \
libssl-dev \ libmagic-dev \
libffi-dev \ python3-dev \
libmagic-dev \ python3-pip \
python3-dev \ python3-venv \
python3-pip \ libmariadb3 \
python3-venv \ libmariadb-dev \
libmariadb3 \ libpq-dev \
libmariadb-dev \ libbz2-dev \
libpq-dev \ libreadline-dev \
libbz2-dev \ libsqlite3-dev \
libreadline-dev \ zlib1g-dev \
libsqlite3-dev \ liblzma-dev \
zlib1g-dev \ libncurses5-dev \
liblzma-dev \ libncursesw5-dev \
libncurses5-dev \ redis-server \
libncursesw5-dev \ redis-tools \
redis-server \ p7zip-full \
redis-tools \ tzdata \
p7zip-full \ nginx
tzdata \
jq \
nginx
msg_ok "Installed dependencies" msg_ok "Installed dependencies"
UV_VERSION="0.7.19" PYTHON_VERSION="3.13" setup_uv UV_VERSION="0.7.19" PYTHON_VERSION="3.13" setup_uv
@ -55,11 +52,11 @@ MARIADB_DB_NAME="romm" MARIADB_DB_USER="romm" setup_mariadb_db
msg_info "Creating directories" msg_info "Creating directories"
mkdir -p /opt/romm \ mkdir -p /opt/romm \
/var/lib/romm/config \ /var/lib/romm/config \
/var/lib/romm/resources \ /var/lib/romm/resources \
/var/lib/romm/assets/{saves,states,screenshots} \ /var/lib/romm/assets/{saves,states,screenshots} \
/var/lib/romm/library/roms \ /var/lib/romm/library/roms \
/var/lib/romm/library/bios /var/lib/romm/library/bios
msg_ok "Created directories" msg_ok "Created directories"
msg_info "Creating configuration file" msg_info "Creating configuration file"
@ -123,16 +120,15 @@ CONFIGEOF
chmod 644 /var/lib/romm/config/config.yml chmod 644 /var/lib/romm/config/config.yml
msg_ok "Created configuration file" msg_ok "Created configuration file"
fetch_and_deploy_gh_release "RetroAchievements" "RetroAchievements/RALibretro" "prebuild" "latest" "/opt/RALibretro" "RAHasher-x64-Linux.zip"
msg_info "Building RAHasher (RetroAchievements)" msg_info "Building RAHasher (RetroAchievements)"
RAHASHER_VERSION="1.8.1" cd /opt/RALibretro
cd /tmp
git clone --recursive --branch "$RAHASHER_VERSION" --depth 1 https://github.com/RetroAchievements/RALibretro.git
cd RALibretro
sed -i '22a #include <ctime>' ./src/Util.h sed -i '22a #include <ctime>' ./src/Util.h
sed -i '6a #include <unistd.h>' \ sed -i '6a #include <unistd.h>' \
./src/libchdr/deps/zlib-1.3.1/gzlib.c \ ./src/libchdr/deps/zlib-1.3.1/gzlib.c \
./src/libchdr/deps/zlib-1.3.1/gzread.c \ ./src/libchdr/deps/zlib-1.3.1/gzread.c \
./src/libchdr/deps/zlib-1.3.1/gzwrite.c ./src/libchdr/deps/zlib-1.3.1/gzwrite.c
$STD make HAVE_CHD=1 -f ./Makefile.RAHasher $STD make HAVE_CHD=1 -f ./Makefile.RAHasher
cp ./bin64/RAHasher /usr/bin/RAHasher cp ./bin64/RAHasher /usr/bin/RAHasher
chmod +x /usr/bin/RAHasher chmod +x /usr/bin/RAHasher
@ -180,27 +176,22 @@ EOF
chmod 600 /opt/romm/.env chmod 600 /opt/romm/.env
msg_ok "Created environment file" msg_ok "Created environment file"
msg_info "Installing backend" msg_info "Setup Romm backend"
cd /opt/romm cd /opt/romm
# Limit concurrent downloads to avoid DNS resolution failures in LXC containers
# See: https://github.com/astral-sh/uv/issues/12054
export UV_CONCURRENT_DOWNLOADS=1 export UV_CONCURRENT_DOWNLOADS=1
$STD uv sync --all-extras $STD uv sync --all-extras
cd /opt/romm/backend cd /opt/romm/backend
$STD uv run alembic upgrade head $STD uv run alembic upgrade head
msg_ok "Installed backend" msg_ok "Installed backend"
msg_info "Installing frontend" msg_info "Setup Romm frontend"
cd /opt/romm/frontend cd /opt/romm/frontend
$STD npm install $STD npm install
$STD npm run build $STD npm run build
mkdir -p /opt/romm/frontend/dist/assets/romm mkdir -p /opt/romm/frontend/dist/assets/romm
ln -sfn /var/lib/romm/resources /opt/romm/frontend/dist/assets/romm/resources ln -sfn /var/lib/romm/resources /opt/romm/frontend/dist/assets/romm/resources
ln -sfn /var/lib/romm/assets /opt/romm/frontend/dist/assets/romm/assets ln -sfn /var/lib/romm/assets /opt/romm/frontend/dist/assets/romm/assets
msg_ok "Installed frontend" msg_ok "Setup Romm frontend"
msg_info "Configuring nginx" msg_info "Configuring nginx"
cat >/etc/nginx/sites-available/romm <<'EOF' cat >/etc/nginx/sites-available/romm <<'EOF'
upstream romm_backend { upstream romm_backend {