398 lines
8.0 KiB
Markdown
Executable File
398 lines
8.0 KiB
Markdown
Executable File
# 02 - Crear USB Instalador macOS
|
|
|
|
## 📋 Requisitos Previos
|
|
|
|
### Hardware Necesario
|
|
- **USB Flash Drive** - Mínimo 16GB (recomendado 32GB)
|
|
- **Acceso a una Mac** o máquina virtual con macOS
|
|
|
|
### Software Necesario
|
|
- **macOS Sequoia 15.x** (o última versión disponible)
|
|
- **OClter** o **createinstallmedia** (incluido con macOS)
|
|
|
|
---
|
|
|
|
## 🍿 Paso 1: Obtener macOS
|
|
|
|
### Opción A: Desde App Store (Mac Real)
|
|
|
|
```bash
|
|
# Buscar "macOS Sequoia" en App Store
|
|
# Descargar automáticamente (15GB+)
|
|
```
|
|
|
|
### Opción B: Desde MacInTouch / Archivos
|
|
|
|
Descargar el instalador desde:
|
|
- App Store → Buscar "macOS Sequoia"
|
|
- Guardará en `/Applications/Install macOS Sequoia.app`
|
|
|
|
### Versión Recomendada
|
|
| Versión | Estado | Notas |
|
|
|---------|--------|-------|
|
|
| macOS Sequoia 15.x | ✅ Recomendado | Última versión estable |
|
|
| macOS Sonoma 14.x | ✅ Compatible | Más probado |
|
|
| macOS Ventura 13.x | ✅ Compatible | Más estable |
|
|
|
|
---
|
|
|
|
## 💾 Paso 2: Preparar USB
|
|
|
|
### Formatear USB en macOS
|
|
|
|
1. **Conectar USB** a la Mac
|
|
2. Abrir **Disk Utility** (Utilidad de Discos)
|
|
3. Seleccionar el USB (no el volumen)
|
|
|
|
```
|
|
Nombre: MyVolume
|
|
Formato: Mac OS Extended (Journaled)
|
|
Esquema: GUID Partition Map
|
|
```
|
|
|
|
4. Click en **Erase** (Borrar)
|
|
|
|
---
|
|
|
|
## 🔧 Paso 3: Crear Instalador con Terminal
|
|
|
|
### Método createinstallmedia (Oficial)
|
|
|
|
Abrir **Terminal** y ejecutar:
|
|
|
|
```bash
|
|
# Para macOS Sequoia
|
|
sudo /Applications/Install\ macOS\ Sequoia.app/Contents/Resources/createinstallmedia \
|
|
--volume /Volumes/MyVolume \
|
|
--nointeraction
|
|
|
|
# Para macOS Sonoma
|
|
sudo /Applications/Install\ macOS\ Sonoma.app/Contents/Resources/createinstallmedia \
|
|
--volume /Volumes/MyVolume \
|
|
--nointeraction
|
|
```
|
|
|
|
**Tiempo estimado**: 30-45 minutos
|
|
|
|
**Salida esperada**:
|
|
```
|
|
Install media now available
|
|
Volume name: MyVolume
|
|
...
|
|
Ready to start.
|
|
To continue, press Y and Return.
|
|
```
|
|
|
|
### Usando OClter (Alternativa)
|
|
|
|
```bash
|
|
# Descargar OClter
|
|
curl -O https://github.com/chris1111/OClter/releases/download/v1.x/OClter.tool
|
|
|
|
# Dar permisos
|
|
chmod +x OClter.tool
|
|
|
|
# Ejecutar
|
|
sudo ./OClter.tool
|
|
```
|
|
|
|
---
|
|
|
|
## 📱 Paso 4: Verificar USB
|
|
|
|
### Comprobar que el USB tenga la estructura correcta
|
|
|
|
```bash
|
|
ls -la /Volumes/MyVolume
|
|
```
|
|
|
|
**Debería contener**:
|
|
```
|
|
MyVolume/
|
|
├── System/
|
|
├── .IAProductInfo
|
|
├── .IAPhysicalMedia
|
|
├── BaseSystem.dmg
|
|
├── BaseSystem.chunklist
|
|
└── ...
|
|
```
|
|
|
|
---
|
|
|
|
## 🖥️ Paso 5: Agregar OpenCore al USB
|
|
|
|
### Descargar OpenCore
|
|
|
|
Ir a: [Acidanthera/OpenCorePkg Releases](https://github.com/acidanthera/OpenCorePkg/releases)
|
|
|
|
Descargar la última versión **stable** (ej: OpenCore-0.9.7-RELEASE.zip)
|
|
|
|
### Estructura de Carpetas
|
|
|
|
En el USB, crear la estructura EFI:
|
|
|
|
```bash
|
|
# Montar EFI del USB (si no está visible)
|
|
sudo diskutil mount diskXs1
|
|
|
|
# Crear estructura
|
|
mkdir -p /Volumes/EFI/OC/{ACPI,Kexts,Drivers,Tools}
|
|
```
|
|
|
|
### Copiar Archivos de OpenCore
|
|
|
|
Desde el ZIP descargado, copiar a `EFI/OC/`:
|
|
|
|
| Archivo | Destino |
|
|
|---------|---------|
|
|
| `OpenCore.efi` | `EFI/OC/` |
|
|
| `BOOTx64.efi` | `EFI/BOOT/` (renombrar a BOOTx64.efi) |
|
|
| `Drivers/` | `EFI/OC/Drivers/` |
|
|
|
|
**Drivers necesarios**:
|
|
```
|
|
EFI/OC/Drivers/
|
|
├── OpenRuntime.efi (REQUIRED)
|
|
├── OpenCanopy.efi (Opcional - para resolución de problemas)
|
|
└── HfsPlus.efi (Opcional - si quieres leer HFS+)
|
|
```
|
|
|
|
---
|
|
|
|
## 📦 Paso 6: Descargar Kexts Esenciales
|
|
|
|
### Lista de Kexts Necesarios
|
|
|
|
```
|
|
EFI/OC/Kexts/
|
|
├── Lilu.kxt (Base)
|
|
├── VirtualSMC.kxt (Emulación SMC)
|
|
├── WhateverGreen.kxt (GPU)
|
|
├── AppleIGC.kxt (Ethernet I226-V)
|
|
├── AirportItlwm.kxt (Wi-Fi Intel)
|
|
├── IntelBluetoothFirmware.kxt (Bluetooth)
|
|
├── IntelBTPatcher.kxt (Parche BT)
|
|
├── AppleALC.kxt (Audio)
|
|
├── VoodooPS2Controller.kxt (Teclado/PS2)
|
|
├── FeatureUnlock.kxt (Features)
|
|
├── SMCProcessor.kxt (VirtualSMC plugin)
|
|
├── SMCSuperIO.kxt (VirtualSMC plugin)
|
|
└── Lilu.kxt (Base - repetido)
|
|
```
|
|
|
|
### Links de Descarga
|
|
|
|
Ver **[downloads.md](downloads.md)** para links directos a GitHub.
|
|
|
|
### Colocar los Kexts
|
|
|
|
```bash
|
|
# Copiar todos los kexts descargados a:
|
|
EFI/OC/Kexts/
|
|
|
|
# Asegurarse de que cada kext sea una carpeta con el .kext dentro
|
|
```
|
|
|
|
---
|
|
|
|
## ⚙️ Paso 7: Crear config.plist
|
|
|
|
### Usar OCAuxiliaryTools (Recomendado)
|
|
|
|
1. Descargar **OCAuxiliaryTools** desde [GitHub](https://github.com/ic005k/OCAuxiliaryTools)
|
|
2. Abrir `config.plist` que viene con OpenCore
|
|
3. Editar según tu hardware
|
|
|
|
### Configuración Mínima para este Hardware
|
|
|
|
#### ACPI
|
|
```
|
|
Add: []
|
|
Delete: []
|
|
Patch: []
|
|
Quirks:
|
|
- FadtEnableReset: YES
|
|
- NormalizeHeaders: YES
|
|
- RebaseRegions: YES
|
|
- ResetHwSig: YES
|
|
- ResetLogoStatus: YES
|
|
```
|
|
|
|
#### Booter
|
|
```
|
|
Quirks:
|
|
- AvoidRuntimeDefrag: YES
|
|
- DevirtualiseMmio: NO
|
|
- DisableSingleUser: NO
|
|
- DisableVariableWrite: NO
|
|
- DiscardHibernateMap: NO
|
|
- EnableSafeModeSlide: NO
|
|
- EnableWriteUnprotector: YES
|
|
- ForceBooterSignature: NO
|
|
- ForceExitBootServices: NO
|
|
- ProtectMemoryRegions: NO
|
|
- ProtectSecureBoot: NO
|
|
- ProtectUefiServices: NO
|
|
- ProvideCustomSlide: YES
|
|
- ProvideMaxSlide: 0
|
|
- ResizeAppleGpuBars: -1
|
|
- RevirtualiseMmio: NO
|
|
- SetupVirtualMap: YES
|
|
- SignalAppleOS: NO
|
|
- SyncRuntimePermissions: YES
|
|
```
|
|
|
|
#### DeviceProperties
|
|
```
|
|
Add: {}
|
|
Delete: {}
|
|
```
|
|
|
|
#### Kernel
|
|
```
|
|
Emulate: NO
|
|
Force: []
|
|
Kexts:
|
|
- BundlePath: Lilu.kext
|
|
Enabled: YES
|
|
ExecutablePath: Contents/MacOS/Lilu
|
|
MaxKernel: ""
|
|
MinKernel: ""
|
|
PlistPath: Contents/Info.plist
|
|
|
|
- BundlePath: VirtualSMC.kext
|
|
Enabled: YES
|
|
...
|
|
|
|
# Repetir para todos los kexts
|
|
```
|
|
|
|
#### Misc
|
|
```
|
|
Boot:
|
|
- HideAuxiliary: NO
|
|
- LauncherOption: Full
|
|
- LauncherPath: Default
|
|
- PickerAttributes: 0
|
|
- PickerAudioAssist: NO
|
|
- PickerMode: Builtin
|
|
- PickerVariant: Default
|
|
- PollAppleHotKeys: NO
|
|
- ShowPicker: YES
|
|
- TakeoffDelay: 0
|
|
- Timeout: 5
|
|
|
|
Debug:
|
|
- AppleDebug: NO
|
|
- ApplePanic: NO
|
|
- DisableWatchDog: NO
|
|
- DisplayDelay: 0
|
|
- DisplayLevel: 2147483650
|
|
- LogModules: "*"
|
|
- SerialInit: NO
|
|
- SysReport: NO
|
|
- Target: 3
|
|
|
|
Entries: []
|
|
Tools: []
|
|
```
|
|
|
|
#### PlatformInfo (SMBIOS)
|
|
```
|
|
Generic:
|
|
- AdviseFeatures: NO
|
|
- MaxBIOSVersion: NO
|
|
- ProcessorType: 0
|
|
- SpoofVendor: NO
|
|
- SystemMemoryStatus: Auto
|
|
- SystemProductName: iMacPro1,1
|
|
- SystemSerialNumber: ...
|
|
- SystemUUID: ...
|
|
- MLB: ...
|
|
- ROM: ...
|
|
- FirmwareFeatures: ...
|
|
- FirmwareFeaturesMask: ...
|
|
|
|
Update: Auto
|
|
UpdateSMBIOSMode: Create
|
|
```
|
|
|
|
**SMBIOS Recomendado**:
|
|
- `iMacPro1,1` - Para i7-13700K (16 cores,推荐)
|
|
- `MacPro7,1` - Alternativa
|
|
|
|
Generar valores únicos con **GenSMBIOS**:
|
|
```bash
|
|
python3 gensmbios.py
|
|
```
|
|
|
|
#### UEFI
|
|
```
|
|
Drivers:
|
|
- Path: OpenRuntime.efi
|
|
|
|
Quirks:
|
|
- IgnoreInvalidFlexRatio: NO
|
|
- ReleaseUsbOwnership: NO
|
|
- RequestBootVarRouting: YES
|
|
- TscSyncTimeout: 0
|
|
- UnblockFsConnect: NO
|
|
```
|
|
|
|
---
|
|
|
|
## 🎯 Paso 8: Configuración Específica para i7-13700K
|
|
|
|
### Kernel → Emulate
|
|
```
|
|
Cpuid1Data: <xx xx xx xx>
|
|
Cpuid1Mask: <xx xx xx xx>
|
|
DummyPowerManagement: NO # IMPORTANTE para Raptor Lake
|
|
```
|
|
|
|
Para Raptor Lake (13th gen), usar estos patches:
|
|
|
|
```xml
|
|
<key>Emulate</key>
|
|
<dict>
|
|
<key>Cpuid1Data</key>
|
|
<data>
|
|
NxcB/V/QwMA=
|
|
</data>
|
|
<key>Cpuid1Mask</key>
|
|
<data>
|
|
////
|
|
</data>
|
|
</dict>
|
|
```
|
|
|
|
---
|
|
|
|
## 📋 Checklist USB Completado
|
|
|
|
- [ ] USB formateado (HFS+, GUID)
|
|
- [ ] Instalador macOS creado
|
|
- [ ] OpenCore copiado
|
|
- [ ] Kexts descargados y copiados
|
|
- [ ] config.plist configurado
|
|
- [ ] SMBIOS generado
|
|
- [ ] Verificar que EFI/OC/ tenga todos los archivos
|
|
|
|
---
|
|
|
|
## 🧪 Paso 9: Probar el USB
|
|
|
|
1. **Conectar USB** al PC Hackintosh
|
|
2. **Arrancar** y presionar `F8` para Boot Menu
|
|
3. **Seleccionar "UEFI: MyVolume"**
|
|
4. Debería ver el **OpenCore Picker**
|
|
|
|
### Si no arranca:
|
|
- Verificar configuración BIOS
|
|
- Verificar estructura EFI
|
|
- Rehacer USB si es necesario
|
|
|
|
---
|
|
|
|
**Siguiente paso: [03 - Configurar EFI](03-efi-config.md)**
|