acidanthera / bugtracker

Acidanthera Bugtracker
385 stars 45 forks source link

HFS+ driver redesign #659

Closed vit9696 closed 3 years ago

vit9696 commented 4 years ago

Currently we recommend using Apple HfsPlus.efi driver to enable HFS+ file system support for the following tasks:

The issue with this driver is that:

As an alternative we have VBoxHfs.efi driver in AppleSupportPkg, but it has no less issues:

Taking all things into consideration, I believe we need to invest in the development of a new performant and secure HFS+ driver with a friendly license. There are several routes for this, and I am not sure which one we can take.

There may be some other option I am unaware of.

[1] https://sourceforge.net/p/refit/code/HEAD/tree/trunk/refit/fsw/ [2] https://github.com/gsomlo/edk2/tree/gls-miscopt/OvmfPkg/FswHfsPlus [3] https://github.com/NetBSD/src/tree/trunk/sys/fs/hfs [4] https://github.com/0x09/hfsfuse [5] https://opensource.apple.com/tarballs/hfs/

shchuko commented 3 years ago

Hi. I'm updating series of these OVMF patches to provide booting macOS under QEMU/KVM and QEMU/HVF and same as you met the licensing problem (linking VBoxHfs). My choice was to update this [2] driver.

Here I've already fixed main issues that made macOS stuck on bootloader launch stage: https://github.com/shchuko/OvmfDarwinPkg/tree/master/FswHfsPlus

Now it seems able to boot macOS recovery images (basesystem DMGs) using updated driver. To my mind these fixes can be also useful for your project

vit9696 commented 3 years ago

That's great to hear, but you will still need to adopt gAppleBlessed GUID retrieval through the INFO method to let OpenCore properly function with your driver. I guess you can take our fsw_efi_bless_info as a reference (since it is ours, you may use it freely).

shchuko commented 3 years ago

Ok, I'll try to add handling the required GUIDes ASAP