#!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" ROOT_DIR="$(cd "$SCRIPT_DIR/.." && pwd)" APP_NAME="MastermindPOC" BUILD_DIR="$ROOT_DIR/build" APP_DIR="$BUILD_DIR/$APP_NAME.app" CONTENTS_DIR="$APP_DIR/Contents" MACOS_DIR="$CONTENTS_DIR/MacOS" export CLANG_MODULE_CACHE_PATH="$ROOT_DIR/.build/module-cache" cd "$ROOT_DIR" swift build --product "$APP_NAME" rm -rf "$APP_DIR" mkdir -p "$MACOS_DIR" cp "$ROOT_DIR/.build/debug/$APP_NAME" "$MACOS_DIR/$APP_NAME" chmod +x "$MACOS_DIR/$APP_NAME" cat > "$CONTENTS_DIR/Info.plist" <<'PLIST' CFBundleDevelopmentRegion en CFBundleDisplayName Mastermind POC CFBundleExecutable MastermindPOC CFBundleIdentifier app.mastermind.poc CFBundleInfoDictionaryVersion 6.0 CFBundleName Mastermind POC CFBundlePackageType APPL CFBundleShortVersionString 0.1.0 CFBundleVersion 1 LSMinimumSystemVersion 14.0 LSUIElement NSMicrophoneUsageDescription Mastermind POC uses microphone audio only when you start microphone capture. PLIST printf 'APPL????' > "$CONTENTS_DIR/PkgInfo" echo "Built $APP_DIR"