build: sematkan info zsync ke AppImage (appimageupdatetool langsung bisa dipakai)
docs: catat bahwa rilis pasca-v1.2.3 membawa update information
This commit is contained in:
1
.github/workflows/release.yml
vendored
1
.github/workflows/release.yml
vendored
@@ -29,6 +29,7 @@ jobs:
|
|||||||
- name: Build AppImage
|
- name: Build AppImage
|
||||||
env:
|
env:
|
||||||
APPIMAGE_EXTRACT_AND_RUN: "1"
|
APPIMAGE_EXTRACT_AND_RUN: "1"
|
||||||
|
UPDATE_INFO_URL: https://github.com/${{ github.repository }}/releases/download/${{ github.ref_name }}/GAMEMAX-LCD-x86_64.AppImage.zsync
|
||||||
run: bash packaging/build_appimage.sh
|
run: bash packaging/build_appimage.sh
|
||||||
|
|
||||||
- name: Smoke test the bundle (no display)
|
- name: Smoke test the bundle (no display)
|
||||||
|
|||||||
@@ -225,7 +225,9 @@ The app keeps itself current from GitHub Releases:
|
|||||||
|
|
||||||
Each release publishes three assets: the AppImage, its `.sha256`, and a `.zsync` file for
|
Each release publishes three assets: the AppImage, its `.sha256`, and a `.zsync` file for
|
||||||
`appimageupdatetool` / AppImageUpdate (delta updates). The zsync file is optional — the
|
`appimageupdatetool` / AppImageUpdate (delta updates). The zsync file is optional — the
|
||||||
built-in updater does not need it.
|
built-in updater does not need it — but the AppImage also carries the zsync URL as embedded
|
||||||
|
update information (releases built after v1.2.3), so `appimageupdatetool ./GAMEMAX-LCD.AppImage`
|
||||||
|
works directly.
|
||||||
|
|
||||||
If the check fails (offline, proxy), the message appears in the app log. `GAMEMAX_DEBUG=1`
|
If the check fails (offline, proxy), the message appears in the app log. `GAMEMAX_DEBUG=1`
|
||||||
also mirrors the log to stdout for headless runs.
|
also mirrors the log to stdout for headless runs.
|
||||||
|
|||||||
@@ -51,13 +51,19 @@ Terminal=false
|
|||||||
Categories=System;Utility;
|
Categories=System;Utility;
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
# 4. package
|
# 4. package (UPDATE_INFO_URL menyematkan info zsync agar appimageupdatetool bisa jalan)
|
||||||
|
UPDATE_INFO_ARG=""
|
||||||
|
if [ -n "${UPDATE_INFO_URL:-}" ]; then
|
||||||
|
UPDATE_INFO_ARG="-u zsync|${UPDATE_INFO_URL}"
|
||||||
|
echo "embedding update information: ${UPDATE_INFO_URL}"
|
||||||
|
fi
|
||||||
if [ ! -x "$BUILD_DIR/appimagetool" ]; then
|
if [ ! -x "$BUILD_DIR/appimagetool" ]; then
|
||||||
curl -fsSL "$APPIMAGETOOL_URL" -o "$BUILD_DIR/appimagetool"
|
curl -fsSL "$APPIMAGETOOL_URL" -o "$BUILD_DIR/appimagetool"
|
||||||
chmod +x "$BUILD_DIR/appimagetool"
|
chmod +x "$BUILD_DIR/appimagetool"
|
||||||
fi
|
fi
|
||||||
OUT="$OUT_DIR/GAMEMAX-LCD-x86_64.AppImage"
|
OUT="$OUT_DIR/GAMEMAX-LCD-x86_64.AppImage"
|
||||||
ARCH=x86_64 "$BUILD_DIR/appimagetool" "$APPDIR" "$OUT"
|
# shellcheck disable=SC2086
|
||||||
|
ARCH=x86_64 "$BUILD_DIR/appimagetool" $UPDATE_INFO_ARG "$APPDIR" "$OUT"
|
||||||
chmod +x "$OUT"
|
chmod +x "$OUT"
|
||||||
echo "built: $OUT"
|
echo "built: $OUT"
|
||||||
echo "verify: $OUT --selftest (or APPIMAGE_EXTRACT_AND_RUN=1 $OUT --selftest)"
|
echo "verify: $OUT --selftest (or APPIMAGE_EXTRACT_AND_RUN=1 $OUT --selftest)"
|
||||||
|
|||||||
Reference in New Issue
Block a user