- Synced with Upstream v0.14.1
- Adds
SyncTrust
Feature- The boot
Chain of Trust
may be broken on booting with 3rd-party tools on T2/TPM chipped units - When this happens, the unit refuses to boot the selected item and may even become unresponsive
- This feature provides a workaround by triggering a trusted native reboot to the selected item
- This feature can be enabled by activating a new
sync_trust
configuration token
- The boot
- Adds
LegacySync
Feature- RefindPlus previously assumed all Macs were capable of legacy BIOS boot
- This was from code that went in upstream in 2012 when this was a reasonable working assumption
- However, Macs later became UEFI certified and the last Intel Macs appear to be UEFI Class 3+
- UEFI Class 3/3+ devices do not support legacy BIOS boot
- This feature attempts to categorise Macs and allow/disallow legacy BIOS boot accordingly
- This was from code that went in upstream in 2012 when this was a reasonable working assumption
- Enabled by default but can be disabled using a new
disable_legacy_sync
configuration token- Disabling might be needed if a Mac is mis-categorised and legacy BIOS boot wrongly prevented
- RefindPlus previously assumed all Macs were capable of legacy BIOS boot
- Adds
HelpSize
Feature- Provides option to force non-standard or otherwise unsupported screen resolutions
- This can help work around issues where pre-boot configuration screen are not displayed
- The issues are typically
EDID
related or the auto-selection of incorrect/incompatible resolutions - This aspect of the
HelpSize
feature requires booting into systems that fully support the graphics
- An
ExDPI
category for screens with resolutions of6400 x 4000
or more was created- UI elements are scaled up by four (4) on such screens when UI element scaling is active
- UI elements on other
HiDPI
screens are still scaled up by two (2) with UI scaling active
- Enabled by default but can be disabled using a new
decline_help_size
configuration token- The new token sets RefindPlus to only apply up to 2x UI element scaling
- Provides option to force non-standard or otherwise unsupported screen resolutions
- Fixes Legacy BIOS Boot on Certified UEFI Class 2 Macs
- Optimisations for speed had potentially disabled legacy BIOS boot on some Macs
- This bug was introduced in v0.13.3.AB (Commit 66dbed0)
- Fixes Potential Memory Conflict
- Fixes Display Resolution Handling
- User defined resolutions were not being properly handled
- Only the default,
max
, resolution was considered - This meant that instances with defined resolutions were not properly displayed
- Only the default,
- Separately, the selected resolution when seeking
max
was not always the actual maximum - Additionally, a
HelpSize
Feature, documented separately, was introduced
- User defined resolutions were not being properly handled
- Fixes
DirectBoot
Handling- Was not functional
- Fixes
HelpScan
Handling- Rationalises implementation
- Could be applied, when disabled, to some items that should be excluded
- Rationalises implementation
- Improves
SystemdVars
Handling- The
LoaderDevicePartUUID
UEFI Variable is written to vRAM and not nvRAM - See: https://sf.net/p/refind/discussion/general/thread/d8dad2c475/
- The
- Improves
GraphicsFor
Handling- Users can now set
none
under theuse_graphics_for
token to disable graphics mode boot - Users can now set
everything
to activate this for all boots- The previous option of setting
use_graphics_for
alone has also been fixed and remains
- The previous option of setting
- Users can now set
- Improves
HiddenTags
Handling- Shows volumes names along with GUID where only the GUID would have previously been shown
- Allows human friendly instance identification when viewing the
Restore Entries
screen
- Allows human friendly instance identification when viewing the
- Breaks backward compatibility with upstream when tags are hidden in RefindPlus
- Tags hidden upstream remain forward compatible with RefindPlus
- Fixes situation where some loaders in ESP locations were not hidden when selected on-screen (minus key)
- Was also the case when full paths were used in
dont_scan_files
- Was also the case when full paths were used in
- Shows volumes names along with GUID where only the GUID would have previously been shown
- Improves License Presentation
- Rationalises presentation to make clear it is on GPLv3/Later
- Improves
MemTest
Handling- Updated exclusion from loaders (Row 1 Items)
- Updated to handle
memtest+{ARCH}.efi
andmemtest86+{ARCH}.efi
files as per upstream
- Improves
ProtectNvram
Handling- Now also blocks the
CurrentPolicy
andCurrentActivePolicy
variables
- Now also blocks the
- Improves
SyncNVram
Handling- Now also clears the
opencore-version
variable, if present, when booting into macOS directly- This variable is effectively an
OpenCore Present
flag that is checked by the macOS kernel - This variable removal only applies when RefindPlus is NOT chain-loaded via OpenCore
- This variable removal also applies to macOS installers
- This variable is effectively an
- Separately, the implementation of the base feature was not functional on macOS boots and was fixed
- Now also clears the
- Improves
HelpIcon
Handling- The following
OS Icons
are now cached on first load and reused as required afterwards when this feature is active- List is "os_mac", "os_win", "os_win8", "os_linux", "os_legacy", "os_clover", "os_opencore", "os_unknown", and "dummy image"
- List is stored in
TableBuiltinIconOS
- Supplements the existing caching of items covered by
BuiltinIconTable
- The
BuiltinIconTable
item caching always happens with or without theHelpIcon
feature
- The
- The following
- Improves
CleanNvram
Handling- Now clears
CurrentPolicy
andCurrentActivePolicy
variables on Apple firmware
- Now clears
- Improves
Misc
Handling- Restructured config file into four (4) sections
- Completed LodePNG 20230410 update started in v0.14.0.AC
- Renames the
cd
item under thescanfor
config token ascdbios
- Provides clarity that this is a
BIOS
scan option - Maintains compatibility with existing settings including upstream
- Provides clarity that this is a
- The
TimeoutSeconds
item inREFIT_MENU_SCREEN
was changed toINTN
- Follow on from fix to
Timeout
item inREFIT_CONFIG
previously changed toINTN
- The original fix for
SilentBoot/DirectBoot
was incomplete (Commit 78d6138 in v0.13.2.AH)
- Follow on from fix to
- Applied misc micro optimisation for speed
- Restructured search pattern for config tokens
- Optimised
LoadDrivers
function
- Misc fixes for running in
TextOnly
mode - Adjusted
AppleFramebuffer
handling to eliminate unneeded cycles
- Renames Misc Configuration Tokens
disable_amfi
todisable_check_amfi
disable_compat_check
todisable_check_compat