Jump to content

[HOW TO] OpenCore 0.7.2 > 0.7.3 differences


miliuco
 Share

21 posts in this topic

Recommended Posts

As always, please read the message by @vit9696 , the best place to learn about the changes received by OpenCore.

 

During the month of August, OpenCore Team has taken a break compared to other months but, despite this, more than 25 compilations have been launched making improvements in OpenCore, OpenCanopy and Drivers. The main changes (but not the only ones) are:

  • Linux support to be natively displayed in the OpenCore boot pickers
  • Updated MacPro7,1 database with new AMD graphic cards
  • Improved laptop backlight (SSDT-PNLF compatibility with CFL+ graphics)
  • Fixed OpenCanopy performance reverting a change introduced in 0.6.9 that was causing redraw of all of screen right and below mouse position at every frame
  • Implemented Boot Entry Protocol, allowing plug-in boot entry drivers
  • Improved security (updated Apple Secure Boot variables for x86legacy...).

 

config.plist

Misc > Security > ScanPolicy
Operating system detection policy list has been modified:

  • changed 0x00001000 (bit 12) — OC_SCAN_ALLOW_FS_EXT >> OC_SCAN_ALLOW_FS_LINUX_ROOT, allows scanning of Linux Root file systems
  • added 0x00002000 (bit 13) — OC_SCAN_ALLOW_FS_LINUX_DATA, allows scanning of Linux Data file systems
  • added 0x00004000 (bit 14) — OC_SCAN_ALLOW_FS_XBOOTLDR, allows scanning the Extended Boot Loader Partition as defined by the Boot Loader Specification.

 

UEFI > Drivers
Updated Drivers to support arguments, requires config.plist update. Each driver has now 3 properties: Path, Enabled and Arguments (some OC plugins accept optional additional arguments which may be specified as a string).

        <key>Drivers</key>
        <array>
            <dict>
                <key>Path</key>
                <string>OpenRuntime.efi</string>
                <key>Enabled</key>
                <true/>
                <key>Arguments</key>
                <string></string>
            </dict>
        </array>

UEFI > Quirks > added ForceOcWriteFlash (boolean) to enable writing to flash memory for all OpenCore system variables. This value should be disabled on most types of firmware but is left configurable to account for firmware that may have issues with volatile variable storage overflows or similar.

 

OpenCanopy

  • Updated Linux variants in Flavours.md
  • Fixed overlong boot entry names breaking text flow in builtin menu.

 

Drivers

  • Added OpenLinuxBoot.efi, OC-native Linux autodetect and boot plugin, implementing OC_BOOT_ENTRY_PROTOCOL to allow direct detection and booting of Linux distributions from OpenCore without chaining via GRUB
  • Added ext4_x64.efi, open source EXT4 file system driver required for booting with OpenLinuxBoot from the file system most commonly used with Linux.
  • Added btrfs_x64.efi, open source BTFRS file system driver required for booting with OpenLinuxBoot from a file system which is now quite commonly used with Linux.
     

Note: btrfs_x64.efi and ext4_x64.efi come from rEFInd 0.13.2. They can be downloaded from OcBinaryData. It is highly recommended that users interested in using OpenLinuxboot to boot Linux systems read the OpenLinuxboot section of the OpenCore 0.7.3 Configuration.pdf file.

 

Kexts

  • AppleALC 1.6.4: Allow optional audio for GPUs and other improvements...
  • CpuTscSync 1.0.4: Added constants for macOS 12 support...
  • DebugEnhancer 1.0.4
  • HibernationFixup 1.4.3
  • Lilu 1.5.6: Added helper APIs for backlight smoother in WhateverGreen...
  • MacHyperVSupport: Added network driver stub...
  • RestrictEvents 1.0.4: Skip leading spaces for automatically received CPU names, fixed dual-core CPU spoofing on macOS 10.14 and earlier...
  • VirtualSMC 1.2.7: Improved EC fan monitoring on some systems...
  • VoodooPS2 2.2.5
  • WhateverGreen 1.5.3: Added the backlight smoother for Intel IVB+ platforms, added two Asus AMD R9 380 graphics cards...

 

Thank you, OpenCore team!

 

Edited by miliuco
  • Like 6
  • Thanks 1
Link to comment
Share on other sites

4 hours ago, miliuco said:

Note: btrfs_x64.efi and ext4_x64.efi come from rEFInd 0.13.2. They can be downloaded from OcBinaryData. It is highly recommended that users interested in using OpenLinuxboot to boot Linux systems read the OpenLinuxboot section of the OpenCore 0.7.3 Configuration.pdf file.

Very interesting… Does that mean that, with further EFI drivers, we might get access to even more file systems such as XFS or ZFS? :drool:

Or is there some specific OpenCore work to accommodate these ext4 and Btrfs drivers, and just these two?

Link to comment
Share on other sites

Yes, new  drivers for Linux support have been introduced: OpenLinuxBoot.efi, btrfs_x64.efi and ext4_x64.efi (https://github.com/acidanthera/OcBinaryData) loaded and declared in OC

I added in Misc> Security> Scan Policy = OC_SCAN_ALLOW_FS_EXT (allows scanning of EXT (Linux Root) file system.)

Hoping to start Deepin (Linux) without being declared in Misc> Entries, but at boot it is not detected .... work in progress 🙃

Has anyone experimented?

Link to comment
Share on other sites

Very interesting development that have and are still taking place with OpenCore as well as OpenCanopy. I have already  upgraded 2 of my hacks from OC 0.7.2 --> OC 0.7.3 but hit some major snags in that the OpenCanopy graphical boot picker disappeared and only the text menu gets offered to select the wanted boot option. Once a boot option has been selected from the text menu the machines instantly freeze up solid and fail to boot. For the time being, I reverted back to OpenCore 0.7.2 until such time that I am up to speed and better understand what configuration changes I need to apply to get OC 0.7.3 working properly. 

What I consider strange is that the machines freeze up without making any headway in their quest to reach an operating system.

In the meantime I would be interested to learn whether anybody else is having trouble upgrading to OC 0.7.3. By the way I always use the supplied Sample.plist file to ensure that I do not end up with version mismatches when upgrading the Bootloader.

 

Greetings Henties

Edited by Henties
Link to comment
Share on other sites

10 hours ago, etorix said:

Very interesting… Does that mean that, with further EFI drivers, we might get access to even more file systems such as XFS or ZFS? :drool:

Or is there some specific OpenCore work to accommodate these ext4 and Btrfs drivers, and just these two?

Probably. With suitable drivers. ZFS has a different license but XFS can be included. Developers outside OpenCore can collaborate with code. 

Edited by miliuco
Link to comment
Share on other sites

1 hour ago, Henties said:

Very interesting development that have and are still taking place with OpenCore as well as OpenCanopy. I have already  upgraded 2 of my hacks from OC 0.7.2 --> OC 0.7.3 but hit some major snags in that the OpenCanopy graphical boot picker disappeared and only the text menu gets offered to select the wanted boot option. Once a boot option has been selected from the text menu the machines instantly freeze up solid and fail to boot. For the time being, I reverted back to OpenCore 0.7.2 until such time that I am up to speed and better understand what configuration changes I need to apply to get OC 0.7.3 working properly. 

What I consider strange is that the machines freeze up without making any headway in their quest to reach an operating system.

In the meantime I would be interested to learn whether anybody else is having trouble upgrading to OC 0.7.3. By the way I always use the supplied Sample.plist file to ensure that I do not end up with version mismatches when upgrading the Bootloader.

 

Greetings Henties

Did you use ProperTree when updating your config.plist file using the new supplied Sample.plist?

I notice that ProperTree is having problems with the snapshot function, When trying to do a snapshot the new Sample.plist file reverts some of it parts to the old style. Take a close look to Drivers section in UEFI. After updating my config.plist manually the issues disappeared. It's much easier to just cut the last sections of your original .plist and then copy them back from the new Sample.plist. And don't forget to add the new quirk  in UEFI section.

  • Like 1
Link to comment
Share on other sites

3 hours ago, antuneddu said:

Yes, new  drivers for Linux support have been introduced: OpenLinuxBoot.efi, btrfs_x64.efi and ext4_x64.efi (https://github.com/acidanthera/OcBinaryData) loaded and declared in OC

I added in Misc> Security> Scan Policy = OC_SCAN_ALLOW_FS_EXT (allows scanning of EXT (Linux Root) file system.)

Hoping to start Deepin (Linux) without being declared in Misc> Entries, but at boot it is not detected .... work in progress 🙃

Has anyone experimented?

I tried and is much better now. For testing I have Scan Policy set to 0. My only issue is that I'm using "Ubuntu Studio" which is a Ubuntu "flavor" Linux Distro. So it's being recognize as Ubuntu instead of Ubuntu Studio. I wonder if the rest of Ubuntu flavors are being recognize? I hope it also works with Kali LInux.

240267415_OpenCoreTrippleBootScreenshot.thumb.png.ecc5eb8ab06423416a1f188cebc536a7.png

  • Like 1
Link to comment
Share on other sites

1 hour ago, Tecnicaso Rico said:

Did you use ProperTree when updating your config.plist file using the new supplied Sample.plist?

I notice that ProperTree is having problems with the snapshot function, When trying to do a snapshot the new Sample.plist file reverts some of it parts to the old style. Take a close look to Drivers section in UEFI. After updating my config.plist manually the issues disappeared. It's much easier to just cut the last sections of your original .plist and then copy them back from the new Sample.plist. And don't forget to add the new quirk  in UEFI section.

Yes, ProperTree needs to be updated by corpnewt. I do it with the included tool ocvalidate, it's the best way to check if config.plist has errors.

1 hour ago, antuneddu said:

https://github.com/acidanthera/OpenCorePkg/blob/master/Docs/Flavours.md

 

This is my configuration ... but with the Entries in Misc...

Then your Linux system isn't displayed in the picker without a custom entry? Really the Linux support is still in beta but so far it seems to be working well. I haven't tried, I can't help you. 😕

Edited by miliuco
Link to comment
Share on other sites

@Henties

I have updated 0.7.2 to 0.7.3 with success. No problem after doing the changes introduced into the new version of OC. Same config,plist as in 0.7.2 except 2 changes: new drivers structure an added ForceOcWriteFlash. Checked with ocvalidate and working at first boot.

1 hour ago, Tecnicaso Rico said:

I tried and is much better now. For testing I have Scan Policy set to 0. My only issue is that I'm using "Ubuntu Studio" which is a Ubuntu "flavor" Linux Distro. So it's being recognize as Ubuntu instead of Ubuntu Studio. I wonder if the rest of Ubuntu flavors are being recognize? I hope it also works with Kali LInux...

Read Flavours.md as @antuneddu says. There you have the Linux flavours currently in use. 

Link to comment
Share on other sites

@miliucoand @Tecnicaso Rico thanks for your response. My problem with upgrading to OC 0.7.3 has been resolved after I discovered that ProperTree changed the new Dictionary placeholders in the UEFI Drivers section back to String, every time I used ProperTree. Upgrading to the latest version of ProperTree resolved the problem.

 

Greetings Henties

Edited by Henties
  • Thanks 2
Link to comment
Share on other sites

Nada @miliuco  No Entries no Linux 😀 , I tried enabling all 3 drivers together btrfs_x64.efi,ext4_x64.efi,OpenLinuxBoot.efi , only the latter , ScanPolicy to 0 , tried with ScanPolicy 2716419 ( my default 2687747 + new bits )

Either I'm missing something or it's not working for Deepin, however it is not a problem I can start it through Entries, it was just curiosity

  • Sad 1
Link to comment
Share on other sites

On 9/8/2021 at 10:26 AM, miliuco said:

@antuneddu

Your Linux displayed in the picker has been fixed?

@Download-Fritz

Hi, after I did some more reading about the new Linux boot options, now included in OC 0.7.3, I actually implemented this new boot method and was greeted with a very pleasant surprise. It worked one shot, with the Linux boot entry in OC config --> Misc --Entries --> set to NO (disabled), and the Linux EFI folder having been emptied. On the OC graphical picker screen the Linux icon appears correctly, then, when one presses the spacebar to enter the auxiliary boot screen, two Linux boot options appear, the one being the same as on the main OC boot screen and the other being the previous Linux boot option (fall back) in case selecting the main boot option fails. This is in fact the same standard behavior that GRUB usually displays although GRUB is now being bypassed during the Linux boot process. Quite an achievement by the OC developer team, therefore a very big thank you for this fantastic new feature.

Oh, and before I forget, when one hovers with the mouse over the Linux boot options in the OC auxiliary boot screen, the respective Linux version text is actually scrolling by, so you never have to be in the dark as to which Linux version to choose for booting.

Another thing I discovered in my particular environment is that after I upgraded my Ubuntu from 20.04 LTS....27 to 20.04 LTS....34, I could find no traces of GRUB trying to "make its invasive presence felt" in any of the 6 EFI partitions present on the hack in question

 

Greetings Henties

 

  • Like 3
Link to comment
Share on other sites


Yes nice job, thanks to the devs. Disabling the Entries for both Windows and Linux, setting the scanpolicy 0 enabling the new drivers, OC detects all systems and starts them without problems. But I'd like to put osx before Windows and Deepin .... I'll play some more with the ScanPolicy values 😉

 

1974768648_Schermata2021-09-09alle14_09_16.thumb.png.6005efaa46445abb1a073a2468944cb4.png

Edited by antuneddu
  • Like 1
Link to comment
Share on other sites

1 hour ago, antuneddu said:


Yes nice job, thanks to the devs. Disabling the Entries for both Windows and Linux, setting the scanpolicy 0 enabling the new drivers, OC detects all systems and starts them without problems. But I'd like to put osx before Windows and Deepin .... I'll play some more with the ScanPolicy values...

Congratulazioni!!! You got it.

But remember the only way we know so far to put macOS entry before Windows and Linux is disabling auto detection and creating custom entries. If you discover another way, please let me know.

 

Edited by miliuco
  • Like 1
Link to comment
Share on other sites

The new driver works very well and starts Linux very well, unfortunately by enabling the scan policy for Windows and ext4 they are put before osx and there is no other solution for the moment to change the order ... I think (maybe in the future development of OC) I went back to the configuration with the Entries,I like it more 

Edited by antuneddu
  • Sad 1
Link to comment
Share on other sites

1 hour ago, antuneddu said:

The new driver works very well and starts Linux very well, unfortunately by enabling the scan policy for Windows and ext4 they are put before osx and there is no other solution for the moment to change the order ... I think (maybe in the future development of OC) I went back to the configuration with the Entries,I like it more 

Yes, I think currently there is no way to do this but custom entry.

  • Like 1
Link to comment
Share on other sites

 Share

×
×
  • Create New...