Skip to content

Commit

Permalink
v0.12.4 - Full macOS Sequoia Support (#121)
Browse files Browse the repository at this point in the history
* v0.12.4 RC

* Remove screenshots folder

* Re add ventura

Signed-off-by: Coopydood <[email protected]>

---------

Signed-off-by: Coopydood <[email protected]>
  • Loading branch information
Coopydood authored Sep 19, 2024
1 parent 00606a2 commit e9054bb
Show file tree
Hide file tree
Showing 31 changed files with 76 additions and 60 deletions.
7 changes: 5 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,7 @@ ovmf/OVMF_VARS.fd
ovmf/user_store/OVMF_VARS.fd
boot/opencore-image-ng.sh
boot/mnt
docs/screenshots/ventura
docs/screenshots/sonoma
docs/.screenshots
BaseSystem.dmg
.gitignore
boot.xml
Expand All @@ -51,3 +50,7 @@ resources/python/pypresence/__pycache__/
resources/python/smbios/Scripts/__pycache__
resources/python/cpuinfo/__pycache__/
blobs/user/.noBaseSystemReminder
resources/.nrsMode
resources/BaseSystem.dmg
resources/BaseSystem.img
testVM/
2 changes: 1 addition & 1 deletion .version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.12.3
0.12.4
22 changes: 7 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<a href="https://coopydood.github.io/ultimate-macOS-KVM"><img src="https://github.com/Coopydood/ultimate-macOS-KVM/blob/492731ef1d95d2da534c660b001550f4d76a6c68/resources/images/bannerAlphaBasic.png?raw=true" alt="ultimate-macOS-KVM" width="500"/></a>

### v0.12.3
### v0.12.4

Helping you build the ultimate macOS virtual machine, powered by KVM.

Expand All @@ -17,19 +17,11 @@ Helping you build the ultimate macOS virtual machine, powered by KVM.

<h3>macOS Sequoia Support<br><sub>Available Now</sub></h3>

macOS Sequoia has not yet been tested extensively, but it has been **confirmed to install and boot with the current version of ULTMOS** on the latest macOS developer beta.
macOS Sequoia has not yet been tested extensively, but it has been **confirmed to install and boot with the current version of ULTMOS** on the latest macOS version.

<br>

**AutoPilot now has an additional option for macOS Sequoia beta!** <br>Please feel free to try out the macOS Sequoia beta with ULTMOS and leave feedback on how it went!

However, you should **NOT** use macOS Sequoia as your main virtual setup - and should be used for test purposes only. You have been warned!

You can download the latest recovery image below for use with AutoPilot. The file is hosted on the [Archive.org website](https://archive.org/details/macos-sequoia).

<br>

<p align="center"><a href="https://archive.org/download/macos-sequoia/Latest/BaseSystem.dmg"><img src="https://github.com/Coopydood/ultimate-macOS-KVM/assets/39441479/a8f1cb8f-5ddd-45cc-8598-032180035607" height="38"></a><br><sub> <b>BaseSystem.dmg</b> (1.3 GB)<br>Or, you can also download the <a href="https://archive.org/download/macos-sequoia/macos-sequoia_archive.torrent">torrent</a>.</sub></p>
**AutoPilot now has an additional option for macOS Sequoia!** <br>Please feel free to try out the macOS Sequoia with ULTMOS and leave feedback on how it went!

***

Expand All @@ -42,18 +34,18 @@ You might be new to QEMU/KVM, or a long-time veteran - either way, this project
Scripts? Configs? QEMU arguments? A *"qcow"* file? *Moo?* If you need a little help wrapping your head around this stuff, feel free to check out the [FAQs](https://github.com/Coopydood/ultimate-macOS-KVM/wiki/FAQs) for some quick knowledge on the basics.

<br>
<img src="https://github.com/Coopydood/ultimate-macOS-KVM/assets/39441479/0205f5fe-9278-4f8f-8d5c-d3707f695f52" alt="ultimate-macOS-KVM" width="1400"/>
<img src="https://github.com/user-attachments/assets/baad55d5-2c3d-421c-9394-b5892211479a" alt="ultimate-macOS-KVM" width="1400"/>

<br>
<p align="center"><i>The latest macOS Sequoia beta running on ULTMOS.</i></p>
<p align="center"><i>macOS Sequoia running on ULTMOS.</i></p>

***

## 💎》Features

<ul>
<li><b>Modern macOS Support <a href="https://github.com/Coopydood/ultimate-macOS-KVM/wiki/Supported-Guest-OSes">⎋</a></b></li>
Experience the latest macOS has to offer with built-in support from macOS High Sierra to macOS Sonoma, and even try out the latest macOS Sequoia beta!
Experience the latest macOS has to offer with built-in support from macOS High Sierra to macOS Sonoma, and even try out the latest macOS Sequoia!

<li><b>AutoPilot <a href="https://github.com/Coopydood/ultimate-macOS-KVM/wiki/AutoPilot">⎋</a></b></li>
Automatically generates a valid, customised, and ready-to-use QEMU config script in seconds.
Expand Down Expand Up @@ -122,7 +114,7 @@ Here's a table with my best judgment on minimum, recommended, and best system re
| | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/bd4a791d-1ac2-4a9a-8ee0-22e4d5f88cd3"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/184bb2ef-c447-4cbd-b07c-8b4b096e3944"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/cd8029e8-c256-4295-9908-37809d64dcfe"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/79a7a051-0f5a-419e-8544-b51b1572d3b9"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/7d341cce-4370-4430-b3d5-bf1868afe4a3"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/4829ebb4-ce7f-4ecf-8309-d691c9361f6b"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/aa49b5ba-6cca-4dab-bcfc-6bf21909e738"> | <img align="center" width="35" height="35" src="https://github.com/user-attachments/assets/7b9b72ee-5a89-49b4-ae17-7a188ed533ab"> |
|--------------------------:|:--------:|:--------:|:--------:|:--------:|:--------:|:--------:|:---------:|:---------:|
| **AutoPilot** |||||||||
| **Auto<br>Download** |||||||| |
| **Auto<br>Download** |||||||| |
| **Online<br>Install** |||||||||
| **Offline<br>Install** |||||||||
| **QEMU<br>Script** |||||| ✓¹ | ✓¹ | ✓¹ |
Expand Down
2 changes: 1 addition & 1 deletion docs/SupportedGuests.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ If you find something is wrongly marked, please feel free to update it.
| | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/bd4a791d-1ac2-4a9a-8ee0-22e4d5f88cd3"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/184bb2ef-c447-4cbd-b07c-8b4b096e3944"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/cd8029e8-c256-4295-9908-37809d64dcfe"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/79a7a051-0f5a-419e-8544-b51b1572d3b9"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/7d341cce-4370-4430-b3d5-bf1868afe4a3"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/4829ebb4-ce7f-4ecf-8309-d691c9361f6b"> | <img align="center" width="35" height="35" src="https://github.com/Coopydood/OpenCore-Z490E-CometLake/assets/39441479/aa49b5ba-6cca-4dab-bcfc-6bf21909e738"> | <img align="center" width="35" height="35" src="https://github.com/user-attachments/assets/7b9b72ee-5a89-49b4-ae17-7a188ed533ab"> |
|--------------------------:|:--------:|:--------:|:--------:|:--------:|:--------:|:--------:|:---------:|:---------:|
| **AutoPilot** |||||||||
| **Auto<br>Download** |||||||| |
| **Auto<br>Download** |||||||| |
| **Online<br>Install** |||||||||
| **Offline<br>Install** |||||||||
| **QEMU<br>Script** |||||| ✓¹ | ✓¹ | ✓¹ |
Expand Down
17 changes: 17 additions & 0 deletions docs/changelogs/v0-12-4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
## v0.12.4

### Minor update • 19/09/2024

This update includes the following features / fixes / changes:

- macOS Sequoia support
- Added automatic recovery download support in AutoPilot for macOS Sequoia
- Updated downloader scripts to support macOS Sequoia
- Prepare for major "NRS" update
- Remove local screenshots folder
- *do you think Mac-937A206F2EE63C01 would be a catchy nickname?*

To see individual code changes, visit the project's commits page at <https://github.com/Coopydood/ultimate-macOS-KVM/commits/main>

> [!NOTE]
> Remember, commits by Coopydood will always be signed as **4CD28348A3DD016F** or GitHub's public key.
Binary file removed docs/screenshots/ap_changing_values.png
Binary file not shown.
Binary file removed docs/screenshots/ap_in_progress.png
Binary file not shown.
Binary file removed docs/screenshots/ap_mac_address.png
Binary file not shown.
Binary file removed docs/screenshots/ap_success.png
Binary file not shown.
Binary file removed docs/screenshots/ap_summary.png
Binary file not shown.
Binary file removed docs/screenshots/baseConfig.png
Binary file not shown.
Binary file removed docs/screenshots/bootargs_changed.png
Binary file not shown.
Binary file removed docs/screenshots/gpu_checker.png
Binary file not shown.
Binary file removed docs/screenshots/kvm_checker.png
Binary file not shown.
Binary file removed docs/screenshots/mac_pro_example.png
Binary file not shown.
Binary file removed docs/screenshots/macos_recovery.png
Binary file not shown.
Binary file removed docs/screenshots/opencore.png
Binary file not shown.
Binary file removed docs/screenshots/passthrough_checker.png
Binary file not shown.
Binary file removed docs/screenshots/sequoia_passthrough_AtM.png
Binary file not shown.
Binary file removed docs/screenshots/sequoia_passthrough_GPU.png
Binary file not shown.
Binary file removed docs/screenshots/sequoia_passthrough_about.png
Binary file not shown.
Binary file removed docs/screenshots/sequoia_passthrough_desktop.png
Binary file not shown.
Binary file removed docs/screenshots/sequoia_passthrough_rx5700xt.png
Binary file not shown.
Binary file removed docs/screenshots/sequoia_passthrough_safari.png
Binary file not shown.
Binary file removed docs/screenshots/sussymac.png
Binary file not shown.
Binary file removed docs/screenshots/updater.png
Binary file not shown.
5 changes: 3 additions & 2 deletions resources/.upgrade
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,6 @@
0.11.4
0.12.0
0.12.1
0.12.2
0.12.3
0.12.2
0.12.3
0.12.4
73 changes: 37 additions & 36 deletions scripts/autopilot.py
Original file line number Diff line number Diff line change
Expand Up @@ -773,9 +773,9 @@ def stage14():

elif stageSelect == "b" or stageSelect == "B":
currentStage = 1
if USR_TARGET_OS >= 14 and USR_TARGET_OS <= 14:
stage12()
elif USR_TARGET_OS >= 100 and USR_TARGET_OS <= 1012:
#if USR_TARGET_OS >= 14 and USR_TARGET_OS <= 14:
# stage12()
if USR_TARGET_OS >= 100 and USR_TARGET_OS <= 1012:
stage12()
else:
stage13()
Expand Down Expand Up @@ -848,17 +848,17 @@ def stage13():
blob.close()
currentStage = currentStage + 1
stage14()
if USR_TARGET_OS >= 14 and USR_TARGET_OS <= 14:
cpydLog("warn",str("Custom resolution unsupported with Sonoma patching, using default value of "+str(defaultValue)))
USR_SCREEN_RES = "1280x720"
blob = open("./blobs/USR_SCREEN_RES.apb","w")
blob.write(USR_SCREEN_RES)
blob.close()
blob = open("./blobs/.cdn_control","w")
blob.write("fresh_cdn")
blob.close()
currentStage = currentStage + 1
stage14()
#if USR_TARGET_OS >= 14 and USR_TARGET_OS <= 14:
# cpydLog("warn",str("Custom resolution unsupported with Sonoma patching, using default value of "+str(defaultValue)))
# USR_SCREEN_RES = "1280x720"
# blob = open("./blobs/USR_SCREEN_RES.apb","w")
# blob.write(USR_SCREEN_RES)
# blob.close()
# blob = open("./blobs/.cdn_control","w")
# blob.write("fresh_cdn")
# blob.close()
# currentStage = currentStage + 1
# stage14()
else:
print(" "+color.BOLD+"━━━━━━━13/14━━━━━━"+color.GRAY+"━"+color.END)
print("\n "+color.BOLD+"Screen resolution"+color.END)
Expand Down Expand Up @@ -1015,7 +1015,7 @@ def stage12():

if USR_TARGET_OS >= 100 and USR_TARGET_OS <= 1012:
print(color.YELLOW+"\n ⚠"+color.END+color.BOLD+" Download flow disabled for legacy versions.\n You must download an image manually."+color.END)
elif USR_TARGET_OS >= 15 and USR_TARGET_OS <= 99:
elif USR_TARGET_OS >= 16 and USR_TARGET_OS <= 99:
print(color.YELLOW+"\n ⚠"+color.END+color.BOLD+" Download flow disabled for beta versions.\n You must download an image manually."+color.END)


Expand All @@ -1036,7 +1036,7 @@ def stage12():
blob.close()
stage13()
else:
if USR_TARGET_OS >= 100 and USR_TARGET_OS <= 1012 or USR_TARGET_OS >= 15 and USR_TARGET_OS <= 99:
if USR_TARGET_OS >= 100 and USR_TARGET_OS <= 1012: #or USR_TARGET_OS >= 15 and USR_TARGET_OS <= 99:
print(color.END+color.GRAY+"\n 1. Download from Apple..."+color.END)
print(color.BOLD+" 2. Select existing...")
else:
Expand All @@ -1056,7 +1056,7 @@ def stage12():
cpydLog("info",str("Requesting notice display"))
showNotice()

if stageSelect == "1" and USR_TARGET_OS >= 100 and USR_TARGET_OS <= 1012 or stageSelect == "1" and USR_TARGET_OS >= 15 and USR_TARGET_OS <= 99:
if stageSelect == "1" and USR_TARGET_OS >= 100 and USR_TARGET_OS <= 1012:# or stageSelect == "1" and USR_TARGET_OS >= 15 and USR_TARGET_OS <= 99:
stage12()
elif stageSelect == "1":
cpydLog("info","Arming download mechanism")
Expand Down Expand Up @@ -2229,7 +2229,7 @@ def stage3():
elif USR_TARGET_OS == 14:
USR_TARGET_OS_NAME = "Sonoma"
elif USR_TARGET_OS == 15:
USR_TARGET_OS_NAME = "Sequoia Beta"
USR_TARGET_OS_NAME = "Sequoia"

global osIcon

Expand Down Expand Up @@ -2400,37 +2400,38 @@ def stage2():
print("\n "+color.BOLD+color.CYAN+"DEFAULT:",color.END+color.BOLD+"Monterey (12)",color.END)
if customValue == 1:
cpydLog("info",str("Custom value requested, setting up"))
print(color.END+"\n 1. Sonoma (14)")
print(color.END+" 2. Ventura (13)")
print(color.BOLD+" 3. Monterey (12)")
print(color.END+" 4. Big Sur (11)")
print(color.END+" 5. Catalina (10.15)")
print(color.END+" 6. Mojave (10.14)")
print(color.END+" 7. High Sierra (10.13)\n")
print(color.END+"\n 1. Sequoia (15)")
print(color.END+" 2. Sonoma (14)")
print(color.END+" 3. Ventura (13)")
print(color.BOLD+" 4. Monterey (12)")
print(color.END+" 5. Big Sur (11)")
print(color.END+" 6. Catalina (10.15)")
print(color.END+" 7. Mojave (10.14)")
print(color.END+" 8. High Sierra (10.13)\n")

print(color.END+" 8. Legacy versions...\n")
print(color.END+" 9. Sequoia Beta (15)\n")
print(color.END+" 9. Legacy versions...\n")
customInput = str(input(color.BOLD+"Select> "+color.END))

if customInput == "1":
customInput = 14
customInput = 15
elif customInput == "2":
customInput = 13
customInput = 14
elif customInput == "3":
customInput = 12
customInput = 13
elif customInput == "4":
customInput = 11
customInput = 12
elif customInput == "5":
customInput = 1015
customInput = 11
elif customInput == "6":
customInput = 1014
customInput = 1015
elif customInput == "7":
customInput = 1013
customInput = 1014
elif customInput == "8":
customInput = 1013
elif customInput == "9":
customValue = 2
stage2()
elif customInput == "9":
customInput = 15


else:
customValue = 1
Expand Down
3 changes: 2 additions & 1 deletion scripts/dlosx-arg.py
Original file line number Diff line number Diff line change
Expand Up @@ -594,7 +594,8 @@ def main():
{"name": "Big Sur (11.7)", "b": "Mac-2BD1B31983FE1663", "m": "00000000000000000", "short": "big-sur"},
{"name": "Monterey (12.6)", "b": "Mac-B809C3757DA9BB8D", "m": "00000000000000000", "os_type": "latest", "short": "monterey"},
{"name": "Ventura (13)", "b": "Mac-4B682C642B45593E", "m": "00000000000000000", "os_type": "latest", "short": "ventura"},
{"name": "Sonoma (14) ", "b": "Mac-A61BADE1FDAD7B05", "m": "00000000000000000", "short": "sonoma"}
{"name": "Sonoma (14) ", "b": "Mac-827FAC58A8FDFA22", "m": "00000000000000000", "os_type": "latest", "short": "sonoma"},
{"name": "Sequoia (15) ", "b": "Mac-937A206F2EE63C01", "m": "00000000000000000", "os_type": "latest", "short": "sequoia"}
]

def clear(): print("\n" * 150)
Expand Down
3 changes: 2 additions & 1 deletion scripts/dlosx.py
Original file line number Diff line number Diff line change
Expand Up @@ -561,7 +561,8 @@ def main():
{"name": "Big Sur (11.7)", "b": "Mac-2BD1B31983FE1663", "m": "00000000000000000", "short": "big-sur"},
{"name": "Monterey (12.6)", "b": "Mac-B809C3757DA9BB8D", "m": "00000000000000000", "os_type": "latest", "short": "monterey"},
{"name": "Ventura (13)", "b": "Mac-4B682C642B45593E", "m": "00000000000000000", "os_type": "latest", "short": "ventura"},
{"name": "Sonoma (14) ", "b": "Mac-A61BADE1FDAD7B05", "m": "00000000000000000", "short": "sonoma"}
{"name": "Sonoma (14) ", "b": "Mac-827FAC58A8FDFA22", "m": "00000000000000000", "os_type": "latest", "short": "sonoma"},
{"name": "Sequoia (15) ", "b": "Mac-937A206F2EE63C01", "m": "00000000000000000", "os_type": "latest", "short": "sequoia"}
]

def clear(): print("\n" * 150)
Expand Down
2 changes: 1 addition & 1 deletion scripts/drpc.py
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@
if osOpt != "macos-highsierra" and osOpt != "macos-mojave" and osOpt != "macos-catalina" and osOpt != "macos-bigsur" and osOpt != "macos-monterey" and osOpt != "macos-ventura" and osOpt != "macos-sonoma" and osOpt != "macos-sequoia" and osOpt != "macos-sierra" and osOpt != "macos-elcapitan" and osOpt != "macos-yosemite" and osOpt != "macos-mavericks" and osOpt != "macos-mountainlion" and osOpt != "macos-lion" and osOpt != "macos-snowleopard" and osOpt != "macos-leopard":
osOpt = "macos-unknown" # arm large image to use the unknown asset if valid macOS version can't be detected

if osName == "macOS Sequoia": osName = "macOS Sequoia Beta"
if osName == "macOS Sequoia": osName = "macOS Sequoia"

osName1 = osName

Expand Down

0 comments on commit e9054bb

Please sign in to comment.