5421db2960
Repackage the official O3DE Linux .deb as a Flatpak and publish it as a static OSTree repo on the 'pages' branch for install via flatpak remote. - org.o3de.O3DE.yaml: flatpak-builder manifest (extracts the .deb into /app) - o3de-wrapper.sh: launcher that locates the versioned o3de binary at runtime - desktop + AppStream metadata under the app-id - scripts/: live version resolver and local build helper - .gitea/workflows/build-flatpak.yml: daily check -> build -> publish -> tag Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
31 lines
1.1 KiB
Bash
Executable File
31 lines
1.1 KiB
Bash
Executable File
#!/bin/sh
|
|
# Launcher for the O3DE Project Manager inside the Flatpak sandbox.
|
|
#
|
|
# The Debian package installs O3DE under /opt/O3DE/<version>/, which becomes
|
|
# /app/opt/O3DE/<version>/ 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" "$@"
|