#!/bin/sh # Launcher for the O3DE Project Manager inside the Flatpak sandbox. # # The Debian package installs O3DE under /opt/O3DE//, which becomes # /app/opt/O3DE// inside the Flatpak. The version directory name # changes with every release, so we discover the executable at runtime instead # of hard-coding a path. set -eu O3DE_ROOT=/app/opt/O3DE # Bundled shared libraries that ship inside the .deb. export LD_LIBRARY_PATH="/app/lib:${O3DE_ROOT}/lib:${LD_LIBRARY_PATH:-}" # Locate the Project Manager executable ("o3de"). O3DE_BIN=$(find "$O3DE_ROOT" -type f -name o3de -path '*bin/Linux*' 2>/dev/null | head -n 1) if [ -z "$O3DE_BIN" ]; then O3DE_BIN=$(find "$O3DE_ROOT" -type f -executable -name o3de 2>/dev/null | head -n 1) fi if [ -z "$O3DE_BIN" ]; then echo "error: O3DE executable not found under $O3DE_ROOT" >&2 echo " (the .deb layout may have changed)" >&2 exit 1 fi # Make libraries that sit next to the binary discoverable too. export LD_LIBRARY_PATH="$(dirname "$O3DE_BIN"):${LD_LIBRARY_PATH}" exec "$O3DE_BIN" "$@"