Usa l'icona real de icon/ al bundle macOS i al «Quant a»

This commit is contained in:
2026-05-30 15:56:51 +02:00
parent a71a1be88d
commit fd8eedab76
6 changed files with 12 additions and 130 deletions
+8 -24
View File
@@ -40,39 +40,23 @@ echo "[build] versión: v${VERSION}"
echo "[build] limpiando artefactos previos…"
rm -rf dist build app.build app.dist app.onefile-build
# ---------------------------------------------------------------------------
# Construye assets/icon.icns desde assets/icon.png (regenerable con make_icon.py).
# ---------------------------------------------------------------------------
build_icns() {
local png="assets/icon.png"
local icns="assets/icon.icns"
if [ ! -f "$png" ]; then
echo "[build] generando icono provisional (assets/icon.png)…"
QT_QPA_PLATFORM=offscreen .venv/bin/python assets/make_icon.py
fi
echo "[build] construyendo ${icns}"
local iconset="assets/icon.iconset"
rm -rf "$iconset"; mkdir -p "$iconset"
local s
for s in 16 32 128 256 512; do
sips -z "$s" "$s" "$png" --out "$iconset/icon_${s}x${s}.png" >/dev/null
sips -z $((s*2)) $((s*2)) "$png" --out "$iconset/icon_${s}x${s}@2x.png" >/dev/null
done
iconutil -c icns "$iconset" -o "$icns"
rm -rf "$iconset"
}
ICON_ICNS="icon/icon.icns"
ICON_PNG="icon/icon.png"
if [ "$OS" = "darwin" ]; then
# -------------------------------------------------------------------------
# macOS: app bundle + DMG
# -------------------------------------------------------------------------
build_icns
if [ ! -f "$ICON_ICNS" ]; then
echo "[build] falta ${ICON_ICNS}" >&2
exit 1
fi
echo "[build] compilando jlauncher.app (PySide6; puede tardar varios minutos)…"
.venv/bin/python -m nuitka \
--standalone \
--macos-create-app-bundle \
--macos-app-icon=assets/icon.icns \
--macos-app-icon="$ICON_ICNS" \
--macos-app-name=jlauncher \
--macos-app-version="$VERSION" \
--macos-signed-app-name=com.jailgames.jlauncher \
@@ -102,7 +86,7 @@ if [ "$OS" = "darwin" ]; then
echo "[build] sembrando games.toml y icon.png en Contents/Resources…"
cp games.toml "$APP/Contents/Resources/games.toml"
cp assets/icon.png "$APP/Contents/Resources/icon.png" # usado por el diálogo «Quant a»
cp "$ICON_PNG" "$APP/Contents/Resources/icon.png" # usado por el diálogo «Quant a»
# Bundle ad-hoc (sin Developer ID): quitamos quarantine para abrir sin fricción local.
xattr -dr com.apple.quarantine "$APP" 2>/dev/null || true