The install script was Debian-only but everything runs in Docker, so
there's no reason it can't work on other distros. This swaps out the
Debian check for distro detection via /etc/os-release and adds a
pkg_install wrapper that calls the right package manager.
get.docker.com doesn't support Arch or openSUSE so those install
Docker from their own repos. NVIDIA toolkit setup is also handled
per-distro since the repo config is different for deb/rpm/Arch.
A couple of small fixups too — hostname isn't always available on
minimal installs so there's a fallback to the ip command, and Arch
needs iptables-nft for Docker networking.
README updated to list supported distros.
Tested on Debian 12, Arch, Fedora 42, and openSUSE Leap 15.6.
Closes#235
When the install script runs a second time (e.g., after a failed first
attempt), it generates new random database passwords and writes them to
compose.yml. However, MySQL only initializes credentials on first startup
when its data directory is empty. If /opt/project-nomad/mysql/ persists
from the previous attempt, MySQL skips initialization and keeps the old
passwords, causing "Access denied" errors for nomad_admin.
Fix: remove the MySQL data directory before generating new credentials
so MySQL reinitializes with the correct passwords.
Closes#404
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add ensure_dependencies_installed function that checks for and installs curl
- Update README with one-liner install command for fresh systems
- Function is extensible for future dependency requirements
Fixes issue where fresh Ubuntu 24.04 installs fail because curl is not
installed by default.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>