Skip to content

Commit

Permalink
Add support for macOS Sonoma (#53)
Browse files Browse the repository at this point in the history
* Docs: Add README resources for Sonoma

* README: Update build instructions, fix Continuity features list

* Add AirportItlwm versions for Sonoma

* Bumped OpenCore to v0.9.9

* Fix HDMI audio (#51)
  • Loading branch information
Qonfused authored Mar 25, 2024
1 parent 0455bf4 commit 6b75635
Show file tree
Hide file tree
Showing 6 changed files with 118 additions and 51 deletions.
83 changes: 53 additions & 30 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
<a href="/LICENSE">![License](https://img.shields.io/github/license/Qonfused/ASUS-ZenBook-Duo-14-UX481-Hackintosh?label=⚖%20License&labelColor=3f4551&color=9dc4d0)</a>
<a href="/docs/CHANGELOG.md">![SemVer](https://img.shields.io/badge/SemVer-v0.6.0-important?logo=SemVer&labelColor=3f4551)</a>
<a href="">![Supported Models](https://img.shields.io/badge/Supported%20Models-UX481FA%20%7C%20UX481FL-important?labelColor=3f4551)</a>
<a href="https://github.com/acidanthera/OpenCorePkg/releases">![OpenCore](https://img.shields.io/badge/OpenCore-0.9.8-0c7dbe?logo=Osano&logoColor=0298e1&labelColor=3f4451)</a>
<a href="https://github.com/acidanthera/OpenCorePkg/releases">![OpenCore](https://img.shields.io/badge/OpenCore-0.9.9-0c7dbe?logo=Osano&logoColor=0298e1&labelColor=3f4451)</a>
<a href="https://github.com/Qonfused/ASUS-ZenBook-Duo-14-UX481-Hackintosh/actions/workflows/oce-build.yml">![OCE Build](https://github.com/Qonfused/ASUS-ZenBook-Duo-14-UX481-Hackintosh/actions/workflows/oce-build.yml/badge.svg?branch=main)</a>

</div>
Expand Down Expand Up @@ -55,6 +55,22 @@ Refer to the [CHANGELOG](/docs/CHANGELOG.md) or [SemVer board](https://github.co
</tr>
</thead>
<tbody>
<!-- macOS 14 -->
<tr>
<td>
<img
src="https://raw.githubusercontent.com/Qonfused/ASUS-ZenBook-Duo-14-UX481-Hackintosh/main/docs/assets/README/sonoma.png"
width=25
hspace=2
align="top"
/>
Sonoma
</td>
<td style="text-align: center;">🚧</td>
<td>Untested.</td>
<td><code>(None)</code></td>
<td><a href="https://apps.apple.com/us/app/macos-sonoma/id6450717509"><code>(Latest)</code></a></td>
</tr>
<!-- macOS 13 -->
<tr>
<td>
Expand Down Expand Up @@ -271,22 +287,27 @@ Refer to the [CHANGELOG](/docs/CHANGELOG.md) or [SemVer board](https://github.co
<!-- Continuity -->
<tr>
<td rowspan=6>Continuity</td>
<td>Airplay to Mac</td>
<td>AirDrop</td>
<td style="text-align: center;">❌</td>
<td>Unsupported.</td>
<tr>
<tr>
<td>AirPlay to Mac</td>
<td style="text-align: center;">✅</td>
<td>Supported.</td>
<tr>
<td>Sidecar</td>
<td style="text-align: center;"></td>
<td>Supported.</td>
<td style="text-align: center;"></td>
<td>Unsupported.</td>
<tr>
<td>Handoff</td>
<td style="text-align: center;">✅</td>
<td>Supported.</td>
</tr>
<tr>
<td>Continuity Camera</td>
<td style="text-align: center;">🚧</td>
<td>Untested.</td>
<td style="text-align: center;"></td>
<td>Unsupported.</td>
</tr>
<tr>
<td>Universal Clipboard</td>
Expand All @@ -295,8 +316,8 @@ Refer to the [CHANGELOG](/docs/CHANGELOG.md) or [SemVer board](https://github.co
</tr>
<tr>
<td>Universal Control</td>
<td style="text-align: center;"></td>
<td>Supported.</td>
<td style="text-align: center;"></td>
<td>Unsupported.</td>
</tr>
<!-- Sleep + Wake -->
<tr>
Expand All @@ -323,41 +344,43 @@ Refer to the [CHANGELOG](/docs/CHANGELOG.md) or [SemVer board](https://github.co

### 1. Clone this repository using Git

To clone this repository locally with submodules, run the below commands:
To clone this repository locally, run the below command:
```sh
git clone https://github.com/Qonfused/ASUS-ZenBook-Duo-14-UX481-Hackintosh
cd ASUS-ZenBook-Duo-14-UX481-Hackintosh
```

### 2. Build this repository using OCE-Build

To build this project's EFI, run the below command at the root of the project:
```sh
# Run build pipeline for the UX481FA/FL EFI
bash scripts/build.sh
This project uses [OCE-Build](https://github.com/Qonfused/OCE-Build) to automatically version and build this repository's EFI.

To build this project's EFI, run either of the below commands at the root of the project:
```powershell
# In PowerShell
scripts/build.ps1
# In Bash/WSL
scripts/build.sh
```

You can also manually download [OCE Build](https://github.com/Qonfused/OCE-Build/releases) and run the `ocebuild build` command from the root of the project.
> [!IMPORTANT]
> To run powershell scripts, you may need to set your execution policy using:
> ```powershell
> Set-ExecutionPolicy RemoteSigned
> ```
> [!NOTE]
> For Windows users, running Bash scripts requires a Linux environment (provided by [Cygwin](https://www.cygwin.com/), [MinGW](https://www.mingw-w64.org/), [Git Bash](https://gitforwindows.org/), or [WSL](https://learn.microsoft.com/en-us/windows/wsl/about)).
>
> Refer to [aka.ms/wslinstall](aka.ms/wslinstall) and [aka.ms/wsl2](aka.ms/wsl2) for instructions on installing wsl and upgrading to the wsl2 kernel (recommended).
> - You can install a Linux distribution directly from the Microsoft Store (e.g. [Ubuntu 20.04.5 LTS](https://apps.microsoft.com/store/detail/ubuntu-20045-lts/9MTTCL66CPXJ)).
> - Alternatively, you can [setup devcontainers](https://code.visualstudio.com/docs/devcontainers/containers#_installation) with Docker and VSCode to run a containerized Linux environment on top of wsl. The [devcontainer](/.devcontainer/devcontainer.json) for this project will setup and build the project automatically upon container creation.
You can also download [OCE-Build](https://github.com/Qonfused/OCE-Build/releases) and run the `ocebuild build` command from the root of the project.
### 3. Using this EFI with macOS
Refer to the [Install Guide](https://github.com/Qonfused/ASUS-ZenBook-Duo-14-UX481-Hackintosh/wiki/Install-Guide) and [Post-Install Guide](https://github.com/Qonfused/ASUS-ZenBook-Duo-14-UX481-Hackintosh/wiki/Post-Install-Guide) for installation instructions.
> [!NOTE]
> To enable **iServices** functionality, download [GenSMBIOS](https://github.com/corpnewt/GenSMBIOS) follow the [iServices guide](https://dortania.github.io/OpenCore-Post-Install/universal/iservices.html#using-gensmbios) to generate new SMBIOS data for your machine to be applied before running the build script. You'll then need to store your SMBIOS data in a new **.serialdata** file:
> ```yaml
> MLB: String | "M0000000000000001"
> ROM: Data | <112233445566>
> SystemProductName: String | "MacBookPro16,3"
> SystemSerialNumber: String | "W00000000001"
> SystemUUID: String | "00000000-0000-0000-0000-000000000000"
> ```
To enable **iServices** functionality, you can:
1. Generate SMBIOS data with [GenSMBIOS](https://github.com/corpnewt/GenSMBIOS)
- Follow the Dortania [iServices guide](https://dortania.github.io/OpenCore-Post-Install/universal/iservices.html#using-gensmbios) to generate new SMBIOS data for your machine.
2. For local builds of this EFI, patch *existing* SMBIOS data automatically.
- This is automatically patched each time you run a build using the **.serialdata** file (using existing data or data generated by GenSMBIOS).
- Refer to the [**.serialdata.example**](/src/.serialdata.example) file for an example of the entry format.
Refer to the [Install Guide](https://github.com/Qonfused/ASUS-ZenBook-Duo-14-UX481-Hackintosh/wiki/Install-Guide) and [Post-Install Guide](https://github.com/Qonfused/ASUS-ZenBook-Duo-14-UX481-Hackintosh/wiki/Post-Install-Guide) for installation instructions.
## 🔥 Contributing
Contributions of any size to this project are always welcome!
Expand Down
Binary file added docs/assets/README/sonoma.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
17 changes: 17 additions & 0 deletions scripts/build.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
## @file
# EFI build script for the UX481FA/UX481FL
#
# Copyright (c) 2023, Cory Bennett. All rights reserved.
# SPDX-License-Identifier: BSD-3-Clause
##

[CmdletBinding(PositionalBinding=$false)]
param (
[string]$pwd = "$((Get-Item "$PSScriptRoot\..").FullName)",
# Script arguments
[parameter(ValueFromRemainingArguments)][string[]]$arguments
)

icm `
-ScriptBlock $([Scriptblock]::Create($(iwr 'https://raw.githubusercontent.com/Qonfused/OCE-Build/main/ci/bootstrap.ps1'))) `
-ArgumentList (@("build -c $pwd $patches") + $arguments)
57 changes: 37 additions & 20 deletions src/build.lock
Original file line number Diff line number Diff line change
Expand Up @@ -90,35 +90,52 @@ dependencies:
AirportItlwm-BigSur:
build: DEBUG
version: 2.3.0
url: 'https://github.com/OpenIntelWireless/itlwm/releases/download/v2.3.0-alpha/AirportItlwm-Big_Sur-v2.3.0-DEBUG-alpha-3e1624d.zip'
resolution: 'OpenIntelWireless/itlwm@github:2.3.0#commit=3e1624df2168594ac15bbfe539c751deeedf24cb'
url: 'https://github.com/OpenIntelWireless/itlwm/releases/download/v2.3.0-alpha/AirportItlwm-Big_Sur-v2.3.0-DEBUG-alpha-e886ebb.zip'
resolution: 'OpenIntelWireless/itlwm@github:2.3.0#commit=e886ebb06658d6aee70f87e30a6bbbd0acad1f57'
specifier: 'OpenIntelWireless/itlwm@github:^2.0.0'
kind: Kext
revision: '{ SHA1: 3e1624df2168594ac15bbfe539c751deeedf24cb }'
revision: '{ SHA1: e886ebb06658d6aee70f87e30a6bbbd0acad1f57 }'
AirportItlwm-Catalina:
build: DEBUG
version: 2.3.0
url: 'https://github.com/OpenIntelWireless/itlwm/releases/download/v2.3.0-alpha/AirportItlwm-Catalina-v2.3.0-DEBUG-alpha-3e1624d.zip'
resolution: 'OpenIntelWireless/itlwm@github:2.3.0#commit=3e1624df2168594ac15bbfe539c751deeedf24cb'
url: 'https://github.com/OpenIntelWireless/itlwm/releases/download/v2.3.0-alpha/AirportItlwm-Catalina-v2.3.0-DEBUG-alpha-e886ebb.zip'
resolution: 'OpenIntelWireless/itlwm@github:2.3.0#commit=e886ebb06658d6aee70f87e30a6bbbd0acad1f57'
specifier: 'OpenIntelWireless/itlwm@github:^2.0.0'
kind: Kext
revision: '{ SHA1: 3e1624df2168594ac15bbfe539c751deeedf24cb }'
revision: '{ SHA1: e886ebb06658d6aee70f87e30a6bbbd0acad1f57 }'
AirportItlwm-Monterey:
build: DEBUG
version: 2.3.0
url: 'https://github.com/OpenIntelWireless/itlwm/releases/download/v2.3.0-alpha/AirportItlwm-Monterey-v2.3.0-DEBUG-alpha-3e1624d.zip'
resolution: 'OpenIntelWireless/itlwm@github:2.3.0#commit=3e1624df2168594ac15bbfe539c751deeedf24cb'
url: 'https://github.com/OpenIntelWireless/itlwm/releases/download/v2.3.0-alpha/AirportItlwm-Monterey-v2.3.0-DEBUG-alpha-e886ebb.zip'
resolution: 'OpenIntelWireless/itlwm@github:2.3.0#commit=e886ebb06658d6aee70f87e30a6bbbd0acad1f57'
specifier: 'OpenIntelWireless/itlwm@github:^2.0.0'
kind: Kext
revision: '{ SHA1: 3e1624df2168594ac15bbfe539c751deeedf24cb }'
revision: '{ SHA1: e886ebb06658d6aee70f87e30a6bbbd0acad1f57 }'
AirportItlwm-Sonoma-14:
0:
build: DEBUG
version: 2.3.0
url: 'https://github.com/OpenIntelWireless/itlwm/releases/download/v2.3.0-alpha/AirportItlwm-Sonoma14.0-v2.3.0-DEBUG-alpha-e886ebb.zip'
resolution: 'OpenIntelWireless/itlwm@github:2.3.0#commit=e886ebb06658d6aee70f87e30a6bbbd0acad1f57'
specifier: 'OpenIntelWireless/itlwm@github:^2.3.0-alpha'
kind: Kext
revision: '{ SHA1: e886ebb06658d6aee70f87e30a6bbbd0acad1f57 }'
4:
build: DEBUG
version: 2.3.0
url: 'https://github.com/OpenIntelWireless/itlwm/releases/download/v2.3.0-alpha/AirportItlwm-Sonoma14.4-v2.3.0-DEBUG-alpha-e886ebb.zip'
resolution: 'OpenIntelWireless/itlwm@github:2.3.0#commit=e886ebb06658d6aee70f87e30a6bbbd0acad1f57'
specifier: 'OpenIntelWireless/itlwm@github:^2.3.0-alpha'
kind: Kext
revision: '{ SHA1: e886ebb06658d6aee70f87e30a6bbbd0acad1f57 }'
AirportItlwm-Ventura:
build: DEBUG
version: 2.3.0
url: 'https://github.com/OpenIntelWireless/itlwm/releases/download/v2.3.0-alpha/AirportItlwm-Ventura-v2.3.0-DEBUG-alpha-3e1624d.zip'
resolution: 'OpenIntelWireless/itlwm@github:2.3.0#commit=3e1624df2168594ac15bbfe539c751deeedf24cb'
url: 'https://github.com/OpenIntelWireless/itlwm/releases/download/v2.3.0-alpha/AirportItlwm-Ventura-v2.3.0-DEBUG-alpha-e886ebb.zip'
resolution: 'OpenIntelWireless/itlwm@github:2.3.0#commit=e886ebb06658d6aee70f87e30a6bbbd0acad1f57'
specifier: 'OpenIntelWireless/itlwm@github:^2.2.0'
kind: Kext
revision: '{ SHA1: 3e1624df2168594ac15bbfe539c751deeedf24cb }'
revision: '{ SHA1: e886ebb06658d6aee70f87e30a6bbbd0acad1f57 }'
AppleALC:
build: DEBUG
version: 1.9.0
Expand Down Expand Up @@ -185,12 +202,12 @@ dependencies:
revision: '{ SHA1: 1eb0ddb6cd7b2cd0a72e157a15e8833399afe7e8 }'
IntelBluetoothFirmware:
build: DEBUG
version: 2.3.0
url: 'https://github.com/OpenIntelWireless/IntelBluetoothFirmware/releases/download/v2.3.0/IntelBluetooth-v2.3.0.zip'
resolution: 'OpenIntelWireless/IntelBluetoothFirmware@github:2.3.0#commit=592507aa8cb3d0df3e524bb869f2836271e4fb48'
version: 2.4.0
url: 'https://github.com/OpenIntelWireless/IntelBluetoothFirmware/releases/download/v2.4.0/IntelBluetooth-v2.4.0.zip'
resolution: 'OpenIntelWireless/IntelBluetoothFirmware@github:2.4.0#commit=b9127f5e1ede477577470cc4d4f55134a2901f5b'
specifier: 'OpenIntelWireless/IntelBluetoothFirmware@github:latest'
kind: Kext
revision: '{ SHA1: 592507aa8cb3d0df3e524bb869f2836271e4fb48 }'
revision: '{ SHA1: b9127f5e1ede477577470cc4d4f55134a2901f5b }'
Lilu:
build: DEBUG
version: 1.6.8
Expand Down Expand Up @@ -301,9 +318,9 @@ dependencies:
revision: '{ SHA1: af09b0bf763363ec9f4ecdbbe2f0adeb970948d8 }'
OpenCore:
build: DEBUG
version: 0.9.8
url: 'https://github.com/acidanthera/OpenCorePkg/releases/download/0.9.8/OpenCore-0.9.8-DEBUG.zip'
resolution: 'acidanthera/OpenCorePkg@github:0.9.8#commit=7a3f8cc4269a2f176969534c036b3951c07c3a26'
version: 0.9.9
url: 'https://github.com/acidanthera/OpenCorePkg/releases/download/0.9.9/OpenCore-0.9.9-DEBUG.zip'
resolution: 'acidanthera/OpenCorePkg@github:0.9.9#commit=9b5fb72da3a38446417a7577f8e5e293fdad672e'
specifier: 'acidanthera/OpenCorePkg@github:latest'
kind: Binary
revision: '{ SHA1: 7a3f8cc4269a2f176969534c036b3951c07c3a26 }'
revision: '{ SHA1: 9b5fb72da3a38446417a7577f8e5e293fdad672e }'
10 changes: 10 additions & 0 deletions src/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,16 @@ Kexts:
SMCProcessor: "*"
SMCSuperIO: "*"
# Wi-Fi / Bluetooth
AirportItlwm-Sonoma-14.4:
specifier: OpenIntelWireless/itlwm=^2.3.0-alpha
properties:
MaxKernel: "23.99.99"
MinKernel: "23.4.0"
AirportItlwm-Sonoma-14.0:
specifier: OpenIntelWireless/itlwm=^2.3.0-alpha
properties:
MaxKernel: "23.3.99"
MinKernel: "23.0.0"
AirportItlwm-Ventura:
specifier: OpenIntelWireless/itlwm=^2.2.0
properties:
Expand Down
2 changes: 1 addition & 1 deletion src/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -270,7 +270,7 @@ DeviceProperties:
enable-backlight-smoother: Boolean | true
# Framebuffer connector patches.
# - con0 [eDP] Primary Display
framebuffer-con0-alldata: Data | <00000800 02000000 98000000>
framebuffer-con0-alldata: Data | <00000800 02000000 98010000>
framebuffer-con0-enable: Data | <01000000>
# - con1 [DP] ScreenPad-Plus
framebuffer-con1-alldata: Data | <01010900 00040000 C7030000>
Expand Down

0 comments on commit 6b75635

Please sign in to comment.