Raccogliere i File

Questa pagina è una raccolta di vari file necessari per l'avvio di macOS, ci aspettiamo che tu, prima di iniziare, conosca bene il tuo hardware e ci auguriamo che tu abbia fatto già un Hackintosh in passato, perchè non andremo così nel dettaglio in questa pagina.

Qual'è il miglior modo per capire se il mio hardware è supportato?

Vedi la Pagina delle limitazioni hardware per capire meglio ciò che MacOs richiede avviarsi, Clover e OpenCore hanno un supporto hardware abbastanza simile.

Come posso capire che hardware ho?

Vedi la pagina precedente: Scoprire il tuo hardware

Driver del Firmware

I Firmware drivers sono dei drivers utilizzati da OpenCore negli ambienti UEFI. Servono principalmente per avviare una computer, estendendo la capacità di patch di OpenCore oppure mostrandoti le diverse unità nel selettore(ovvero le unità HFS).

  • Nota sul posizionamento: Questi file devono essere posizionati sotto EFI/OC/Drivers/

Universali

Driver richiesti

Per la maggior parte dei sistemi ti serviranno solo 2 driver .efi per l'avvio:

  • (Richiesto) HfsPlus.efiopen in new window
    • Necessario per vedere i volumi HFS (es. Gli installer di MacOS e le partizioni/immagini recovery). Non mischiare altri HFS drivers
    • Per i processori Sandy Bridge e più vecchi(come come gli Ivy Bridge di fascia bassa(i3 e Celerons), vedi la sezione legacy qui sotto
  • (Richiesto) OpenRuntime.efiopen in new window
    • Sostituzione di AptioMemoryFix.efiopen in new window, usato come estensione per Opencore come aiuto per la patch di boot.efi per correggere l'NVRAM e per una migliore gestione della batteria
    • Ricorda che questo era incluso in Opencorepkg che abbiamo scaricato in precedenza

Utenti Legacy

Oltre a ciò che abbiamo detto in precedenza, se il tuo hardware non supporta l'UEFI (macchine del 2011 e meno recenti) avrai bisogno di quanto segue. Presta atenzione a tutte le voci qui sotto perchè potresti avere bisogno di tutte e 4

Questi file andranno nella cartella "drivers" della tua EFI

Driver specifici per le cpu 32-Bit

Per coloro che hanno cpu a 32 bit, consigliamo di inserire questo driver

Kexts

Un kext è un kernel extension (estensione kernel), li possiammo immaginare come una sorta di drivers per MacOs, questi file andranno nella cartella kext della tua EFI.

  • Nota per Windows e Linux: I kext saranno visti come normali cartelle dal vostro sistema, controlla più volte che la cartella che stai installando abbia un'estensione .kext visibile(e non aggiungere manulamente l'estensione se non è presente).
    • Se qualche kext dovesse includere un file .dSYM, lo puoi semplicemente cancellare. Sono utili solamente per il debug.
  • Nota sul posizionamento: Questi files devono essere posizionati sotto EFI/OC/Kexts/.

Tutti i kext elencati in precedenza possono essere trovati pre-compilati nella Kext Repoopen in new window. I kext qui indicati vengono compilati ogni volta che c'è un nuovo aggiornamento.

Obbligatori

Kext richiesti

Senza i due qua sotto nessun sistema è avviabile:

  • (Richiesto) VirtualSMCopen in new window
    • Emula il chip SMC che si trova sui veri Mac, senza questo MacOs non si avvierà.
    • Necessita OS X 10.4 o più recenti
  • (Richiesto) Liluopen in new window
    • Un kext per modificare molti processi necessario per AppleALC, WhateverGreen, VirtualSMC e molti altri kext. Senza lilu non funzioneranno.
    • Nota bene che Lilu ed i plugins per funzionare richiedono OS X 10.4 o più recenti

Plugin di VirtualSMC

I plug-in seguenti non sono necessari per l'avvio e aggiungono semplicemente funzionalità extra al sistema come il monitoraggio dell'hardware(Nota mentre VirtualSMC supporta 10.6, i plugins potrebbero richiedere 10.8+):

  • SMCProcessor.kext
    • Utilizzato per monitorare la temperatura della CPU, non funziona su sistemi basati su CPU AMD
    • Richiede OS X 10.7 o più recenti
  • SMCSuperIO.kext
    • Utilizzato per monitorare la velocità della ventola, non funziona su sistemi basati su CPU AMD
    • Richiede OS X 10.6 o più recenti
  • SMCLightSensor.kext
    • Utilizzato per il sensore di luminosità sui laptop, i desktop possono ignorare
    • Non utilizzare se non si ha un sensore di luminosità, può causare problemi in caso contrario
    • Richiede OS X 10.6 o più recenti
  • SMCBatteryManager.kext
    • Utilizzato per misurare la batteria sui laptop, i desktop possono ignorare
    • Richiede OS X 10.4 o più recenti
  • SMCDellSensors.kext
    • Consente un monitoraggio e un controllo più accurato delle ventole sulle macchine Dell che supportano il System Management Mode (SMM)
    • Non utilizzare se non si dispone di una macchina Dell supportata, principalmente i laptop Dell possono trarre vantaggio da questo kext
    • Richiede OS X 10.7 o più recenti

Grafica

  • WhateverGreenopen in new window
    • Utilizzato per la patch grafica di DRM, controllo del board ID, correzioni di framebuffer...
    • Tutte le GPU beneficiano di questo kext.
    • Necessita di OS X 10.6 o più recenti

Audio

  • AppleALCopen in new window
    • Utilizzato per patch di AppleHDA, consentendo il supporto per la maggior parte dei controller audio integrati
    • I processori AMD 15°/16° potrebbero avere problemi con questo kext e i sistemi Ryzen/Threadripper raramente supportano il microfono
    • Necessita di OS X 10.8 o più recenti
Kext audio per i sistemi legacy

Per coloro che intendono avviare 10.7 e versioni precedenti, è preferibile optare per questi kext:

Ethernet

Qui supponiamo che tu sappia quale scheda ethernet ha il tuo sistema, ricorda che le pagine delle specifiche del prodotto molto probabilmente elencheranno il tipo di scheda di rete.

  • IntelMausiopen in new window
    • Necessario per la maggior parte delle schede di rete Intel, i chipset basati su I211 avranno bisogno di SmallTreeIntel82576 kext
    • I NIC Intel 82578, 82579, I217, I218 e I219 sono ufficialmente supportati
    • Necessita OS X 10.9 o più recenti, gli utenti 10.6-10.8 possono utilizzare IntelSnowMausi
  • SmallTreeIntel82576 kextopen in new window
    • Richiesto per i211 NIC, basato sul kext SmallTree ma patchato per supportare I211
    • Richiesto per la maggior parte delle schede AMD che eseguono NIC Intel
    • Richiede OS X 10.9-12 (v1.0.6), macOS 10.13-14 (v1.2.5), macOS 10.15+ (v1.3.0)
  • AtherosE2200Ethernetopen in new window
    • Richiesto per Atheros e i NIC Killer
    • Richiede OS X 10.8 o successivo
    • Nota: i modelli Atheros Killer E2500 sono in realtà basati su Realtek, per questi sistemi si consiglia di utilizzare RealtekRTL8111open in new window
  • RealtekRTL8111open in new window
    • Per i Gigabit Ethernet di Realtek
    • Richiede OS X 10.8 e meno recenti per la versione 2.2.0 e inferiori, macOS 10.12 e sucessivi per le versioni 2.2.2 e 2.3.0 (incluse), macOS 10.14 e sucessivi per la versione 2.4.0 e sucessive
    • NOTA: a volte i Gigabit Ethernet di Realtek potrebbe non funzionare correttamente se si utilizza l'ultima versione del kext. Se hai qualche problema, prova ad usare vecchie versioni.
  • LucyRTL8125Ethernetopen in new window
    • Per i 2,5 Gb Ethernet di Realtek
    • Richiede macOS 10.15 o successivo
  • Per i NIC I225-V di Intel, le patch sono menzionate nella sezione desktop Comet Lake DeviceProperties. Non è richiesto nessun kext.
    • Richiede macOS 10.15 o successivo
  • For Intel's I350 NICs, patches are mentioned in the HEDT Sandy and Ivy Bridge-E DeviceProperties section. No kext is required.
    • Requires OS X 10.10 or newer
Kext Ethernet per sistemi Legacy

Rilevante per le installazioni di macOS legacy o per vecchi computer.

Inoltre, tieni presente che alcune schede NIC sono effettivamente supportate in modo nativo in macOS:

Controller Ethernet Nativamente Supportati

Serie Aquantia

# AppleEthernetAquantiaAqtion.kext
pci1d6a,1    = Aquantia AQC107
pci1d6a,d107 = Aquantia AQC107
pci1d6a,7b1  = Aquantia AQC107
pci1d6a,80b1 = Aquantia AQC107
pci1d6a,87b1 = Aquantia AQC107
pci1d6a,88b1 = Aquantia AQC107
pci1d6a,89b1 = Aquantia AQC107
pci1d6a,91b1 = Aquantia AQC107
pci1d6a,92b1 = Aquantia AQC107
pci1d6a,c0   = Aquantia AQC113
pci1d6a,4c0  = Aquantia AQC113
1
2
3
4
5
6
7
8
9
10
11
12

Nota bene: A causa di alcuni firmware obsoleti forniti su molti NIC Aquantia, potrebbe essere necessario aggiornare il firmware da Linux/Windows per assicurarsi che sia compatibile con macOS.

Serie Intel

# AppleIntel8254XEthernet.kext
pci8086,1096 = Intel 80003ES2LAN
pci8086,100f = Intel 82545EM
pci8086,105e = Intel 82571EB/82571GB

# AppleIntelI210Ethernet.kext
pci8086,1533 = Intel I210
pci8086,15f2 = Intel I225LM (Added in macOS 10.15)

# Intel82574L.kext
pci8086,104b = Intel 82566DC
pci8086,10f6 = Intel 82574L

1
2
3
4
5
6
7
8
9
10
11
12
13

Serie Broadcom

# AppleBCM5701Ethernet.kext
pci14e4,1684 = Broadcom BCM5764M
pci14e4,16b0 = Broadcom BCM57761
pci14e4,16b4 = Broadcom BCM57765
pci14e4,1682 = Broadcom BCM57762
pci14e4,1686 = Broadcom BCM57766
1
2
3
4
5
6

USB

  • USBInjectAllopen in new window

    • Utilizzato per iniettare i contreller USB Intel su sistemi senza porte USB definite in ACPI
    • Non dovrebbe essere necessario su Desktop Skylake e versioni più recenti
      • Su AsRock questo kext è invece sempre necessario
      • Si consiglia tuttavia di utilizzare questo kext anche con processori Coffee Lake e laptop meno recenti
    • Non funziona su nessuna CPU AMD
    • Necessita di OS X 10.11 o più recenti
  • XHCI-unsupportedopen in new window

    • Necessario per i controller USB non nativi
    • CPU basate su sistemi AMD non lo necessitano questo kext
    • Schede madri che solitamente richiedono questo kext:
      • H370
      • B360
      • H310
      • Z390(Non necessario su Mojave e versioni più recenti)
      • X79
      • X99
      • Schede AsRock (Necessario sulle schede madri Intel, non necessario tuttavia sulle schede B460/Z490+)

WiFi e Bluetooth

Intel

  • AirportItlwmopen in new window
    • Aggiunge il supporto per un'ampia varietà di schede wireless Intel e funziona in modo nativo nella recovery grazie all'integrazione della famiglia IO80211
    • Richiede macOS 10.13 o più recente e Apple Secure Boot per funzionare correttamente
  • IntelBluetoothFirmwareopen in new window
    • Aggiunge il supporto Bluetooth a macOS se associato a una scheda wireless Intel
    • Richiede MacOs 10.13 o più recenti
Ulteriori informazioni sull'attivazione di AirportItlwm

Per abilitare il supporto di AirportItlwm con OpenCore, dovrai:

  • Abilita Misc -> Security -> SecureBootModel impostandolo comeDefault o qualche altro valore valido
    • Questo è discusso successivamente più avanti in questa guida ma anche nella guida post-installazione: Apple Secure Boot
  • Se non puoi abilitare SecureBootModel, puoi comunque forzare l'inserimento di IO80211Family (Altamente sconsigliato)
    • Imposta quanto segue in Kernel -> Force nel tuo config.plist (discusso più avanti in questa guida):

Broadcom

  • AirportBrcmFixupopen in new window
    • Utilizzato per patchare schede Broadcom non Apple/non Fenvi, Non funzionerà su schede Intel, Killer, Realtek, ecc
    • Richiede OS X 10.10 o versioni più recenti
  • BrcmPatchRAMopen in new window
    • Utilizzato per caricare il firmware sul chipset Broadcom Bluetooth, richiesto per tutte le schede non Apple/non Fenvi Airport.
    • Da associare a BrcmFirmwareData.kext
      • BrcmPatchRAM3 per 10.15+ ( deve essere asscociato con BrcmBluetoothInjector)
      • BrcmPatchRAM2 per 10.11-10.14
      • BrcmPatchRAM per 10.8-10.10
BrcmPatchRAM ordine di caricamento

L'ordine in Kernel -> Add dovrebbe essere:

  1. BrcmBluetoothInjector
  2. BrcmFirmwareData
  3. BrcmPatchRAM3

ProperTree lo gestirà automaticamente, quindi non te ne devi preoccupare

Kexts specifici per CPU AMD

  • XLNCUSBFIXopen in new window
    • Fix USB per sistemi AMD FX, non consigliata per Ryzen
    • Richiede macOS 10.13 o versioni più recenti
  • VoodooHDAopen in new window
    • Audio per sistemi FX e supporto Microfono + Audio sul pannello frontale per i sistemi Ryzen, non usare con AppleALC. La qualità audio è notevolmente peggiore di AppleALC sulle CPU Zen
    • Richiede OS X 10.6 o successivo

Extra

  • AppleMCEReporterDisableropen in new window
    • Utile a partire da Catalina per disabilitare il kext AppleMCEReporter che causerebbe kernel panic su CPU AMD e sistemi dual-socket
    • SMBIOS interessati:
      • MacPro6,1
      • MacPro7,1
      • iMacPro1,1
    • Richiede macOS 10.15 o versioni più recenti
  • CpuTscSyncopen in new window
    • Necessario per la sincronizzazione del TSC su alcune schede madri Intel HEDT e server, senza questo macOS potrebbe essere estremamente lento o non avviabile.
    • Non funziona su CPU AMD
    • Richiede OS X 10.8 o versioni più recenti
  • NVMeFixopen in new window
    • Utilizzato per correggere la gestione dell'alimentazione e l'inizializzazione di NVMe non Apple
    • Richiede macOS 10.14 o versioni più recenti
  • SATA-Unsupportedopen in new window
    • Aggiunge il supporto per un'ampia varietà di controller SATA, principalmente utile per i laptop che hanno problemi nel vedere l'unità SATA in macOS. Si consiglia prima di provare senza questo.
    • Nota per MacOs Big Sur: CtlnaAHCIPortopen in new window dovrà essere utilizzato invece perché numerosi controller sono stati eliminati dal binario stesso
      • Coloro che utilizzano Catalina e versioni precedenti non ne sono coinvolti
Kext SATA per sistemi Legacy

Tastiera, mouse e trackpad dei laptop

Per capire che tipo di tastiera e trackpad hai, controlla Gestione dispositivi in Windows o dmesg | grep -i input in Linux

Attenzione

La maggior parte delle tastiere dei laptop sono PS2! Dovresti provare un tentativo con VoodooPS2 anche se hai un trackpad di altre tipologie.

Trackpad/Tastiere PS2

  • VoodooPS2open in new window
    • Funziona con molti sistemi con tastiere, mouse e trackpad di tipo PS2
    • Richiede almeno macOS 10.11 per le funzioni MT2 (Magic Trackpad 2)
  • RehabMan VoodooPS2open in new window
    • Per i sistemi meno recenti con tastiere, mouse e trackpad PS2 o quando non si vuole utilizzare VoodooInput
    • Supporta macOS 10.6 e più recenti

Trackpad SMBus

Dispositivi HID I2C/USB

  • VoodooI2Copen in new window
    • Richiede almeno macOS 10.11.
    • Si collega ai controller I2C per permettere ai plugin di collegarsi ai trackpad I2C
    • I dispositivi USB che usano i plugin sottostanti necessitano di VoodooI2C
    • Devi essere accoppiato con uno dei plugin sottostanti:

Plugin di VoodooI2C

Tipo di connessionePluginNote
Multitouch HIDVoodooI2CHIDUtilizzabile con i Touchscreen e Trackpad I2C/USB
ELAN ProprietaryVoodooI2CElanELAN1200+ invece richiede VoodooI2CHID
FTE1001 touchpadVoodooI2CFTE
Atmel Multitouch ProtocolVoodooI2CAtmelMXT
Synaptics HIDVoodooRMIopen in new windowI2C Synaptic Trackpads (Richiede VoodooI2C solo per la modalità I2C)
Alps HIDAlpsHIDopen in new windowVisibile maggiormente nei laptop Dell. Utilizzabile con Trackpad Alps I2C

Kext misti per Laptop

Fare riferimento a Kexts.mdopen in new window per un elenco completo dei kext supportati

SSDT

Quando vedi tutti quegli SSDT nella cartella AcpiSamples ti potresti chiedere se ne hai bisogno. Esamineremo gli SSDT di cui hai bisogno nella guida Iniziamo con ACPI, la quale ha una sezione estesa sugli SSDT inclusa la loro compilazione sulle diverse piattaforme.

Ultimo Aggiornamento:
Chi ha contribuito alla creazione di questa pagina: Mykola Grymalyuk, khronokernel, tiziodcaio, Dhinak G, Avery Black, Daniele TDC, Daniele TDC, Mykola Grymalyuk, tiziodcaio, Aleksandar Kovač, Daniele Basso, HibanaSama, 柠火, Flagers, HibanaSama, John Davis, Rasmus Lerdorf, Volodymyr Shcherbinin (vovin), superkid200