I saw you updated the BCD-SYS. Does it detect hybrid partitions now?
I saw you updated the BCD-SYS. DOes it detect hybrid partitions now?
Thanks if you are using Sierra or earlier when you create a FAT32 partition through disk utility it automatically converts the GPT to Hybrid partition.
I did not know they banned you. I thought they only removed the post. Shame on them. look here and here
Will bcd-sys be equivalent to these commands: mkdir S:\boot xcopy /E /H /K D:\boot S:\boot copy /b D:\bootmgr S:\bootmgr D:\boot\bootsect.exe /nt60 S: /mbr This is what is missing after conversion to hybrid partition of the GPT installation. you have another tool called ms-sys, which looks more suitable for legacy/hybrid partitions. Also to clarify hybrid partition cannot see the EFI partition and anything written to the EFI will not be visible from Windows. There is no system partition with Bootcamp...
Will bcd-sys be equivalent to these commands: mkdir S:\boot xcopy /E /H /K D:\boot S:\boot copy /b D:\bootmgr S:\bootmgr D:\boot\bootsect.exe /nt60 S: /mbr This is what is missing after conversion to hybrid partition of the GPT installation. you have another tool called ms-sys, which looks more suitable for legacy/hybrid partitions.
Actually, the hybrid MBR scheme is nothing more than protecting GPT partitions you want to hide from the MBR boot sector. So, the WIndows partition does not see the EFI partition when booted. There is no need for system partition all files are written to the main Windows partition. I looked through your repo and combined with Serhii's tool, which provides NTFS write support can do everything needed.
Thanks all. I have a suggestion. For the Legacy boot the partition needs to be converted to hybrid partition scheme (with gdisk.exe) from GPT instead of converting the whole disk to MBR.
Thanks. How about including hybrid MBR (GPT with modified boot code)? You only need gdisk as an additional tool to convert the GPT to hybrid partition (requred on legacy macs). You can find the details here The only additional thing needed is to activate the BCD for MBR boot.
Thanks. How about including hybrid MBR (GPT with modified boot code)? You only need gdisk as an extr tool to convert the GPT to hybrid partition (requred on legacy macs). You can find the details here The only extra thing needed is to activate the BCD for MBR boot.
Previous version works
By the way the application crashes: Crash report ------------------------------------- Translated Report (Full Report Below) ------------------------------------- Process: Windows Install [62330] Path: /private/var/folders/*/Windows Install.app/Contents/MacOS/Windows Install Identifier: org.SerhiiHalan.WindowsInstall Version: 6.1.0 (6.1.0) Code Type: X86-64 (Native) Parent Process: launchd [1] User ID: 501 Date/Time: 2024-03-01 20:03:54.2160 +0300 OS Version: macOS 14.3.1 (23D60) Report Version:...
Great application! Any options or intentions to include legacy boot?
rEFInd is a bootloader not an emulator.
Are you using the btrfs.efi driver?
Update BUILDING.txt
Fixed memory management bugs
Fixed bug in mkcdimage that caused USB flash drive image to be damaged.
Fixed bug that could cause system freeze.
Fixed bug that caused refind-install to not recognize already-mounted ESP in Linux
Correctly handle the case where timeout=-1 and no keyboard is attached.
Fix PaintArrows from clearing with area smaller than the icons
Minor code cleanup; mostly standardizing some EFI structure names
Add log file rotation feature
https://github.com/pbatard/efifs/releases/download/v1.8/f2fs_x64.efi
Just built it successfully with a Vmware Ubuntu 14.04.6 LTS with latest gnu-efi after installing first: sudo apt install build-essential git uuid-dev iasl nasm python libpopt-dev libncursesw5-dev Does not build with latest Ubuntu releases with the default GCC and G++ versions. To build succesfully on newest Ubuntu use: sudo add-apt-repository "deb http://us.archive.ubuntu.com/ubuntu/ bionic main universe" sudo apt install gcc-4.8 g++-4.8 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8...
Just built it successfully with a Vmware Ubuntu 14.04.6 LTS with latest gnu-efi after installing first: sudo apt install build-essential git uuid-dev iasl nasm python libpopt-dev libncursesw5-dev Does not build with latest Ubuntu releases with the default GCC and G++ versions. To build succesfully on newest Ubuntu use: sudo add-apt-repository "deb http://us.archive.ubuntu.com/ubuntu/ bionic main universe" sudo apt install gcc-4.8 g++-4.8 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8...
Just built it successfully with a Vmware Ubuntu 14.04.6 LTS with latest gnu-efi after installing first: sudo apt install build-essential git uuid-dev iasl nasm python libpopt-dev libncursesw5-dev``` Does not build with latest Ubuntu releases with the default GCC and G++ versions. To build succesfully on newest Ubuntu use: sudo add-apt-repository "deb http://us.archive.ubuntu.com/ubuntu/ bionic main universe" sudo apt install gcc-4.8 g++-4.8 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8...
Just built it successfully with a Vmware Ubuntu 14.04.6 LTS with latest gnu-efi after installing first: sudo apt install build-essential git uuid-dev iasl nasm python libpopt-dev libncursesw5-dev Does not build on Ubuntu 20.04.3 LTS. I might test it with Ubuntu 16.04.7 LTS.
rEFInd finds the preboot and boots from it:
Just compiled in Ubuntu rEFInd. Try the one attached. There is something in your firmware update which broke it. I remember some time ago there was another firmware update and rEFInd stopped working until the next firmware update. My MBP11,3 is unsupported so I can't report it to Apple, but maybe you can. One thing you can try in settings is: "use_nvram false" Reset NVRAM after changing this parameter and try again.
Just compiled in Ubuntu rEFInd. Try the one attached. There is something in your firmware update which broke it. I remember some time ago there was another firmware update and rEFInd stopped working until the next firmware update. My MBP11,3 is unsupported so I can't report it to Apple, but maybe you can.
How about doing NVRAM reset? Also set the "log_level 4" and attach the log file here. Nevermind. Saw your message that it works first time after NVRAM reset booting to Monterey.
Just compiled in Ubuntu rEFInd. Try the one attached.
How about doing NVRAM reset? Also set the "log_level 4" and attach the log file here.
Here is the log file from the GNU-EFI build: Workflow Repo (5) dosfstools-4.2-1 efivar-37-4 efibootmgr-17-2 acpica-20210930-1 nano-5.9-1 Repo Make (1) gnu-efi-3.0.14-1 :: Proceed with installation? [Y/n]: resolving dependencies... looking for conflicting packages... Packages (6) acpica-20210930-1 dosfstools-4.2-1 efibootmgr-17-2 efivar-37-4 gnu-efi-3.0.14-1 nano-5.9-1 Total Download Size: 1.75 MiB Total Installed Size: 7.42 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... acpica-20210930-1-x86_64...
This tiano/edk build is fixed here: https://github.com/startergo/docker-makepkg btrfs file build is skipped. It can always be built with GNU-EFI setting _USE_GNU_EFI='1' in the beginning of the PKGBUILD Workflow mkdir -p ./drivers_x64 cp /tmp/pkg/src/edk2-UDK2018_build/Build/Refind/RELEASE_GCC5/X64/refind.efi ./refind/refind_x64.efi cp /tmp/pkg/src/edk2-UDK2018_build/Build/Refind/RELEASE_GCC5/X64/gptsync.efi ./gptsync/gptsync_x64.efi cd /tmp/pkg/src/edk2-UDK2018_build && \ . ./edksetup.sh BaseTools...
How about doing NVRAM reset?
I got similar issue with MBP11,3. After firmware update there is a black screen on boot. The attached version works. You can build the same using this Docker: https://github.com/startergo/docker-makepkg
I got similar issue with MBP11,3. After firmware update there is a black screen. The attached version works. You can build the same using this Docker: https://github.com/startergo/docker-makepkg
Joe I am not sure if it is a bug of the shell version. Just used the gdisk.efi on a HP8570P and it worked fine.
Joe I am not sure if it is a bug of the shell version. Just used the gdisk.efi on a HP8570P and it worked fine.
Joe I am not sure if it is a bug of the shell version. Just used the gdisk.efi on a HP8570P and it worked fine.
You may want to look here: https://www.insanelymac.com/forum/topic/349317-opencore-shim-to-certtool/
Now you can build rEFInd with GCC5 through Docker (has to be installed on the machine). Btrfs.efi and ntfs.efi build too. https://sourceforge.net/u/startergo/refind/ci/2b44715c94e9c2cd0bfdc4165eccfe58908fce7a/
Update BUILDING.txt
Compiling rEFInd through Docker.
Compiling rEFInd through Docker
Update BUILDING.txt
you can try compiling the latest commit here and give it a try: https://github.com/dakanji/RefindPlus
Testing has been done: https://github.com/dakanji/RefindPlus/issues/86#issuecomment-980480193
That would be a nice driver addition. As a workaround the easiest way is by using a USB formatted with Ventoy utility. Just drag and drop the iso image to the Ventoy USB then boot it from rEFInd.
Don't know how to test it, but if someone can here it is attached. Just untar it.
@srs5694 btrfs EDK-2 build was fixed by @joevt: https://github.com/joevt/RefindPlus/commit/0568967733ffc8c680fd82113c23f8d0b1cfd126 I have tested the build: https://github.com/startergo/docker-makepkg/blob/main/PKG/PKGBUILD You can update the upstream rEFInd code.
Here is the log file from the GNU-EFI build: Repo (5) dosfstools-4.2-1 efivar-37-4 efibootmgr-17-2 acpica-20210930-1 nano-5.9-1 Repo Make (1) gnu-efi-3.0.14-1 :: Proceed with installation? [Y/n]: resolving dependencies... looking for conflicting packages... Packages (6) acpica-20210930-1 dosfstools-4.2-1 efibootmgr-17-2 efivar-37-4 gnu-efi-3.0.14-1 nano-5.9-1 Total Download Size: 1.75 MiB Total Installed Size: 7.42 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... acpica-20210930-1-x86_64...
This tiano/edk build is fixed here: https://github.com/startergo/docker-makepkg btrfs file build is skipped. It can always be built with GNU-EFI setting _USE_GNU_EFI='1' in the beginning of the PKGBUILD mkdir -p ./drivers_x64 cp /tmp/pkg/src/edk2-UDK2018_build/Build/Refind/RELEASE_GCC5/X64/refind.efi ./refind/refind_x64.efi cp /tmp/pkg/src/edk2-UDK2018_build/Build/Refind/RELEASE_GCC5/X64/gptsync.efi ./gptsync/gptsync_x64.efi cd /tmp/pkg/src/edk2-UDK2018_build && \ . ./edksetup.sh BaseTools && \ build...
This is fixed here: https://github.com/startergo/docker-makepkg btrfs file build is skipped. It can always be built with GNU-EFI mkdir -p ./drivers_x64 cp /tmp/pkg/src/edk2-UDK2018_build/Build/Refind/RELEASE_GCC5/X64/refind.efi ./refind/refind_x64.efi cp /tmp/pkg/src/edk2-UDK2018_build/Build/Refind/RELEASE_GCC5/X64/gptsync.efi ./gptsync/gptsync_x64.efi cd /tmp/pkg/src/edk2-UDK2018_build && \ . ./edksetup.sh BaseTools && \ build -a X64 -p RefindPkg/RefindPkg.dsc Loading previous configuration from...
Even after creating a 4GB FAT32 partition I get write error: volume full after dh -d v. Handle 71 (B6104598) Image (B6103C40) File: ParentHandle..: B6104918 SystemTable...: B93FEF18 DeviceHandle..: 0 FilePath......: ImageBase.....: B9C2F000 - B9C30600 ImageSize.....: 1600 CodeType......: BS_code DataType......: BS_data ImageDpath (0) Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device...
Even after creating a 4GB FAT32 partition I get write error: volume full after dh -d v. Handle 71 (B6104598) Image (B6103C40) File: ParentHandle..: B6104918 SystemTable...: B93FEF18 DeviceHandle..: 0 FilePath......: ImageBase.....: B9C2F000 - B9C30600 ImageSize.....: 1600 CodeType......: BS_code DataType......: BS_data ImageDpath (0) Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device...
Even after creating a 4GB FAT32 partition I get write error: volume full after dh -d v. Handle 71 (B6104598) Image (B6103C40) File: ParentHandle..: B6104918 SystemTable...: B93FEF18 DeviceHandle..: 0 FilePath......: ImageBase.....: B9C2F000 - B9C30600 ImageSize.....: 1600 CodeType......: BS_code DataType......: BS_data ImageDpath (0) Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device...
Even after creating a 4GB FAT32 partition I get write error: volume full after dh -d v ``` Handle 71 (B6104598) Image (B6103C40) File: ParentHandle..: B6104918 SystemTable...: B93FEF18 DeviceHandle..: 0 FilePath......: ImageBase.....: B9C2F000 - B9C30600 ImageSize.....: 1600 CodeType......: BS_code DataType......: BS_data ImageDpath (0) Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device...
Even after creating a 4GB FAT32 partition I get write error: volume full after dh -d v Handle 71 (B6104598) Image (B6103C40) File: ParentHandle..: B6104918 SystemTable...: B93FEF18 DeviceHandle..: 0 FilePath......: ImageBase.....: B9C2F000 - B9C30600 ImageSize.....: 1600 CodeType......: BS_code DataType......: BS_data ImageDpath (0) Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device...
Even after creating a 4GB FAT32 partition I get write error: volume full after dh -d v Handle 71 (B6104598) Image (B6103C40) File: ParentHandle..: B6104918 SystemTable...: B93FEF18 DeviceHandle..: 0 FilePath......: ImageBase.....: B9C2F000 - B9C30600 ImageSize.....: 1600 CodeType......: BS_code DataType......: BS_data ImageDpath (0) Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device Path Error - Unknown Device Type Device...
"Regarding edit.efi: it is not a driver so it cannot load as a driver or it doesn't do anything as a driver. Are you sure HermitShell_X64.efi doesn't have the edit command built-in (like most EFI Shells) and therefore doesn't require the seperate edit.efi? Also, please describe where HermitShell_X64.efi is from." This is the one I linked in the PM. I extracted it from the firmware of my quo motherboard. Edit function worked on that board, but not on the HP 8570p, but after loading edit.efi it works....
"Regarding edit.efi: it is not a driver so it cannot load as a driver or it doesn't do anything as a driver. Are you sure HermitShell_X64.efi doesn't have the edit command built-in (like most EFI Shells) and therefore doesn't require the seperate edit.efi? Also, please describe where HermitShell_X64.efi is from." This is the one I linked in the PM. I extracted it from the firmware of my quo motherboard. Edit function worked on that board, but not on the HP 8570p, but after loading edit.efi it works....
So here is what I did and it worked on non Apple x86 machine: file /Volumes/EFI/EFI/OC/Tools/HermitShell_X64.efi /Volumes/EFI/EFI/OC/Tools/HermitShell_X64.efi: MS-DOS executable PE32+ executable (DLL) (EFI application) x86-64, for MS Windows 8570p@8570ps-MacBook-Pro ~ % file /Volumes/EFI/EFI/OC/Tools/OpenShell.efi /Volumes/EFI/EFI/OC/Tools/OpenShell.efi: MS-DOS executable PE32+ executable (EFI application) x86-64 (stripped to external PDB), for MS Windows 8570p@8570ps-MacBook-Pro ~ % file /Volumes/NO\...
So here is what I did and it worked on non Apple x86 machine: file /Volumes/EFI/EFI/OC/Tools/HermitShell_X64.efi /Volumes/EFI/EFI/OC/Tools/HermitShell_X64.efi: MS-DOS executable PE32+ executable (DLL) (EFI application) x86-64, for MS Windows 8570p@8570ps-MacBook-Pro ~ % file /Volumes/EFI/EFI/OC/Tools/OpenShell.efi /Volumes/EFI/EFI/OC/Tools/OpenShell.efi: MS-DOS executable PE32+ executable (EFI application) x86-64 (stripped to external PDB), for MS Windows 8570p@8570ps-MacBook-Pro ~ % file /Volumes/NO\...
file /Volumes/EFI/EFI/tools/shell.efi /Volumes/EFI/EFI/tools/shell.efi: Universal EFI binary with 2 architectures, i386, x86_64 Looking at this table this SHELL would never work on non-apple x86 machine: "Regarding rEFInd, did you try gdisk in the shell and check if the devicehandle for the disk containing rEFInd changed? " Now gdisk.efi works fine everywhere. Only rEFIt shell is not loading in rEFind and in RP is hanging.
file /Volumes/EFI/EFI/tools/shell.efi /Volumes/EFI/EFI/tools/shell.efi: Universal EFI binary with 2 architectures, i386, x86_64 "Regarding rEFInd, did you try gdisk in the shell and check if the devicehandle for the disk containing rEFInd changed? " Now gdisk.efi works fine everywhere. Only rEFIt shell is not loading in rEFind and in RP is hanging.
I just re-ran rEFInd and now gdisk.efi works as designed there as well. Shell.efi from rEFIt returns back to the main screen after unsupported message (why unsupported?), but does not hang. Also I have to note RP and RPE do not log after exiting from any EFI application wheras rEFInd does log everyhing.
I just re-ran rEFInd and now gdisk.efi works as designed there as well. Shell.efi from rEFIt returns back to the main screen after unsupported message (why unsupported?), but does not hang.
It is true your fork fixed gdisk.efi, but unfortunately broke everything else as described in the "The Quest PM". Attached are the logs
On the latest snapshot f3a869cf88abc5651977973f7f63 rEFInd hangs after selecting partition number from gdisk.efi. Also it does not load Shell.efi from rEFIt. Log is attached.
On the latest snapshot f3a869cf88abc5651977973f7f63 rEFInd hangs after selecting partition number from gdisk.efi. Also it does not load Shell.efi fro rEFIt. Log is attached.
As soon as I enable logging in the previously working first rEFInd instance it hangs again.
So I loaded apfs_x64.efi and hfs_x64.efi in drivers in the first rEFInd instance. Then it automaticaly booted to the second rEFInd instance and continued automatically to the OS. Log attached:
So I loaded apfs_x64.efi and hfs_x64.efi in drivers in the first rEFInd instance. Then it automaticaly booted to the second rEFInd instance and continued automatically to the OS. Log attached:
Ok. Booted throgh rEFInd automaticaly with log disabled. No partitions available. Entered shell and booted refind-test. Only few partitions were recognized and only HFS+. Log attached:
I have to mention that only HFS+ partitions were recognized during second run from shell. This is a known issue for the MVC vbios as it disables the APFS for some weird protection reason. @dakanji has a workaround for this in the RefindPlus: # Supply APFS filesystem capability. When this option is active, RefindPlus will load # Mac OS APFS filesystem drivers, apfs.efi, which are available in system folders of # Mac OS 10.13 (High Sierra) and later. The drivers are loaded to match each specific #...
Ok. Booted throgh rEFInd automaticaly with log disabled. No partitions available. Entered shell and booted refind-test. Only few partitions recognized. Log attached:
Ok. Booted throgh rEFInd automaticaly with log disabled. No partitions available. Entered shell and booted refind-test. Again only few partitions recognized. Log attached:
Hmm, but that is like catch 22. If rEFInd does not hang the log is useless. If it hangs it cannot produce the log. Am I missing something?
Just tested snapshot f89bb8c808aba03df20bb3e65a60b7267d2fcf26. What I discovered: 1. Automatic boot with Log level 0 does show refind boot screen without any partitions. 2. Log level 4 or 1 hang in automatic mode boot on grey screen. 3. Booting first to Apple bootpicker and selecting rEFind from there with log level 1 works fine. Log is attached.
Just tested snapshot f89bb8c808aba03df20bb3e65a60b7267d2fcf26. What I discovered: 1. Automatic boot with Log level 0 does show refind boot screen without any partitions. 2. Log level 4 or 1 hang in automatic boot on grey screen. 3. Booting first to Apple bootpicker and selecting rEFind from there with log level 1 works fine. Log is attached.
Just tested snapshot
Again does not boot automatically, but only selected from the Apple boot picker. I don't have Linux installed. Can I obtain the requested data from OSX?
sudo gdisk GPT fdisk (gdisk) version 1.0.5 Type device filename, or press <Enter> to exit: /dev/disk3 Warning: Devices opened with shared lock will not have their partition table automatically reloaded! Partition table scan: MBR: protective BSD: not present APM: not present GPT: present bootoption info Boot0080 Name: Boot0080 Description: BigSur - Data Container Partition UUID: 620991A1-787F-4945-A0A1-D8A620490755 APFS Volume UUID: C5095A14-FCD2-4091-8B0D-4E9C3329C261 Loader Path: \D1375666-2944-483E-A95B-6CE64A1FCAB8\System\Library\CoreServices\boot.efi...
sudo gdisk GPT fdisk (gdisk) version 1.0.5 Type device filename, or press <Enter> to exit: /dev/disk3 Warning: Devices opened with shared lock will not have their partition table automatically reloaded! Partition table scan: MBR: protective BSD: not present APM: not present GPT: present bootoption info Boot0080 Name: Boot0080 Description: BigSur - Data Container Partition UUID: 620991A1-787F-4945-A0A1-D8A620490755 APFS Volume UUID: C5095A14-FCD2-4091-8B0D-4E9C3329C261 Loader Path: \D1375666-2944-483E-A95B-6CE64A1FCAB8\System\Library\CoreServices\boot.efi...
Unfortunately the boot only works if I select manually the rEFInd from the Apple boot picker. It does not work in an automatic manner.
Unfortunately the boot only works if I select manually the rEFInd from the Apple boot picker. It does not work in an automatic manner.
So I have tried commit https://sourceforge.net/p/refind/code/ci/192cea74a5dc5c2519018180157565004cee4186/ Initially it hung again, but then I decided to do use_nvram false And I got a boot!
So I have tried commit https://sourceforge.net/p/refind/code/ci/192cea74a5dc5c2519018180157565004cee4186/ Initially id haung again, but then I decided to
I have re-enabled the log_level 3, but this release still hangs. And no logs files were created.
I have re-enabled the log_level 3, but this release still hangs. And no logs files created.
So it turns out it is the logging which prevented rEFInd from booting. Commented out the logging: #log_level 3 And now it boots. The only feature that does not work is the Logging. By the way is the logging supposed to work on an HFS+ rEFInd setup?
@srs5694 So I found the offending commit: https://sourceforge.net/p/refind/code/ci/12d51ac9763a6c9bb729774f93adf82cd457d77d/ "Added initial logging function:" Also non of the compilations made with EDKv2018 worked. All of them hung even 0.13.0. Only the gnu-efi compilations worked.
@srs5694 So I found the offending commit: https://sourceforge.net/p/refind/code/ci/12d51ac9763a6c9bb729774f93adf82cd457d77d/ "Added initial logging function:" Also non of the compilations made with EDKv2018 worked. All of them hung even 0.13.0.
A memory leak has been introduced in version 0.13.1 on cMP5,1. As a result rEFInd does not boot. 0.13.0 works fine.
Latest firmware update 430.0.0.0.0 corrected the issue. rEFInd boots again on MacBookPro11,2 and 11,3.
unfortunately still does not work