#!/usr/bin/env bash # ============================================================================ # Trixy Client — Release-Build # # Erstellt: # - trixy-client-{version}.tar.gz (Quellcode — nur Client-relevantes) # - trixy-installer-client-{version}.tar.gz (Installer TUI) # - install.sh (Bootstrap) # ============================================================================ set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" source "${SCRIPT_DIR}/common.sh" MODE="client" echo "========================================" echo " Trixy Client Release-Build" echo "========================================" # Build-Konfiguration laden load_build_conf # Version parsen VERSION=$(parse_version) echo " Version: ${VERSION}" # Release-Verzeichnis RELEASE_DIR=$(prepare_release_dir "${VERSION}" "${MODE}") echo " Release: ${RELEASE_DIR}" echo "" print_build_conf "${MODE}" # Source-tar (Client: kein Server-Code, keine Plugins, kein Trainer) # trixy_core bleibt komplett (interne Cross-Imports) EXTRA_EXCLUDES="./plugins ./trainer ./models ./assets ./docs ./bash ./data ./cron ./config/server_config.json ./config/standalone_config.json ./config/trainer_config.json" create_source_tar "${MODE}" "${VERSION}" "${RELEASE_DIR}" "${EXTRA_EXCLUDES}" # Installer-tar create_installer_tar "${MODE}" "${VERSION}" "${RELEASE_DIR}" # install.sh generate_install_sh "${MODE}" "${VERSION}" "${RELEASE_DIR}" # Zusammenfassung print_summary "${MODE}" "${VERSION}" "${RELEASE_DIR}"