This website requires JavaScript.
Explore
Help
Sign In
magdev
/
php-qml
Watch
1
Fork
0
You've already forked php-qml
Code
Issues
Pull Requests
Actions
Releases
4
Activity
Files
0cca0785c038f65efd8b2d6a572d5bb869c1f5ae
php-qml
/
examples
/
todo
/
packaging
/
todo.png
3 lines
209 B
Plaintext
Raw
Normal View
History
Unescape
Escape
Phase 4a sub-commit 2: AppImage recipe (build-appimage.sh + make appimage) packaging/linux/build-appimage.sh produces a single-file Linux AppImage from a built host + Symfony tree + FrankenPHP binary. Auto-downloads (cached in tools/, gitignored) the three pieces of upstream tooling: - linuxdeploy + linuxdeploy-plugin-qt — gathers Qt runtime and QML modules into the AppDir, and bundles the offscreen platform plugin via EXTRA_PLATFORM_PLUGINS so headless CI can smoke it. - appimagetool — squashes the AppDir into the .AppImage. - runtime-x86_64 — appimagetool's prepended runtime stub, fetched once and passed via --runtime-file (ad-hoc downloads stalled on some networks). The two stages are kept separate (linuxdeploy stages, then we invoke appimagetool ourselves) so failures are observable rather than swallowed by linuxdeploy's bundled-tool path. AppDir layout matches BackendConnection's resolve* fallbacks: AppDir/usr/bin/<app> AppDir/usr/bin/frankenphp AppDir/usr/share/<app>/symfony/ AppDir/usr/share/<app>/Caddyfile examples/todo gets `make appimage`: stages a no-dev composer install into build/staging-symfony, points the path repo at the bundle's absolute path so Composer can find php-qml/bridge from the staging dir, then drives build-appimage.sh. Output: build/Todo-x86_64.AppImage (~104 MB). Verified locally: `make appimage` produces a working AppImage; mount + inspect + extract all clean. Headless run requires the bundled offscreen plugin (now wired); a real desktop launches it normally. Includes a 64×64 placeholder PNG icon (todo.png) and a minimal .desktop file for the example. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-02 19:42:51 +02:00
<EFBFBD>
PNG