Commit Graph

15 Commits

Author SHA1 Message Date
vasilito ce5fa09a95 fix: GPT partition notation + double-parentheses in hiperiso_boot
Two critical bugs prevented the hypervisor boot path from working:

1. GRUB2 EFI requires explicit gpt/msdos prefix in partition names.
   The shorthand (hd0,2) does NOT resolve for GPT disks. Fixed by
   having vt_load_part_table set hiso_iso_part/hiso_efi_part with
   correct notation based on detected partition table type.

2. hiperiso_boot C function wrapped $hiso_efi_part in extra parens:
   ($hiso_efi_part) expanded to ((hd0,gpt2)) which GRUB2 parsed as
   device name (hd0,gpt2) with literal parens. Fixed by using
   ${hiso_efi_part} without wrapping.

QEMU-verified: kernel boots, loads initramfs, runs /init with all
hiperiso_* parameters correctly passed through kernel cmdline.
2026-07-01 01:23:37 +03:00
vasilito ddec43370a feat: RedBear OS branded boot background
Replaces placeholder with professional branded background:
- RedBear bear logo in top-left corner (red/crimson bear head)
- Green 'hiperiso' title with glow effect
- 'Hypervisor ISO Boot Tool' subtitle
- Red accent line under title
- 'A RedBear OS Project' attribution
- Faint bear watermark on right side (8% opacity)
- 'www.hiperiso.net' footer in green
- Dark charcoal gradient background

Visual identity derived from RedBear OS project assets on
gitea.redbearos.org. hiperiso is a subproject of RedBear OS.

QEMU+OVMF verified: all branding elements render correctly
in GRUB2 menu with test.iso listed.
2026-07-01 00:14:22 +03:00
vasilito 9836bd0f38 feat: Secure Boot support + hiperiso-branded background
- Add mmx64.efi (MOK Manager) to EFI/BOOT/ for Secure Boot enrollment
- Add ENROLL_THIS_KEY_IN_MOKMANAGER.cer to tool/ for key enrollment
- Replace Ventoy background.png with hiperiso-branded one (dark navy
  background, green 'hiperiso' title, 'Hypervisor ISO Boot Tool' subtitle)
- Verified via QEMU+OVMF boot test: GRUB2 boots, passes all validation
  checks, shows hiperiso menu with correct branding, zero Ventoy refs
2026-06-30 22:41:11 +03:00
vasilito 42de425469 refactor: rename vlnk to hlnk in GRUB2 reference sources
Apply vlnk→hlnk, VLNK→HLNK, Vlnk→Hlnk rename to all 7 reference
header and source files. These are the project-side copies used for
cross-referencing — the build applies the same transformation to the
vendored tarball at compile time.
2026-06-30 19:53:51 +03:00
vasilito 514f8a13e0 refactor: rename vlnk to hlnk in hisolnk tool
Rename vlnk.c→hlnk.c, vlnk.h→hlnk.h. Update crc32.c and main_linux.c
references. The file format concept changes from 'Ventoy Link' to
'Hiperiso Link' throughout. hisolnk tool builds successfully (19K).
2026-06-30 19:53:35 +03:00
vasilito 2750e0bf78 fix: restore real decompression impls and add dual boot path
hiperiso_cmd.c: Remove stub implementations of hiperiso_gzip_compress,
lzx_decompress, xca_decompress. Restore real miniz-based gzip compression
and include miniz.h. Add 'Hypervisor (KVM + Boot Logging)' as option 7
in secondary boot menu with hiso_hv_mode env var check.

grub.cfg: Replace stripped 473-line version with full 2806-line config
restoring all OS-type direct boot paths (Linux, Windows, Unix, WIM, VHD,
IMG). Add hiso_hv_mode checks to all 8 menuentry functions and
post-secondary-menu hypervisor dispatch. Set HISO_HYPERVISOR_MENU=1
by default so secondary menu always appears.
2026-06-30 19:53:23 +03:00
vasilito c559bb1723 fix: rename vtoy/Ventoy filenames to hiso/Hiperiso in web assets
HTML references hiso.css/hiso.js but files were still named vtoy.css/vtoy.js
causing 404s in the plugson and WebUI web interfaces.

Renamed:
- vtoy.css → hiso.css (assets + plugson)
- vtoy.js → hiso.js (assets + plugson)
- jquery.vtoy.alert.js → jquery.hiso.alert.js (assets + plugson)
- jquery.validate.vtoymethods.js → jquery.validate.hisomethods.js (plugson)
- VentoyLogo.png → HiperisoLogo.png (assets)
2026-06-30 16:08:40 +03:00
vasilito 8d9eb9b4e6 chore: remove build artifacts from tracking 2026-06-30 16:00:00 +03:00
vasilito 759ccf30dd fix: GUI build and web asset renaming
Qt5 .pro file:
- Replace hardcoded /home/panda/ paths with $$PWD-relative paths
- All SOURCES/HEADERS/FORMS/INCLUDEPATH use $$PWD for shadow build safety
- Fixes qmake path resolution from any working directory

QT source content:
- Rename Ventoy2DiskWindow → Hiperiso2DiskWindow (class, UI, translation context)
- Rename VTOY_* macros → HISO_* (JSON_FMT, DEVICE_USB, EFI_PART_BYTES)
- Rename vtoydata → hisodata (struct field)
- Zero Ventoy/ventoy/VTOY/vtoy references remain in QT source

Plugson www and assets/webui:
- Rename all ventoy/vtoy → hiperiso/hiso in HTML, JS, CSS
- Fix critical AJAX endpoint mismatch: /vtoy/json → /hiso/json
  (C backend already used /hiso/json, JS was stale)

Build artifacts cleanup:
- Remove stale QT/build/ and .pro.user from git
- Add to .gitignore

Verified: Full build_gui_all.sh succeeds — Qt5 (199K), GTK3 (383K),
WebUI (247K), Plugson (245K), hisocli (52K), hisolnk (18K)
2026-06-30 15:59:38 +03:00
vasilito 025ae2701c refactor: make hiperiso fully standalone — zero Ventoy dependency
Vendor all previously external dependencies into the hiperiso repo:

Vendored:
- vendor/grub2-modsrc.tar.xz (364K) — GRUB2 build overlay, with dead
  compression files (huffman, lzx, xpress, miniz) removed from both
  the tarball and Makefile.core.def
- vendor/grub-i386-pc/ — BIOS boot images (boot.img, core.img, .lst)
- vendor/tool-x86_64/ — pre-built utility binaries (ash, hexdump,
  mkexfatfs, mount.exfat-fuse, xzcat)
- assets/ — languages.json, HiperisoGTK.glade, WebUI (renamed)
- src/gui/ — full GUI source tree (Qt5, GTK3, Web, Core, Libs)
- src/plugson/ — full Plugson web config tool source
- src/hisolnk/ — Vlnk tool source (renamed)

Dead code removed:
- src/grub2/huffman.c, huffman.h, lzx.c, lzx.h, xpress.c, xpress.h,
  miniz.c, miniz.h, wimboot.h — WIM/injection compression (~3700 lines)
- hiperiso_gzip_compress() stubbed (never called in hypervisor path)
- lzx_decompress(), xca_decompress() stubbed (WIM decompression)

Build scripts updated:
- build_grub2_204.sh: uses vendor/grub2-modsrc.tar.xz
- package_release.sh: uses vendor/ and assets/ paths
- build_gui_all.sh: uses src/gui/, src/plugson/, src/hisolnk/
- fork_ventoy.sh: removed (one-time fork complete)

Verified: GRUB2 BOOTX64.EFI builds clean (1.8M, 275 hiperiso symbols)
Zero reference/Ventoy/ references remain in any build script.
2026-06-30 15:40:05 +03:00
vasilito 27401b2cd2 Add Plugson web-based plugin configuration tool 2026-06-30 14:31:05 +03:00
vasilito 776a5adc2c Add installer source: Hiperiso2Disk, WebUI, Plugson launchers 2026-06-30 14:31:04 +03:00
vasilito a4361c5733 Add GUI source: Qt5, GTK3 with premium branding (#2d8e57) 2026-06-30 14:31:04 +03:00
vasilito fd566980a2 Add CLI tools: hisocli, hisofat, hisogpt with HisoCrc32 2026-06-30 14:31:04 +03:00
vasilito 8b473c6470 Add GRUB2 hiperiso module source (hiperiso_cmd.c, 7335 lines)
Forked from Ventoy ventoy_cmd.c with full rename and net_dump support.
2026-06-30 14:30:39 +03:00