SkillAgentSearch skills...

RefindPlus

A Boot Manager for Mac and PC

Install / Use

/learn @RefindPlusRepo/RefindPlus
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<div align="center">

RefindPlus

A Boot Manager for Mac and PC

<br>

Release VersionRelease Date

Coverity Scan   Codacy Grade

License Type

</div>

<br><br>

Overview

RefindPlus is a fork of rEFInd that provides extended functionality via enhancements and fixes that include several Apple Mac and UEFI-PC related items that may be of interest to anyone requiring a boot manager for Mac and PC.

RefindPlus is particularly useful for those with additional configuration needs or that require advanced or otherwise non-typical (hence typically unavailable) options for running operating systems and uEFI utilities on Mac and PC.

Some features:

  • Maintains feature and configuration parity with Upstream v0.14.2 base.
  • Provides options to flag faulty RAM regions as unusable to extend useful life.
  • Provides protection against damage to vulnerable Mac nvRAM by UEFI Windows boot.
  • Provides mitigation against boot failures and related issues on T2/TPM chipped units.
  • Emulates UEFI 2.x on EFI 1.x units to permit running UEFI 2.x utilities on such units.
  • Provides Pre-Boot Configuration Screen on units running GPUs without native EFI on Macs.
  • Extensive memory management improvements with associated speed and stability gains.
  • Provides improved text display support for languages that require unicode text.
  • Identifies and automatically handles Ventoy instances if present.
    • Rationalises binaries displayed.
    • Displays an os_ventoy icon if available.
  • Includes troubleshooting (DBG/NPT) binaries for debugging.
    • The standard release (REL) binary is for day to day use.
  • Fixes inability to print to screen on some Macs.
    • This prevented receiving program messages or using utilities such as uEFI shell.
  • Provides NVMe capability, if required, via an inbuilt NvmExpress driver.
    • Removes the need to load external drivers on units without native NVMe support.
    • Basically allows working as if NVMe is natively supported by the firmware.
  • Provides APFS filesystem capability, if required, via an inbuilt APFS JumpStart driver.
    • Removes the need to load external drivers on units without native APFS support.
    • Additionally ensures matching APFS drivers for specific Mac OS versions are used.
    • Basically allows working as if APFS is natively supported by the firmware.
  • Fully supports APFS filesystem requirements.
    • This allows booting recent Mac OS versions from single named volumes.
      • As opposed to generic and difficult to distinguish PreBoot volumes.
      • Avoids compromising system integrity by otherwise requiring SIP to be disabled.
    • This also allows booting FileVault encrypted volumes from single named volumes.
      • As opposed to generic and difficult to distinguish PreBoot volumes.

Installation

A straightforward way is to make the RefindPlus efi file a UEFI Fallback File by naming it accordingly, BOOTx64.efi, and placing this in the UEFI Fallback Path of a disk, /EFI/BOOT.

MyBootMgr is recommended to automate installing RefindPlus when running Mac OS on Intel-based Macs. Alternatively, as the RefindPlus efi file can function as a drop-in replacement for the upstream efi file, the rEFInd package can be installed first and its efi file replaced with the RefindPlus efi file (rename RefindPlus file to match). This allows installing RefindPlus on other compatible operating systems supported upstream. See UEFI Secure Boot under the Divergence Section for how to enable this if required.

[!NOTE]

MyBootMgr can optionally also be used to create a flexible and powerful RefindPlus|OpenCore chain-loading arrangement for MacPro3,1 to MacPro5,1 as well as for Xserve2,1 and Xserve3,1.

Upstream post-release code updates are typically ported to RefindPlus as they happen and as such, the RefindPlus code base is usually at the state of the base upstream release version plus any such updates. The code base typically also includes updates for subsequent upstream release versions since the base version.

[!TIP]

Consider replacing upstream filesystem drivers with those packaged with RefindPlus as these are always either exactly the same as upstream versions or have had fixes applied.

RefindPlus will function with the upstream configuration file, refind.conf, but users may wish to replace this with the RefindPlus configuration file, config.conf, to configure the additional options provided by RefindPlus. A sample RefindPlus configuration file is available here: config.conf-sample.

[!TIP]

RefindPlus-specific options can also simply be added to upstream configuration files.

When run without activating RefindPlus-specific configuration options, as will be the case with unmodified upstream configuration files, a RefindPlus run will be equivalent to running the upstream version it is based on. That is, the additional options provided in RefindPlus must be actively enabled if they are required.

[!NOTE]

This equivalence is subject to some differences such as outlined under the Divergence Section below.

Additional Functionality

RefindPlus-specific funtionality can be configured using the tokens below.
Additional information is provided in the sample RefindPlus configuration file.
These tokens are included in Section 1 of the sample RefindPlus configuration file.

Token | Functionality ----- | ----- badram_fix_list |Allows providing a list of faulty memory regions to be marked as unusable badram_fix_type |Controls whether and how faulty memory regions are managed by the program badram_fix_wide |Allows lifting program limits on types of faulty memory regions managed continue_on_warning |Proceed as if a key was pressed after screen warnings (for unattended boot) csr_dynamic |Actively sets or unsets Apple's Configurable Security Restrictions (CSR) csr_normalise |Removes the APPLE_INTERNAL bit, when present, to permit OTA updates decline_help_icon |Disables feature that may improve loading speed by preferring generic icons decline_help_size |Disables feature that sets additional UI scaling for very high DPI screens decline_help_text |Disables feature that sets screen text to complementary colours decouple_key_f10 |Unmaps the F10 key from native screenshots (the \ key remains mapped) disable_apfs_load |Disables inbuilt provision of APFS filesystem capability disable_apfs_sync |Disables feature allowing direct APFS/FileVault boot (without "PreBoot") disable_check_amfi |Disables AMFI Checks on Mac OS disable_check_compat |Disables Mac version compatibility checks disable_exitlogo_clear|Disables clearing displayed exit logo images on exit screens disable_exitlogo_image|Disables display of exit logo images on exit screens disable_exitlogo_scale|Disables scaling displayed exit logo images on exit screens disable_pass_gop_thru |Disables feature that provides GOP instance on UGA for some loading screens disable_legacy_sync |Disables detailed indentification of Mac legacy BIOS boot capability disable_nvram_paniclog|Disables logging Mac OS kernel panics to nvRAM disable_nvram_protect |Disables blocking of potentially harmful write attempts to Legacy Mac nvRAM disable_reload_gop |Disables reinstallation of UEFI 2.x GOP drivers on EFI 1.x units disable_rescan_dxe |Disables scanning for newly revealed DXE drivers when connecting handles disable_set_applefb |Disables provision, under some circumstances, of missing Apple Framebuffers disable_set_consolegop|Disables feature that fixes some issues with GOP graphics on legacy units enable_esp_filter |Prevents other ESPs other than the RefindPlus ESP being scanned for loaders force_trim |Allows forcing TRIM on Third-Party SSDs on Macs hidden_icons_external |Allows scanning for .VolumeIcon icons on external volumes hidden_icons_ignore |Disables scanning for .VolumeIcon image icons if not required hidden_icons_prefer |Prioritises .VolumeIcon and .VolumeBadge image icons when available icon_row_move |Repositions the main screen icon rows (vertically) icon_row_tune |Fine tunes the resulting icon_row_move outcome mitigate_primed_buffer|Allows enhanced intervention to handle apparent primed keystroke buffers nvram_protect_ex |Extends NvramProtect, if set, to Mac OS and unknown UEFI boots nvram_variable_limit |Limits nvRAM write attempts to the specified variable size pass_uga_through |Provides UGA instance on GOP to permit EFI Boot with modern GPUs persist_boot_args |Overrides using vRAM (instead of nvRAM) for Mac OS boot argument items prefer_uga |Prefers UGA use (when available) regardless of GOP availability ransom_drives |Frees partitions locked by how certain firmware load inbuilt drivers renderer_direct_gop |Provides a potentially improved GOP instance for certain GPUs

View on GitHub
GitHub Stars448
CategoryDevelopment
Updated3d ago
Forks90

Languages

C

Security Score

100/100

Audited on Mar 28, 2026

No findings