generate_icns.sh

1.2 KB · raw

1#!/bin/bash2set -e34SOURCE_ICON="$1"5ICONSET_DIR="AppIcon.iconset"67if [ -z "$SOURCE_ICON" ]; then8    echo "Usage: $0 <source_icon_path>"9    exit 110fi1112mkdir -p "$ICONSET_DIR"1314# Resize to standard icon sizes15sips -z 16 16     -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_16x16.png"16sips -z 32 32     -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/[email protected]"17sips -z 32 32     -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_32x32.png"18sips -z 64 64     -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/[email protected]"19sips -z 128 128   -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_128x128.png"20sips -z 256 256   -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/[email protected]"21sips -z 256 256   -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_256x256.png"22sips -z 512 512   -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/[email protected]"23sips -z 512 512   -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/icon_512x512.png"24sips -z 1024 1024 -s format png "$SOURCE_ICON" --out "$ICONSET_DIR/[email protected]"2526# Convert to icns27iconutil -c icns "$ICONSET_DIR"2829# Cleanup30rm -rf "$ICONSET_DIR"3132echo "AppIcon.icns created successfully."