diff --git a/scripts/package_release.sh b/scripts/package_release.sh index 46f401e..0a5c21a 100644 --- a/scripts/package_release.sh +++ b/scripts/package_release.sh @@ -100,6 +100,12 @@ cp "$HIPERISO_ROOT/config/hiperiso.json.example" "$PAYLOAD/config/" # ── version ───────────────────────────────────────────────────────── echo "1.0.0" > "$PAYLOAD/hiperiso/version" +# Extract Ventoy-derived support files for direct boot path +if [ -f "$HIPERISO_ROOT/vendor/support-x64.tar.xz" ]; then + tar -xJf "$HIPERISO_ROOT/vendor/support-x64.tar.xz" -C "$STAGING/" + cp -a "$STAGING/support-x64/"* "$PAYLOAD/hiperiso/" +fi + rm -f "$PAYLOAD/log.txt" sed -i 's/ventoy/hiperiso/g' "$PAYLOAD/grub/i386-pc/moddep.lst" 2>/dev/null || true @@ -146,6 +152,24 @@ for f in "$PAYLOAD"/tool/x86_64/*; do done mcopy -i "$ESP_IMG" "$PAYLOAD/hiperiso/version" ::/hiperiso/ +for f in "$PAYLOAD"/hiperiso/*; do + [ -f "$f" ] || continue + name=$(basename "$f") + case "$name" in hiperiso.disk.img*) continue ;; esac + mcopy -i "$ESP_IMG" "$f" ::/hiperiso/ 2>/dev/null || true +done +for d in 7z imdisk; do + if [ -d "$PAYLOAD/hiperiso/$d" ]; then + mmd -i "$ESP_IMG" "::/hiperiso/$d" 2>/dev/null || true + for sub in "$PAYLOAD/hiperiso/$d"/*/; do + [ -d "$sub" ] || continue + subdir=$(basename "$sub") + mmd -i "$ESP_IMG" "::/hiperiso/$d/$subdir" 2>/dev/null || true + mcopy -s -i "$ESP_IMG" "$sub." "::/hiperiso/$d/$subdir/" 2>/dev/null || true + done + fi +done + xz --check=crc32 "$ESP_IMG" echo "=== hiperiso release package assembled ===" diff --git a/vendor/support-x64.tar.xz b/vendor/support-x64.tar.xz new file mode 100644 index 0000000..f3e5d5d Binary files /dev/null and b/vendor/support-x64.tar.xz differ