Skip to content

Rufid 0.2.1

Latest

Choose a tag to compare

@github-actions github-actions released this 19 Jul 19:24

Rufid 0.2.1

Rufid 0.2.1 adds filesystem-aware Windows installer media creation on Android.

Windows ISO modes

  • FAT32 UEFI extraction with source-built wimlib splitting when install.wim exceeds 4 GiB.
  • NTFS MBR data volume with a UEFI:NTFS helper partition and unsplit install.wim.
  • NTFS GPT Basic Data volume with an ESP/helper partition and primary/backup GPT verification.
  • ISO9660 and UDF tree readers with directory, long-name, duplicate, and unsafe-path checks.
  • Failure and cancellation states that remove incomplete output instead of reporting success.

USB and archive hardening

  • Handles BOT reset, CLEAR_HALT, interface selection, CSW residue, and retry decisions explicitly.
  • Keeps ambiguous or failed data writes fatal while treating only confirmed unsupported final cache sync as non-fatal.
  • Adds source-built 7-Zip-JBinding extraction with traversal and Windows-path rejection.

Payload supply chain

  • Builds UEFI:NTFS, wimlib, NTFS-3G tools, and 7-Zip-JBinding from pinned source inputs.
  • Pins the 7-Zip-JBinding payload build to AGP 8.7.3 and Gradle 8.9.
  • Packages native WIM and NTFS tools for arm64-v8a, armeabi-v7a, x86, and x86_64.
  • Continues to exclude RAR/unRAR native sources and opaque APK-derived payloads.

Validation scope

The FAT32, NTFS MBR, and NTFS GPT images were generated by Rufid's production backend inside an Android x86_64 AVD and booted to the Windows Setup language screen with QEMU 11.0.2 and OVMF. Secure Boot validation included an unsigned rejection control and a signed UEFI:NTFS/Windows positive control.

This does not claim broad compatibility with physical Android USB controllers, flash drives, or PC firmware. Those remain community compatibility gates.

See docs/VIRTUAL_BOOT_VALIDATION.md for hashes and the preserved validation boundary.