release prep

This commit is contained in:
Justin Visser 2026-02-21 18:36:27 +01:00
parent ca565e2530
commit 5499904cef
22 changed files with 111 additions and 119 deletions

View file

@ -3,8 +3,10 @@ set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
FRONTEND_DIR="$(cd "${SCRIPT_DIR}/.." && pwd)"
SRC_LOGO="${FRONTEND_DIR}/src/logo.png"
PUBLIC_DIR="${FRONTEND_DIR}/public"
SRC_LOGO="${PUBLIC_DIR}/scholar_logo.png"
SRC_FAVICON="${PUBLIC_DIR}/scholar_favicon.png"
SRC_FAVICON_ALT="${PUBLIC_DIR}/scholarr_favicon.png"
TMP_DIR="$(mktemp -d)"
TMP_ALPHA="${TMP_DIR}/logo-alpha-mask.png"
TMP_GLYPH="${TMP_DIR}/logo-glyph-white.png"
@ -23,22 +25,36 @@ if [[ ! -f "${SRC_LOGO}" ]]; then
exit 1
fi
if [[ ! -f "${SRC_FAVICON}" && -f "${SRC_FAVICON_ALT}" ]]; then
SRC_FAVICON="${SRC_FAVICON_ALT}"
fi
mkdir -p "${PUBLIC_DIR}"
# Build a high-contrast icon: solid brand background + white logo.
magick "${SRC_LOGO}" -alpha extract "${TMP_ALPHA}"
magick -size 1024x1024 xc:white "${TMP_ALPHA}" \
-compose CopyOpacity \
-composite \
"${TMP_GLYPH}"
if [[ -f "${SRC_FAVICON}" ]]; then
# Prefer dedicated favicon artwork when provided.
magick "${SRC_FAVICON}" \
-background none \
-gravity center \
-resize 1024x1024^ \
-extent 1024x1024 \
"${TMP_ICON}"
else
# Build a high-contrast icon from the logo: solid brand background + white logo.
magick "${SRC_LOGO}" -alpha extract "${TMP_ALPHA}"
magick -size 1024x1024 xc:white "${TMP_ALPHA}" \
-compose CopyOpacity \
-composite \
"${TMP_GLYPH}"
magick -size 1024x1024 "xc:${BRAND_COLOR}" "${TMP_CANVAS}"
magick "${TMP_GLYPH}" -resize 760x760 "${TMP_GLYPH}"
magick "${TMP_CANVAS}" "${TMP_GLYPH}" \
-gravity center \
-compose over \
-composite \
"${TMP_ICON}"
magick -size 1024x1024 "xc:${BRAND_COLOR}" "${TMP_CANVAS}"
magick "${TMP_GLYPH}" -resize 760x760 "${TMP_GLYPH}"
magick "${TMP_CANVAS}" "${TMP_GLYPH}" \
-gravity center \
-compose over \
-composite \
"${TMP_ICON}"
fi
magick "${TMP_ICON}" -resize 16x16 "${PUBLIC_DIR}/favicon-16x16.png"
magick "${TMP_ICON}" -resize 32x32 "${PUBLIC_DIR}/favicon-32x32.png"
@ -53,4 +69,4 @@ magick \
rm -rf "${TMP_DIR}"
echo "Generated favicon + app icon assets in ${PUBLIC_DIR}"
echo "Generated favicon + app icon assets in ${PUBLIC_DIR} (logo: ${SRC_LOGO}, favicon source: ${SRC_FAVICON})"