• Stars
    star
    249
  • Rank 162,987 (Top 4 %)
  • Language
    C++
  • License
    BSD 3-Clause "New...
  • Created almost 4 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

RestrictEvents

Build Status Scan Status

Lilu Kernel extension for blocking unwanted processes causing compatibility issues on different hardware and unlocking the support for certain features restricted to other hardware. The list of blocks currently includes:

  • /System/Library/CoreServices/ExpansionSlotNotification
  • /System/Library/CoreServices/MemorySlotNotification

The list of patches currently includes:

  • Disabled MacBookAir model memory replacement UI (comes in pair with SystemMemoryStatus = Upgradable quirk).
  • Disabled MacPro7,1 PCI Expansion view and RAM view.
  • CPU brand string patch for non-Intel CPUs (can be forced for Intel with revcpu=1).
  • Disabled uninitialized disk UI

Note: Apple CPU identifier must be 0x0F01 for 8 core CPUs or higher and 0x0601 for 1, 2, 4, or 6 cores. This is the default in OpenCore for non-natively supported CPUs.

Boot arguments

  • -revoff (or -liluoff) to disable
  • -revdbg (or -liludbgall) to enable verbose logging (in DEBUG builds)
  • -revbeta (or -lilubetaall) to enable on macOS older than 10.8 or newer than 14
  • -revproc to enable verbose process logging (in DEBUG builds)
  • revpatch=value to enable patching as comma separated options. Default value is auto.
    • memtab - enable memory tab in System Information on MacBookAir and MacBookPro10,x platforms
    • pci - prevent PCI configuration warnings in System Settings on MacPro7,1 platforms
    • cpuname - custom CPU name in System Information
    • diskread - disables uninitialized disk warning in Finder
    • asset - allows Content Caching when sysctl kern.hv_vmm_present returns 1 on macOS 11.3 or newer
    • sbvmm - forces VMM SB model, allowing OTA updates for unsupported models on macOS 11.3 or newer
    • f16c - resolve CoreGraphics crashing on Ivy Bridge CPUs by disabling f16c instruction set reporting in macOS 13.3 or newer
    • none - disable all patching
    • auto - same as memtab,pci,cpuname, without memtab and pci patches being applied on real Macs
  • revcpu=value to enable (1, non-Intel default)/disable (0, Intel default) CPU brand string patching.
  • revcpuname=value custom CPU brand string (max 48 characters, 20 or less recommended, taken from CPUID otherwise)
  • revblock=value to block processes as comma separated options. Default value is auto.
    • pci - prevent PCI and RAM configuration notifications on MacPro7,1 platforms
    • gmux - block displaypolicyd on Big Sur+ (for genuine MacBookPro9,1/10,1)
    • media - block mediaanalysisd on Ventura+ (for Metal 1 GPUs)
    • none - disable all blocking
    • auto - same as pci

Note: 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:revpatch, 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:revcpu, 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:revcpuname and 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:revblock NVRAM variables work the same as the boot arguments, but have lower priority.

Removing badges (This works until macOS 13)

If using RestrictEvents to block PCI and RAM configuration notifications, they will go away, but the alert in the Apple menu will stay. To get rid of this alert, run the following commands:

defaults delete com.apple.SlotNotificationsPref memoryBadgeCount
defaults delete com.apple.SlotNotificationsPref expansionBadgeCount

Credits

More Repositories

1

OpenCorePkg

OpenCore bootloader
C
13,029
star
2

Lilu

Arbitrary kext and process patching on macOS
C
3,585
star
3

AppleALC

Native macOS HD audio for not officially supported codecs
C++
3,439
star
4

WhateverGreen

Various patches necessary for certain ATI/AMD/Intel/Nvidia GPUs
C++
3,236
star
5

VirtualSMC

SMC emulator layer
C++
1,664
star
6

BrcmPatchRAM

C++
1,037
star
7

MaciASL

ACPI editing IDE for macOS
Objective-C
749
star
8

OcBinaryData

733
star
9

NVMeFix

C++
685
star
10

AirportBrcmFixup

An open source kernel extension providing a set of patches required for non-native Airport Broadcom Wi-Fi cards.
C++
643
star
11

MacHyperVSupport

Hyper-V integration support for macOS
C++
620
star
12

AppleSupportPkg

AppleSupportPkg - contains UEFI drivers for Apple environment support
559
star
13

CPUFriend

Dynamic macOS CPU power management data injection
C++
535
star
14

VoodooPS2

C++
513
star
15

IntelMausi

Intel Ethernet LAN driver for macOS
C
390
star
16

bugtracker

Acidanthera Bugtracker
375
star
17

HibernationFixup

A Lilu plugin intended to fix hibernation compatibility issues
C++
371
star
18

FeatureUnlock

Add Sidecar support to unsupported models
C++
362
star
19

gfxutil

Device Properties conversion tool
C
274
star
20

MacInfoPkg

Mac Platform Information
249
star
21

CpuTscSync

It is a Lilu plugin, combining functionality of VoodooTSCSync and disabling xcpm_urgency if TSC is not in sync. It should solve kernel panics after wake.
C++
171
star
22

MacKernelSDK

macOS kernel SDK targeting various XNU versions
C
167
star
23

AptioFixPkg

AptioFixPkg drivers to workaround macOS compatibility with APTIO UEFI FW
161
star
24

Shiki

Protected video playback support and hardware video acceleration on various hardware.
152
star
25

VoodooInput

Generic Multitouch Handler kernel extension for macOS
C++
151
star
26

BrightnessKeys

Handler for brightness keys without DSDT patches
C++
132
star
27

RTCMemoryFixup

open source kernel extension providing a way to emulate some offsets in your CMOS (RTC) memory
C++
97
star
28

macserial

Decode mac serial number
96
star
29

CryptexFixup

Various patches to install Rosetta Cryptex
C++
88
star
30

BT4LEContinuityFixup

72
star
31

OcSupportPkg

OpenCore common libraries
71
star
32

IOJones

Realtime I/O Registry viewer
60
star
33

DebugEnhancer

A Lilu plugin intended to enable debug output in the macOS kernel
C++
58
star
34

audk

Acidanthera UEFI Development Kit based on EDK II edk2-stable202405
C
57
star
35

dmidecode

dmidecode version with macOS specific improvements
C
40
star
36

ocbuild

Shell
39
star
37

EmeraldSDHC

SD host controller support for macOS
C++
39
star
38

OpenCoreShell

Patched UDK Shell adopted for wide firmware range
38
star
39

EfiPkg

38
star
40

UEFIGraphicsFB

UEFI framebuffer driver for macOS
C++
28
star
41

mac-efi-firmware

C
24
star
42

CpuTopologySync

Rebuild asymmetric CPU topology on macOS.
23
star
43

DuetPkg

Duet UEFI firmware emulator
15
star
44

ocmtoc

C
7
star
45

OcLegacyPkg

Legacy OpenCorePkg repository left for historical purposes
7
star