2025-08-04 18:42:05 +02:00
|
|
|
#!/bin/sh -e
|
|
|
|
|
2025-09-11 00:22:24 -03:00
|
|
|
# SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project
|
2025-08-04 18:42:05 +02:00
|
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
|
2025-09-08 23:24:36 -03:00
|
|
|
# Check dependencies
|
|
|
|
for cmd in png2icns magick svgo; do
|
2025-09-09 18:03:23 -03:00
|
|
|
if ! command -v "$cmd" >/dev/null 2>&1; then
|
2025-09-08 23:24:36 -03:00
|
|
|
pkg="$cmd"
|
|
|
|
case "$cmd" in
|
|
|
|
png2icns) pkg="icnsutils" ;;
|
|
|
|
magick) pkg="imagemagick" ;;
|
|
|
|
esac
|
|
|
|
echo "Error: command '$cmd' not found. Install the package '$pkg'."
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
done
|
2025-08-04 18:42:05 +02:00
|
|
|
|
2025-09-09 18:03:23 -03:00
|
|
|
EDEN_SVG_ICO="dist/dev.eden_emu.eden.svg"
|
2025-09-08 23:24:36 -03:00
|
|
|
|
2025-09-09 18:03:23 -03:00
|
|
|
# Create temporary PNG file safely (and POSIX-compliant)
|
|
|
|
TMP_PNG=$(mktemp /tmp/eden-tmp-XXXXXX)
|
|
|
|
TMP_PNG="${TMP_PNG}.png"
|
|
|
|
|
|
|
|
# Optimize SVG
|
2025-09-08 23:24:36 -03:00
|
|
|
svgo --multipass "$EDEN_SVG_ICO"
|
|
|
|
|
2025-09-09 18:03:23 -03:00
|
|
|
# Generate ICO
|
2025-09-08 23:24:36 -03:00
|
|
|
magick \
|
|
|
|
-density 256x256 -background transparent "$EDEN_SVG_ICO" \
|
|
|
|
-define icon:auto-resize -colors 256 "dist/eden.ico"
|
|
|
|
|
2025-09-09 18:03:23 -03:00
|
|
|
# Generate BMP
|
2025-09-08 23:24:36 -03:00
|
|
|
magick "$EDEN_SVG_ICO" -resize 256x256 -background transparent "dist/yuzu.bmp"
|
|
|
|
|
2025-09-09 18:03:23 -03:00
|
|
|
# Generate PNG for ICNS
|
2025-09-08 23:24:36 -03:00
|
|
|
magick -size 1024x1024 -background transparent "$EDEN_SVG_ICO" "$TMP_PNG"
|
|
|
|
|
2025-09-09 18:03:23 -03:00
|
|
|
# Generate ICNS
|
2025-09-08 23:24:36 -03:00
|
|
|
png2icns "dist/eden.icns" "$TMP_PNG"
|
|
|
|
|
2025-09-09 18:03:23 -03:00
|
|
|
# Copy ICNS to Yuzu file
|
2025-09-08 23:24:36 -03:00
|
|
|
cp "dist/eden.icns" "dist/yuzu.icns"
|
2025-09-09 18:03:23 -03:00
|
|
|
|
|
|
|
# Remove temporary PNG
|
2025-09-08 23:24:36 -03:00
|
|
|
rm -f "$TMP_PNG"
|
2025-09-09 18:03:23 -03:00
|
|
|
|