Files
retro-alcoi/README.md
T
2026-03-16 10:17:30 +01:00

2.2 KiB
Raw Blame History

retro-alcoi

Tools for configuring PCs at a retro gaming fair.

Utilities

setup-network

Assigns a static IP address and hostname to a Debian 13 machine based on a machine number (1254). Designed for an isolated local network with no gateway or DNS required.

sudo ./setup-network <machine_num>

Example:

sudo ./setup-network 4
# → IP: 10.0.1.4/24, hostname: retro-alcoi-4

See setup-network/ for source and build instructions.

Quick start

cd setup-network/
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
bash build.sh
# Binary is at dist/setup-network

Copy dist/setup-network and dist/config.ini to a USB stick, then on each fair PC:

sudo ./setup-network 4

Configuration

Edit config.ini (alongside the binary) before distributing:

[network]
subnet_root = 10.0.1
hostname_prefix = retro-alcoi-

How it works

  1. Detects the first wired Ethernet interface (skips WiFi, bridges, veth).
  2. Sets the hostname via hostnamectl and updates /etc/hosts.
  3. Configures the static IP via nmcli if available, otherwise falls back to /etc/network/interfaces.

Re-running with the same or a different machine number is safe (idempotent).

setup-quake

Installs ioquake3 from the Debian package manager and downloads/extracts the Quake 3 data files from a private server to the real user's home directory.

sudo ./setup-quake

See setup-quake/ for source and build instructions.

Quick start

cd setup-quake/
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
bash build.sh
# Binary is at dist/setup-quake

Copy dist/setup-quake and dist/config.ini to a USB stick, then on each fair PC:

sudo ./setup-quake

Configuration

Edit config.ini (alongside the binary) before distributing:

[quake]
files_url = https://php.sustancia.synology.me/files/ioquake3-files.zip
install_dir = .q3a

How it works

  1. Installs ioquake3 via apt-get.
  2. Downloads the Quake 3 data files zip from the configured URL.
  3. Extracts the data files to ~/.q3a (resolved via $SUDO_USER so the real user's home is used, not root's).