Commit Graph

16 Commits

Author SHA1 Message Date
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 acc2d93307 fix: PCI summary JSON parser to match real QEMU info pci output
The awk patterns in hw_gen_pci_json() targeted a hypothetical output format
that never matched QEMU's actual HMP 'info pci' response:

- /^Bus / anchored to line start, but QEMU outputs '  Bus  ' (2 leading spaces)
- /vendor_id = / expected 'vendor_id = 0x8086', but QEMU prints 'PCI device 8086:2922'
- /device_id = / expected separate line, but vendor:device are on the same line
- /class = / expected 'class = 0x010601', but QEMU prints 'SATA controller:' or 'Class 0106:'
- IRQ field expected 'IRQ 0.' but QEMU prints 'IRQ 5, pin A'

Result: pci_summary.json was always invalid JSON with orphaned key-value pairs.

Fix verified against QEMU source (pci-hmp-cmds.c:31-51) and tested with
realistic 4-device output: all devices correctly parsed with bus/dev/fn,
vendor_id, device_id, and IRQ fields.

Found by: 5-agent parallel review (QA execution agent)
2026-06-30 14:51:06 +03:00
vasilito 522bba45c7 Add root-level wrapper scripts for user-facing CLI/GUI launchers 2026-06-30 14:31:16 +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 61a68c6bf4 Add firmware build script for OVMF UEFI 2026-06-30 14:30:52 +03:00
vasilito f0bdf66be8 Add logging tools: hiperiso-log analyzer and trace event definitions
Three trace tiers: standard, detailed, full.
2026-06-30 14:30:52 +03:00
vasilito b6d8a6649b Add config examples: hiperiso.json.example with all 16 plugin sections 2026-06-30 14:30:52 +03:00
vasilito fb121de75d Add build scripts: build_all, build_grub2, build_gui, build_initramfs, etc. 2026-06-30 14:30:39 +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
vasilito 4325590686 Add host kernel config and initramfs scripts with P0-P3 hardware inventory
Includes: init (PID 1), hiperiso-lib.sh, qemu_launch.sh, hw_collect.sh,

kvm_check.sh, fallback_boot.sh, log_flush.sh, conf_replace.sh, make_floppy.sh.

13-phase boot timing, 18 QEMU HMP commands, network pcap capture.
2026-06-30 14:30:39 +03:00
vasilito 9aac84e699 Add INTERFACES.sh: single source of truth for all interface contracts 2026-06-30 14:28:44 +03:00
vasilito 1c469ac1ed Add documentation: README, architecture plan, config reference 2026-06-30 14:28:44 +03:00
vasilito cb10aed0f9 Add project infrastructure: .gitignore and Makefile 2026-06-30 14:28:44 +03:00