29 lines
1.3 KiB
Bash
Executable File
29 lines
1.3 KiB
Bash
Executable File
#!/bin/sh
|
|
set -eu
|
|
SCRIPT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
|
|
PROJECT_DIR=$(dirname "$SCRIPT_DIR")
|
|
APP_DIR="$PROJECT_DIR/macos/.build/DataTest.app"
|
|
PACKAGE_TEMP_DIR=$(mktemp -d /private/tmp/datatest-app.XXXXXX)
|
|
STAGED_APP_DIR="$PACKAGE_TEMP_DIR/DataTest.app"
|
|
trap 'rm -rf "$PACKAGE_TEMP_DIR"' EXIT
|
|
|
|
swift build --package-path "$PROJECT_DIR/macos" --disable-sandbox
|
|
"$PROJECT_DIR/bin/generate-macos-icons"
|
|
mkdir -p "$STAGED_APP_DIR/Contents/MacOS" "$STAGED_APP_DIR/Contents/Resources"
|
|
cp -X "$PROJECT_DIR/macos/.build/debug/DataTestApp" "$STAGED_APP_DIR/Contents/MacOS/DataTestApp"
|
|
chmod 755 "$STAGED_APP_DIR/Contents/MacOS/DataTestApp"
|
|
cp -X "$PROJECT_DIR/macos/App/Info.plist" "$STAGED_APP_DIR/Contents/Info.plist"
|
|
cp -X "$PROJECT_DIR/macos/.build/generated-icons/DataTestIcon.icns" "$STAGED_APP_DIR/Contents/Resources/DataTestIcon.icns"
|
|
cp -X "$PROJECT_DIR/macos/.build/generated-icons/DataTestIcon-Dark.icns" "$STAGED_APP_DIR/Contents/Resources/DataTestIcon-Dark.icns"
|
|
xattr -cr "$STAGED_APP_DIR"
|
|
codesign --force --deep --sign - "$STAGED_APP_DIR"
|
|
codesign --verify --deep --strict "$STAGED_APP_DIR"
|
|
|
|
if [ -d "$APP_DIR" ]; then
|
|
mv "$APP_DIR" "$PACKAGE_TEMP_DIR/previous-DataTest.app"
|
|
fi
|
|
ditto --noextattr --noqtn "$STAGED_APP_DIR" "$APP_DIR"
|
|
xattr -cr "$APP_DIR"
|
|
codesign --verify --deep --strict "$APP_DIR"
|
|
echo "$APP_DIR"
|