Files
NexaVPN/desktop-client/scripts/gen-icns.sh

34 lines
1.1 KiB
Bash

#!/usr/bin/env bash
set -eu
ROOT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
ICONS_DIR="${ROOT_DIR}/src-tauri/icons"
ICONSET="${ICONS_DIR}/icon.iconset"
SOURCE="${ICONS_DIR}/icon.png"
OUTPUT="${ICONS_DIR}/icon.icns"
if [ -f "${OUTPUT}" ]; then
echo "icon.icns already exists, skipping generation."
exit 0
fi
echo "Generating ${OUTPUT} from ${SOURCE}..."
mkdir -p "${ICONSET}"
sips -z 16 16 "${SOURCE}" --out "${ICONSET}/icon_16x16.png"
sips -z 32 32 "${SOURCE}" --out "${ICONSET}/icon_16x16@2x.png"
sips -z 32 32 "${SOURCE}" --out "${ICONSET}/icon_32x32.png"
sips -z 64 64 "${SOURCE}" --out "${ICONSET}/icon_32x32@2x.png"
sips -z 128 128 "${SOURCE}" --out "${ICONSET}/icon_128x128.png"
sips -z 256 256 "${SOURCE}" --out "${ICONSET}/icon_128x128@2x.png"
sips -z 256 256 "${SOURCE}" --out "${ICONSET}/icon_256x256.png"
sips -z 512 512 "${SOURCE}" --out "${ICONSET}/icon_256x256@2x.png"
sips -z 512 512 "${SOURCE}" --out "${ICONSET}/icon_512x512.png"
sips -z 1024 1024 "${SOURCE}" --out "${ICONSET}/icon_512x512@2x.png"
iconutil -c icns "${ICONSET}" -o "${OUTPUT}"
rm -rf "${ICONSET}"
echo "Generated ${OUTPUT}"