- export_presets: embed_pck=true for Linux/Windows/macOS -> single self-contained binaries (all game data in one file); build_releases.sh cleans stale .pck - App icon: assets/textures/icon.png (1024) + multi-size icon.ico generated by tools/generate_textures.py; copied into packaging/windows and packaging/linux - packaging/windows/step-line.nsi: NSIS installer (shortcuts, uninstaller, registry Add/Remove Programs) output step-line-setup-<ver>.exe - packaging/linux: step-line.desktop, AppRun, step-line.appdata.xml, build_appimage.sh (appimagetool, APPIMAGE_EXTRACT_AND_RUN) -> step-line-<ver>-x86_64.AppImage - CI build job now packages NSIS installer + AppImage alongside binaries; publish glob already uploads them - Local end-to-end verification: embedded exports rebuilt, AppImage built and run headless (0 script errors); suite 57/57 - README Downloads table lists installer/AppImage/portable rows; RELEASING documents packaging; TODO/DONE synced
37 lines
1.2 KiB
Bash
Executable File
37 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Build distributable desktop executables with the Godot export pipeline.
|
|
#
|
|
# Requirements:
|
|
# - Godot 4.3 (or the version in project.godot `config/features`) on PATH,
|
|
# with export templates installed (see docs/RELEASING.md).
|
|
# - Run from the repository root.
|
|
#
|
|
# Produces:
|
|
# build/step-line-linux-<version>.x86_64
|
|
# build/step-line-windows-<version>.exe
|
|
# build/step-line-macos-<version>.zip
|
|
#
|
|
set -euo pipefail
|
|
|
|
GODOT="${GODOT:-godot}"
|
|
VERSION="$(grep -oP 'config/version="\K[^"]+' project.godot)"
|
|
mkdir -p build
|
|
# Presets now embed the PCK into a single binary; drop stale .pck leftovers.
|
|
rm -f build/*.pck
|
|
|
|
echo "==> Exporting Linux (x86_64)"
|
|
"$GODOT" --headless --export-release "Linux" "build/step-line-linux-${VERSION}.x86_64"
|
|
|
|
echo "==> Exporting Windows Desktop"
|
|
"$GODOT" --headless --export-release "Windows Desktop" "build/step-line-windows-${VERSION}.exe"
|
|
|
|
echo "==> Exporting macOS"
|
|
"$GODOT" --headless --export-release "macOS" "build/step-line-macos-${VERSION}.zip"
|
|
|
|
echo ""
|
|
echo "Artifacts:"
|
|
ls -la build/*"${VERSION}"*
|
|
echo ""
|
|
echo "Upload to: https://git.allucanget.biz/zwitschi/security-game/releases"
|
|
echo "See docs/RELEASING.md for the full release checklist."
|