makepad/tools/makepad_builder/macos-launcher.sh
Admin 384d0e031c tools: the Builder replaces makepad_loader, the web server moves to makepad/webserver, fleet scripts, docs and the workspace members
tools/makepad_builder replaces tools/makepad_loader: one build target
shared across app builds, workspace package selection, checkout
progress on the public Git API, detached built apps with a completion
state, waits for Windows security scans, manual retry after compiler
locks, dedicated-folder installer checks, catalog and runtime fixes.
tools/web_server and its scripts leave for github.com/makepad/webserver.
Arch USB clone/restore scripts, the qwen38 box scripts and the G-belt
serial test join tools/. docs/agents records the agent workflow and the
remote-control handoff protocol; AGENTS.md forbids vendored sources and
bulk imports. Cargo.toml lists apps/wm-dyn, libs/code_language,
libs/search, libs/tar, libs/loader_bundle and tools/makepad_builder,
and drops the two removed crates.

Squashed from work:
- Share Builder target across Makepad app builds
- Fix Builder workspace package selection
- Align Builder checkout progress with public Git API
- Detach built apps and show completion state
- Wait for Windows security scans
- Offer manual retry after Windows compiler locks
- docs: the agent workflow of record and the remote-control handoff protocol
- builder: dedicated-folder installer checks, catalog and runtime fixes; Windows job objects hold c_void handles
- tools: Arch USB clone/restore scripts, the qwen38 box scripts, and the G-belt serial test
- tools: the web server moves to makepad/webserver
- AGENTS.md: no vendored sources or bulk imports in the tree

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-18 12:17:59 +02:00

18 lines
734 B
Bash

#!/bin/sh
# A Dock launch has no project argument. Resolve everything from this bundle,
# so the complete Builder folder can move without rewriting absolute paths.
set -eu
app_dir=$(cd -P -- "$(dirname -- "$0")" && pwd)
install_dir=$(cd -P -- "$app_dir/../../.." && pwd)
unset MAKEPAD_LOADER_EMAIL MAKEPAD_PACKAGE_DIR
has_project=0
for arg in "$@"; do
[ "$arg" != --cwd ] || has_project=1
done
if [ "$has_project" = 0 ]; then
project=$(cat "$install_dir/installed/@APP_BINARY@.project")
case "$project" in /*) ;; *) project="$install_dir/$project" ;; esac
set -- --cwd "$project" "$@"
fi
mkdir -p "$install_dir/target"
exec "$app_dir/@APP_BINARY@-bin" "$@" </dev/null >>"$install_dir/target/@APP_BINARY@-app.log" 2>&1