#!/usr/bin/env bash set -euo pipefail # Build and bundle Clawdis into a minimal .app we can open. # Outputs to dist/Clawdis.app ROOT_DIR="$(cd "$(dirname "$0")/.." && pwd)" APP_ROOT="$ROOT_DIR/dist/Clawdis.app" BUILD_PATH="$ROOT_DIR/apps/macos/.build-local" PRODUCT="Clawdis" cd "$ROOT_DIR/apps/macos" echo "๐Ÿ”จ Building $PRODUCT (debug)" swift build -c debug --product "$PRODUCT" --build-path "$BUILD_PATH" BIN="$BUILD_PATH/debug/$PRODUCT" echo "๐Ÿงน Cleaning old app bundle" rm -rf "$APP_ROOT" mkdir -p "$APP_ROOT/Contents/MacOS" mkdir -p "$APP_ROOT/Contents/Resources" echo "๐Ÿ“„ Writing Info.plist" cat > "$APP_ROOT/Contents/Info.plist" <<'PLIST' CFBundleIdentifier com.steipete.clawdis CFBundleName Clawdis CFBundleExecutable Clawdis CFBundlePackageType APPL LSMinimumSystemVersion 15.0 LSUIElement PLIST echo "๐Ÿšš Copying binary" cp "$BIN" "$APP_ROOT/Contents/MacOS/Clawdis" chmod +x "$APP_ROOT/Contents/MacOS/Clawdis" echo "โœ… Bundle ready at $APP_ROOT" echo "๐Ÿš€ Launching app" open "$APP_ROOT"