26 lines
952 B
Bash
Executable File
26 lines
952 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
VER="${1:?v3|v4}"
|
|
BINPATH="${2:-../../server-ui/target/release/avidaed_onefile}"
|
|
OUTDIR="${3:-.}"
|
|
APP="Avida-ED-${VER}.app"
|
|
ZIP="Avida-ED-${VER}-macOS.zip"
|
|
rm -rf "$APP"
|
|
mkdir -p "$APP/Contents/MacOS" "$APP/Contents/Resources"
|
|
cp "$BINPATH" "$APP/Contents/MacOS/Avida-ED"
|
|
chmod +x "$APP/Contents/MacOS/Avida-ED"
|
|
# Info.plist
|
|
sed "s/{{VER}}/${VER}/g" "$(dirname "$0")/info.plist.tmpl" > "$APP/Contents/Info.plist"
|
|
# Icon placeholder
|
|
sips -s format icns /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/GenericApplicationIcon.icns --out "$APP/Contents/Resources/AppIcon.icns" >/dev/null 2>&1 || true
|
|
if command -v codesign >/dev/null 2>&1; then
|
|
codesign --force --deep --sign - "$APP" >/dev/null 2>&1 || true
|
|
fi
|
|
mkdir -p "$OUTDIR"
|
|
if command -v ditto >/dev/null 2>&1; then
|
|
ditto -c -k --keepParent "$APP" "$OUTDIR/$ZIP"
|
|
else
|
|
zip -qry "$OUTDIR/$ZIP" "$APP"
|
|
fi
|
|
echo "Wrote $APP and $OUTDIR/$ZIP"
|