#!/bin/bash set -e SOURCE_ICON="$1" ICONSET_DIR="AppIcon.iconset" if [ -z "$SOURCE_ICON" ]; then echo "Usage: $0 " exit 1 fi mkdir -p "$ICONSET_DIR" # Resize to standard icon sizes sips -z 16 16 -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_16x16.png" sips -z 32 32 -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_16x16@2x.png" sips -z 32 32 -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_32x32.png" sips -z 64 64 -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_32x32@2x.png" sips -z 128 128 -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_128x128.png" sips -z 256 256 -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_128x128@2x.png" sips -z 256 256 -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_256x256.png" sips -z 512 512 -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_256x256@2x.png" sips -z 512 512 -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_512x512.png" sips -z 1024 1024 -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_512x512@2x.png" # Convert to icns iconutil -c icns "$ICONSET_DIR" # Cleanup rm -rf "$ICONSET_DIR" echo "AppIcon.icns created successfully."