fix: replace heredocs with printf to avoid shell heredoc delimiter indentation conflict with YAML block scalar
This commit is contained in:
@@ -122,49 +122,49 @@ jobs:
|
||||
cp -r "dist/${{ env.APP_NAME }}"/* "${APPDIR}/usr/bin/"
|
||||
|
||||
# Desktop entry
|
||||
cat > "${APPDIR}/${{ env.APP_NAME }}.desktop" << DESKTOP_EOF
|
||||
[Desktop Entry]
|
||||
Name=Warlock Studio
|
||||
Comment=AI-powered video upscaling, restoration and frame interpolation
|
||||
Exec=Warlock-Studio
|
||||
Icon=warlock-studio
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=Graphics;Video;AudioVideo;
|
||||
DESKTOP_EOF
|
||||
printf '%s\n' \
|
||||
'[Desktop Entry]' \
|
||||
'Name=Warlock Studio' \
|
||||
'Comment=AI-powered video upscaling, restoration and frame interpolation' \
|
||||
'Exec=Warlock-Studio' \
|
||||
'Icon=warlock-studio' \
|
||||
'Terminal=false' \
|
||||
'Type=Application' \
|
||||
'Categories=Graphics;Video;AudioVideo;' \
|
||||
> "${APPDIR}/${{ env.APP_NAME }}.desktop"
|
||||
|
||||
# AppRun — entry point
|
||||
cat > "${APPDIR}/AppRun" << 'APPRUN_EOF'
|
||||
#!/bin/bash
|
||||
HERE="$(dirname "$(readlink -f "$0")")"
|
||||
export PATH="${HERE}/usr/bin:${PATH}"
|
||||
export LD_LIBRARY_PATH="${HERE}/usr/bin/_internal:${LD_LIBRARY_PATH}"
|
||||
exec "${HERE}/usr/bin/Warlock-Studio" "$@"
|
||||
APPRUN_EOF
|
||||
printf '%s\n' \
|
||||
'#!/bin/bash' \
|
||||
'HERE="$(dirname "$(readlink -f "$0")")"' \
|
||||
'export PATH="${HERE}/usr/bin:${PATH}"' \
|
||||
'export LD_LIBRARY_PATH="${HERE}/usr/bin/_internal:${LD_LIBRARY_PATH}"' \
|
||||
'exec "${HERE}/usr/bin/Warlock-Studio" "$@"' \
|
||||
> "${APPDIR}/AppRun"
|
||||
chmod +x "${APPDIR}/AppRun"
|
||||
|
||||
# Icon: try to convert .ico, fallback to placeholder PNG
|
||||
if command -v python3 &>/dev/null; then
|
||||
python3 << 'PYEOF'
|
||||
import os, base64
|
||||
apdir = os.environ.get('APPDIR', 'dist/Warlock-Studio.AppDir')
|
||||
png_path = os.path.join(apdir, 'warlock-studio.png')
|
||||
# Write a 48x48 transparent PNG as icon placeholder
|
||||
with open(png_path, 'wb') as f:
|
||||
f.write(base64.b64decode(
|
||||
'iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB'
|
||||
'WElEQVRoQ+2YOw7CMBBEQ0WHaDgBByDhCBScgAMQdFScgJoj0HABQqJAwk0CQhL5s5KVj0rs'
|
||||
'2LFj165nRzL9f+cBAQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoj8iMhJ'
|
||||
'AL4AZACYi0gSkQKAOwDc3H0AUJQdAHBXROSdSaYAQB3D1N0BoO6fA+DuTQA4m80uALABAGd3'
|
||||
'B4Cq+yf7o+sEAK7uDgBZ3QcAOAB0R5hPJpPl9/t9X5bldz6fdwCw2+2+6v5RluUDABaLxUvd'
|
||||
'P8uyvANARIRlWX4BwGaz+aymKYviiYhwdV+O4xjeK6WkqioCgLu7EEKIiMy6rrsCQFXViYik'
|
||||
'lHijASGEMKZq3meMRNM0KaV0mE6nJymlMwCklNLUhMPhoOu6LgBQKUUppTTFQMYYSimlqQbd'
|
||||
'b5RS4t2IiIgaY4wx8toYoymlNE1ozzljjAYAgKPRSNV9DgAiYowx3ogBACEEz+fzEwDyPM/b'
|
||||
'tj0BQNM0eZq238LD4A8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhgAJ3F'
|
||||
'Af+7OiaAAAAASUVORK5CYII='
|
||||
))
|
||||
print(f'Icon written: {png_path}')
|
||||
PYEOF
|
||||
printf '%s\n' \
|
||||
'import os, base64' \
|
||||
'apdir = os.environ.get("APPDIR", "dist/Warlock-Studio.AppDir")' \
|
||||
'png_path = os.path.join(apdir, "warlock-studio.png")' \
|
||||
'with open(png_path, "wb") as f:' \
|
||||
' f.write(base64.b64decode(' \
|
||||
" 'iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB'" \
|
||||
" 'WElEQVRoQ+2YOw7CMBBEQ0WHaDgBByDhCBScgAMQdFScgJoj0HABQqJAwk0CQhL5s5KVj0rs'" \
|
||||
" '2LFj165nRzL9f+cBAQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoj8iMhJ'" \
|
||||
" 'AL4AZACYi0gSkQKAOwDc3H0AUJQdAHBXROSdSaYAQB3D1N0BoO6fA+DuTQA4m80uALABAGd3'" \
|
||||
" 'B4Cq+yf7o+sEAK7uDgBZ3QcAOAB0R5hPJpPl9/t9X5bldz6fdwCw2+2+6v5RluUDABaLxUvd'" \
|
||||
" 'P8uyvANARIRlWX4BwGaz+aymKYviiYhwdV+O4xjeK6WkqioCgLu7EEKIiMy6rrsCQFXViYik'" \
|
||||
" 'lHijASGEMKZq3meMRNM0KaV0mE6nJymlMwCklNLUhMPhoOu6LgBQKUUppTTFQMYYSimlqQbd'" \
|
||||
" 'b5RS4t2IiIgaY4wx8toYoymlNE1ozzljjAYAgKPRSNV9DgAiYowx3ogBACEEz+fzEwDyPM/b'" \
|
||||
" 'tj0BQNM0eZq238LD4A8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhgAJ3F'" \
|
||||
" 'Af+7OiaAAAAASUVORK5CYII='" \
|
||||
'))' \
|
||||
"print(f'Icon written: {png_path}')" \
|
||||
> /tmp/gen_icon.py
|
||||
python3 /tmp/gen_icon.py
|
||||
fi
|
||||
|
||||
# Download appimagetool
|
||||
|
||||
Reference in New Issue
Block a user