[Feature]: Install and update QuakeWorld from qwserver-build releases

Abierto
#5,143 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
shell
Área
cli

Línea de trabajo

Start from update_etl.sh and the ET: Legacy wiring in install_server_files.sh and core_modules.sh, then model a new update_qw.sh on them. Settle first whether the md5 comes from the release body or the MD5SUMS asset, as the issue asks. Done means a fresh qw install runs on Ubuntu 26.04 with the new bundle, update leaves user configs in place, and the old nQuake archive stays available for older releases.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

command: install command: update distro: Ubuntu engine: quake game: Quake World priority: low scope: single game type: feature
Priority

priority: low

User story

As a QuakeWorld server owner, I want LinuxGSM to install and update current MVDSV and KTX builds so that my server gets upstream fixes without a manual reinstall.

Game

Quake World

Linux distro

Ubuntu 26.04

Command

command: install, command: update

Problem statement

QuakeWorld installs from QuakeWorld/nquake.server.linux.190506.full.tar.xz on linuxgsm.download, an nQuake bundle from 2019. There is no updater, so every install gets the 2019 MVDSV, KTX, QTV and QWFWD.

GameServerManagers/qwserver-build now publishes a weekly bundle as a GitHub release (for example build-20261026: MVDSV 1.11, KTX 1.47, QWFWD 1.30, current QTV and the nQuake distfiles). LinuxGSM does not use it yet.

Scope and impact

scope: single game

Further information

Follow the ET: Legacy pattern (update_etl.sh with etlserver-build):

  • Add update_qw.sh. It reads https://api.github.com/repos/GameServerManagers/qwserver-build/releases/latest, picks the nquake.server.linux.*.full.tar.xz asset, and writes the tag to build.txt.
  • In install_server_files.sh, have qw call update_qw.sh instead of downloading the linuxgsm.download archive.
  • Register update_qw.sh in core_modules.sh and wire up update for qw.

Points to settle first:

  1. update_etl.sh takes the md5 from an MD5 line in the release body. qwserver-build releases have only an MD5SUMS asset. Either add the md5 line to the qwserver-build release body (a one-line workflow change, which keeps the two update modules the same) or have update_qw.sh read MD5SUMS.
  2. qwserver-build also publishes a release tagged latest. The module should use releases/latest, which returns the newest dated release; the latest tag is only there for direct links.
  3. Test the bundle layout against the qw _default.cfg (executable, config paths, ktx) with a fresh install on Ubuntu 26.04.
  4. On existing installs, update would extract the new bundle over serverfiles. Make sure user configs are not overwritten.

The old nQuake archive stays on linuxgsm.download for older releases.

Alternatives considered

Rebuild the 2019 archive by hand now and then. That needs manual work for every upstream release, and qwserver-build already automates it.

Lenguaje dominante
Shell
Estrellas
4.9k
Forks
871
Merge medio
1 d 7 h
PR fusionados (30 d)
133

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de GameServerManagers/LinuxGSM

Todos los issues de GameServerManagers/LinuxGSM

Issues similares

Más issues de Shell/Bash

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.