From aee074d944610084611d1f1613c2b55ac3b9662b Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Sun, 16 Jun 2024 15:18:38 +0100 Subject: [PATCH 01/34] Update README.md Signed-off-by: Coopydood <39441479+Coopydood@users.noreply.github.com> --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 2f3424f..03e79ee 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

macOS Sequoia Support
Coming Soon

@@ -25,6 +25,8 @@ However, you should **NOT** use macOS Sequoia as your main virtual setup - and s Preliminary built-in support for this version will be added to the project shortly. +

Download βŽ‹


+ *** ## πŸ‘‹γ€‹Introduction From 8ec9afad897d75f0e3b8cc449344ecadc68e0f1a Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Sun, 16 Jun 2024 15:58:50 +0100 Subject: [PATCH 02/34] OC restore tool fail fix, sequoia stuff --- .version | 2 +- README.md | 2 +- docs/changelogs/v0-12-1.md | 14 ++++++++++++++ resources/.upgrade | 3 ++- scripts/autopilot.py | 17 ++++++++++++++--- scripts/drpc.py | 2 +- scripts/restore/ocimage.py | 9 +-------- 7 files changed, 34 insertions(+), 15 deletions(-) create mode 100644 docs/changelogs/v0-12-1.md diff --git a/.version b/.version index d33c3a2..aac2dac 100644 --- a/.version +++ b/.version @@ -1 +1 @@ -0.12.0 \ No newline at end of file +0.12.1 \ No newline at end of file diff --git a/README.md b/README.md index 03e79ee..fc03681 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ ultimate-macOS-KVM -### v0.12.0 +### v0.12.1 Helping you build the ultimate macOS virtual machine, powered by KVM. diff --git a/docs/changelogs/v0-12-1.md b/docs/changelogs/v0-12-1.md new file mode 100644 index 0000000..272e4f6 --- /dev/null +++ b/docs/changelogs/v0-12-1.md @@ -0,0 +1,14 @@ +## v0.12.1 + +### Minor update β€’ 16/06/2024 + +This update includes the following features / fixes / changes: + +- Preliminary macOS Sequoia developer beta support +- Fixed an issue where the OpenCore restore tool would fail +- *everyone should have a BIOS splash screen that sexy* + +To see individual code changes, visit the project's commits page at + +> [!NOTE] +> Remember, commits by Coopydood will always be signed as **4CD28348A3DD016F** or GitHub's public key. diff --git a/resources/.upgrade b/resources/.upgrade index 01d6c12..95a4b7e 100644 --- a/resources/.upgrade +++ b/resources/.upgrade @@ -7,4 +7,5 @@ 0.11.2 0.11.3 0.11.4 -0.12.0 \ No newline at end of file +0.12.0 +0.12.1 \ No newline at end of file diff --git a/scripts/autopilot.py b/scripts/autopilot.py index c5917db..3836694 100755 --- a/scripts/autopilot.py +++ b/scripts/autopilot.py @@ -1013,6 +1013,10 @@ 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) + if USR_TARGET_OS >= 15: + print(color.YELLOW+"\n ⚠"+color.END+color.BOLD+" Download flow disabled for beta versions.\n You must download an image manually."+color.END) + + if customValue == 1: cpydLog("info",str("Custom value requested, setting up")) # print(color.BOLD+color.PURPLE+"\n FORMAT:"+color.YELLOW+""+color.END+color.BOLD,""+color.YELLOW+".img"+color.END+"\n Enter a custom value.\n \n ") @@ -1030,7 +1034,7 @@ def stage12(): blob.close() stage13() else: - if USR_TARGET_OS >= 100 and USR_TARGET_OS <= 1012: + if USR_TARGET_OS >= 100 and USR_TARGET_OS <= 1012 or USR_TARGET_OS >= 15: print(color.END+color.GRAY+"\n 1. Download from Apple..."+color.END) print(color.BOLD+" 2. Select existing...") else: @@ -2214,6 +2218,8 @@ def stage3(): USR_TARGET_OS_NAME = "Ventura" elif USR_TARGET_OS == 14: USR_TARGET_OS_NAME = "Sonoma" + elif USR_TARGET_OS == 15: + USR_TARGET_OS_NAME = "Sequoia" global osIcon @@ -2233,7 +2239,9 @@ def stage3(): blob.write(str(USR_TARGET_OS_NAME)) blob.close() - if USR_TARGET_OS == 14: + if USR_TARGET_OS == 15: + USR_TARGET_OS_ID = "sequoia" + elif USR_TARGET_OS == 14: USR_TARGET_OS_ID = "sonoma" elif USR_TARGET_OS == 13: USR_TARGET_OS_ID = "ventura" @@ -2386,8 +2394,9 @@ def stage2(): 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+" 8. Legacy versions...\n") + print(color.END+" 9. Sequoia (15 dev beta)\n") customInput = str(input(color.BOLD+"Select> "+color.END)) if customInput == "1": @@ -2407,6 +2416,8 @@ def stage2(): elif customInput == "8": customValue = 2 stage2() + elif customInput == "9": + customInput = 15 else: customValue = 1 diff --git a/scripts/drpc.py b/scripts/drpc.py index dcf4abb..14e7b9f 100755 --- a/scripts/drpc.py +++ b/scripts/drpc.py @@ -86,7 +86,7 @@ #print(osOpt) -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-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": +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 osName1 = osName diff --git a/scripts/restore/ocimage.py b/scripts/restore/ocimage.py index 0e0fb49..d66fbdb 100755 --- a/scripts/restore/ocimage.py +++ b/scripts/restore/ocimage.py @@ -117,21 +117,14 @@ def throwError(): time.sleep(2) if USR_TARGET_OS <= 1015: os.system("cp resources/oc_store/compat_old/OpenCore.qcow2 boot/OpenCore.qcow2") - os.system("cp resources/oc_store/compat_old/config.plist boot/config.plist") - os.system("cp -R resources/oc_store/compat_old/EFI boot/EFI") else: os.system("cp resources/oc_store/compat_new/OpenCore.qcow2 boot/OpenCore.qcow2") - os.system("cp resources/oc_store/compat_new/config.plist boot/config.plist") - os.system("cp -R resources/oc_store/compat_new/EFI boot/EFI") errorMessage = "Restoration failed. You may not have sufficient\n permissions or damaged files." if os.path.exists("boot/OpenCore.qcow2"): - if os.path.exists("boot/config.plist"): - success() - else: - throwError() + success() else: throwError() From 4fbeb47caa2c1c185fcd7bb6cd48d18fb809fe88 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Sun, 16 Jun 2024 22:31:46 +0100 Subject: [PATCH 03/34] Discord RPC sequoia stuff --- README.md | 2 +- docs/changelogs/v0-12-1.md | 3 ++- scripts/autopilot.py | 5 +++-- scripts/drpc.py | 4 +++- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index fc03681..ec06c2c 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ However, you should **NOT** use macOS Sequoia as your main virtual setup - and s Preliminary built-in support for this version will be added to the project shortly. -

Download βŽ‹


+

Download βŽ‹


*** diff --git a/docs/changelogs/v0-12-1.md b/docs/changelogs/v0-12-1.md index 272e4f6..f9a1265 100644 --- a/docs/changelogs/v0-12-1.md +++ b/docs/changelogs/v0-12-1.md @@ -4,7 +4,8 @@ This update includes the following features / fixes / changes: -- Preliminary macOS Sequoia developer beta support +- Preliminary macOS Sequoia beta support +- Added macOS Sequoia support to Discord rich presence - Fixed an issue where the OpenCore restore tool would fail - *everyone should have a BIOS splash screen that sexy* diff --git a/scripts/autopilot.py b/scripts/autopilot.py index 3836694..7e190e7 100755 --- a/scripts/autopilot.py +++ b/scripts/autopilot.py @@ -2219,11 +2219,12 @@ def stage3(): elif USR_TARGET_OS == 14: USR_TARGET_OS_NAME = "Sonoma" elif USR_TARGET_OS == 15: - USR_TARGET_OS_NAME = "Sequoia" + USR_TARGET_OS_NAME = "Sequoia Beta" global osIcon osIcon = "ap-"+USR_TARGET_OS_NAME.lower().replace(" ","") + osIcon = "ap-"+USR_TARGET_OS_NAME.lower().replace(" beta","") if int(USR_TARGET_OS) < 1013 and int(USR_TARGET_OS) >= 100: osIcon = "ap-legacy" @@ -2396,7 +2397,7 @@ def stage2(): print(color.END+" 7. High Sierra (10.13)\n") print(color.END+" 8. Legacy versions...\n") - print(color.END+" 9. Sequoia (15 dev beta)\n") + print(color.END+" 9. Sequoia Beta (15)\n") customInput = str(input(color.BOLD+"Select> "+color.END)) if customInput == "1": diff --git a/scripts/drpc.py b/scripts/drpc.py index 14e7b9f..132b0fa 100755 --- a/scripts/drpc.py +++ b/scripts/drpc.py @@ -70,7 +70,9 @@ projectVer = "Powered by ULTMOS v"+version -if osVer is not None and osVer == "Sierra" or osVer == "High Sierra" or osVer == "Mojave" or osVer == "Catalina" or osVer == "Big Sur" or osVer == "Monterey" or osVer == "Ventura" or osVer == "Sonoma": +if "Beta" in osVer: osVer = osVer.replace(" Beta","") + +if osVer is not None and osVer == "Sierra" or osVer == "High Sierra" or osVer == "Mojave" or osVer == "Catalina" or osVer == "Big Sur" or osVer == "Monterey" or osVer == "Ventura" or osVer == "Sonoma" or osVer == "Sequoia": osName = "macOS "+osVer elif osVer is not None: osName = "Mac OS X "+osVer From 43281e5ac598b38628e6fd00349975ddc4e849d4 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Sun, 16 Jun 2024 22:47:19 +0100 Subject: [PATCH 04/34] Update sysprofiler with lower blob count --- scripts/sysprofiler.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/sysprofiler.py b/scripts/sysprofiler.py index 2d23a93..3174c0b 100644 --- a/scripts/sysprofiler.py +++ b/scripts/sysprofiler.py @@ -705,7 +705,7 @@ def cpydProfile(logMsg,warn=None): time.sleep(0.1) progressUpdate(65) if len(userBlobList) > 0: - if len(userBlobList) < 17: + if len(userBlobList) < 16: cpydProfile(("UserBlobs : YES ("+str(len(userBlobList))+" total)"),True) warnings.append("Only "+str(len(userBlobList))+" user blobs are present while more are expected,") warnings.append("might be from an old repo version or integrity damage\n") From 817ea2387a61770bef409fe8bf76b640ee01368f Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Sun, 16 Jun 2024 23:38:32 +0100 Subject: [PATCH 05/34] Update SupportedOSes.md Signed-off-by: Coopydood <39441479+Coopydood@users.noreply.github.com> --- docs/SupportedOSes.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/SupportedOSes.md b/docs/SupportedOSes.md index bba10b6..fd70ccf 100644 --- a/docs/SupportedOSes.md +++ b/docs/SupportedOSes.md @@ -4,7 +4,7 @@ -

macOS Sonoma
14.4

+

macOS Sonoma
14.5

This project currently supports the latest version of macOS Sonoma, as well as every prior version down to macOS High Sierra. @@ -25,6 +25,11 @@ The option to use legacy versions is available, but no support will be provided
macOS High Sierra

+#### Pre-Release + + +
macOS Sequoia Beta

+ #### Legacy From e835c81b57fba8d573821e9cf1b4dd2fd480052b Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Sun, 16 Jun 2024 23:45:07 +0100 Subject: [PATCH 06/34] Update v0-12-1.md --- docs/changelogs/v0-12-1.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/changelogs/v0-12-1.md b/docs/changelogs/v0-12-1.md index f9a1265..797b42f 100644 --- a/docs/changelogs/v0-12-1.md +++ b/docs/changelogs/v0-12-1.md @@ -7,7 +7,7 @@ This update includes the following features / fixes / changes: - Preliminary macOS Sequoia beta support - Added macOS Sequoia support to Discord rich presence - Fixed an issue where the OpenCore restore tool would fail -- *everyone should have a BIOS splash screen that sexy* +- *macOS Sequhuehuehuehueio* To see individual code changes, visit the project's commits page at From 6d358872285974f3deb21af08726872a378e8492 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Sun, 16 Jun 2024 23:51:03 +0100 Subject: [PATCH 07/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ec06c2c..dffed7b 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM.
-[![ULTMOS VERSION](https://img.shields.io/github/v/release/Coopydood/ultimate-macOS-KVM?style=for-the-badge&color=1793D1&logo=github&logoColor=white&label=)](https://github.com/Coopydood/ultimate-macOS-KVM/releases/latest) [![GitHub](https://img.shields.io/github/license/Coopydood/ultimate-macOS-KVM?label=Licence&logo=unlicense&logoColor=white&style=for-the-badge)](https://github.com/Coopydood/ultimate-macOS-KVM/blob/main/LICENSE) [![GitHub repo size](https://img.shields.io/github/repo-size/Coopydood/ultimate-macOS-KVM?color=07b55b&label=Size&logo=envoy-proxy&logoColor=white&style=for-the-badge)](https://github.com/Coopydood/ultimate-macOS-KVM) [![Discord](https://img.shields.io/discord/574943603466436628?color=7d86ff&label=Discord&logo=discord&logoColor=white&style=for-the-badge)](https://sl.coopydood.com/discord) +[![ULTMOS VERSION](https://img.shields.io/github/v/release/Coopydood/ultimate-macOS-KVM?style=for-the-badge&color=1793D1&logo=github&logoColor=white&label=)](https://github.com/Coopydood/ultimate-macOS-KVM/releases/latest) [![GitHub](https://img.shields.io/github/license/Coopydood/ultimate-macOS-KVM?label=Licence&logo=unlicense&logoColor=white&style=for-the-badge)](https://github.com/Coopydood/ultimate-macOS-KVM/blob/main/LICENSE) [![GitHub repo size](https://img.shields.io/github/repo-size/Coopydood/ultimate-macOS-KVM?color=07b55b&label=Size&logo=envoy-proxy&logoColor=white&style=for-the-badge)](https://github.com/Coopydood/ultimate-macOS-KVM) [![Discord](https://img.shields.io/discord/574943603466436628?color=7d86ff&label=Discord&logo=discord&logoColor=white&style=for-the-badge)](https://discord.gg/WzWkSsT) *** From f6c05534ee6a20d1516bcd4bee6f8f1b5b927366 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Mon, 17 Jun 2024 15:47:57 +0100 Subject: [PATCH 08/34] Update README.md --- README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index dffed7b..25f642b 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,10 @@ Scripts? Configs? QEMU arguments? A *"qcow"* file? *Moo?* If you need a little h ## πŸ’Žγ€‹Features -
    +
      +
    • Modern macOS Support βŽ‹
    • +Experience the latest macOS has to offer with built-in support for macOS Sonoma, and even try out the latest macOS Sequoia beta! +
    • AutoPilot βŽ‹
    • Automatically generates a valid, customised, and ready-to-use QEMU config script in seconds. From ed6787b86d50e06eb1a8309ec69a3d079754c8a2 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Mon, 17 Jun 2024 15:50:27 +0100 Subject: [PATCH 09/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 25f642b..de225a3 100644 --- a/README.md +++ b/README.md @@ -49,7 +49,7 @@ Scripts? Configs? QEMU arguments? A *"qcow"* file? *Moo?* If you need a little h
      • Modern macOS Support βŽ‹
      • -Experience the latest macOS has to offer with built-in support for 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 beta!
      • AutoPilot βŽ‹
      • Automatically generates a valid, customised, and ready-to-use QEMU config script in seconds. From 6a4f522bdd6a25e6f7bb8bfd33468d56c05ca468 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Mon, 17 Jun 2024 16:00:27 +0100 Subject: [PATCH 10/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index de225a3..16f327a 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. 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. -Please feel free to try out the macOS Sequoia developer beta with ULTMOS and leave feedback on how it went! +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! From 4ddb6c8824a790cb6b2b7205f080cfb80cb191de Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Mon, 17 Jun 2024 22:23:14 +0100 Subject: [PATCH 11/34] Experimental table thing --- README.md | 37 ++++++++++++++++++++++++++++++++++--- docs/SupportedOSes.md | 35 ++++++++++++++++++++++++++++++++++- docs/changelogs/v0-12-1.md | 2 +- 3 files changed, 69 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 16f327a..9583da4 100644 --- a/README.md +++ b/README.md @@ -47,9 +47,9 @@ Scripts? Configs? QEMU arguments? A *"qcow"* file? *Moo?* If you need a little h ## πŸ’Žγ€‹Features -
          -
        • Modern macOS Support βŽ‹
        • -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! +
            +
          • Modern macOS Support βŽ‹
          • +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!
          • AutoPilot βŽ‹
          • Automatically generates a valid, customised, and ready-to-use QEMU config script in seconds. @@ -112,6 +112,37 @@ Here's a table with my best judgment on minimum, recommended, and best system re > [!NOTE] > The recommended and optimal specifications are for reference only. + +

            macOS Guest Feature Support Matrix

            + +| | | | | | | | | | +|-------------------------- |-------- |-------- |-------- |-------- |-------- |-------- |--------- |--------- | +| **AutoPilot** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | +| **Auto
            Download** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ• | +| **Online
            Install** | βœ• | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | +| **Offline
            Install** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | +| **QEMU
            Script** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ΒΉ | βœ“ΒΉ | βœ“ΒΉ | +| **Virt
            Manager** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | ?Β² | ?Β² | ?Β² | +| **GPU
            Passthrough** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ΒΉ | βœ“ΒΉ | βœ“ΒΉ | +| **VirtIO
            Networking** | βœ• | βœ• | ?Β³ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | +| **VirtIO
            Storage** | βœ• | βœ• | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | + + +ΒΉ If trying to boot macOS Ventura and later with GPU passthrough, you may need to do so using Virtual Machine Manager. The QEMU script may have issues with GPU passthrough. + +Β² macOS Ventura and later have been known to have issues booting *without* GPU passthrough in Virtual Machine Manager. + +Β³ I have no idea whether or not VirtIO networking works on macOS Catalina. + +
            + +> [!NOTE] +> This table is a very **loose** representation of the current state of macOS versions and their support with ULTMOS / QEMU / KVM. It's more for reference and shouldn't be taken seriously. +> +> If you find something is wrongly marked, please feel free to update it. +
            + + *** ## πŸ“¦γ€‹Dependencies diff --git a/docs/SupportedOSes.md b/docs/SupportedOSes.md index fd70ccf..4fe975c 100644 --- a/docs/SupportedOSes.md +++ b/docs/SupportedOSes.md @@ -2,7 +2,7 @@ - +

            macOS Sonoma
            14.5

            @@ -49,3 +49,36 @@ The option to use legacy versions is available, but no support will be provided + + +
            +
            + +## Feature Table + + +This table is a very **loose** representation of the current state of macOS versions and their support with ULTMOS / QEMU / KVM. It's more for reference and shouldn't be taken seriously. + +If you find something is wrongly marked, please feel free to update it. + +
            + +| | | | | | | | | | +|-------------------------- |-------- |-------- |-------- |-------- |-------- |-------- |--------- |--------- | +| **AutoPilot** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | +| **Auto
            Download** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ• | +| **Online
            Install** | βœ• | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | +| **Offline
            Install** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | +| **QEMU
            Script** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ΒΉ | βœ“ΒΉ | βœ“ΒΉ | +| **Virt
            Manager** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | ?Β² | ?Β² | ?Β² | +| **GPU
            Passthrough** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ΒΉ | βœ“ΒΉ | βœ“ΒΉ | +| **VirtIO
            Networking** | βœ• | βœ• | ?Β³ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | +| **VirtIO
            Storage** | βœ• | βœ• | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | + + +ΒΉ If trying to boot macOS Ventura and later with GPU passthrough, you may need to do so using Virtual Machine Manager. The QEMU script may have issues with GPU passthrough. + +Β² macOS Ventura and later have been known to have issues booting *without* GPU passthrough in Virtual Machine Manager. + +Β³ I have no idea whether or not VirtIO networking works on macOS Catalina. + diff --git a/docs/changelogs/v0-12-1.md b/docs/changelogs/v0-12-1.md index 797b42f..698bd81 100644 --- a/docs/changelogs/v0-12-1.md +++ b/docs/changelogs/v0-12-1.md @@ -5,7 +5,7 @@ This update includes the following features / fixes / changes: - Preliminary macOS Sequoia beta support -- Added macOS Sequoia support to Discord rich presence +- Added macOS Sequoia beta support to Discord rich presence - Fixed an issue where the OpenCore restore tool would fail - *macOS Sequhuehuehuehueio* From 6dd6fa92a5ecd1c6aac9cc8a8b5f32e36b75b7f1 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Mon, 17 Jun 2024 23:57:38 +0100 Subject: [PATCH 12/34] eversiege can do me senseless Co-authored-by: eversiege --- README.md | 14 +++++++++----- docs/SupportedOSes.md | 2 +- docs/changelogs/v0-12-1.md | 4 ++++ 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 9583da4..1adfefa 100644 --- a/README.md +++ b/README.md @@ -13,19 +13,23 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - + -

            macOS Sequoia Support
            Coming Soon

            +

            macOS Sequoia Support
            Available Now

            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. +
            + +**AutoPilot now has an additional option for macOS Sequoia beta!** 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! -Preliminary built-in support for this version will be added to the project shortly. +You can download the latest recovery image below for use with AutoPilot. -

            Download βŽ‹


            +
            +
            BaseSystem.dmg (1.3 GB)
            *** @@ -116,7 +120,7 @@ Here's a table with my best judgment on minimum, recommended, and best system re

            macOS Guest Feature Support Matrix

            | | | | | | | | | | -|-------------------------- |-------- |-------- |-------- |-------- |-------- |-------- |--------- |--------- | +|--------------------------:|:--------:|:--------:|:--------:|:--------:|:--------:|:--------:|:---------:|:---------:| | **AutoPilot** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | | **Auto
            Download** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ• | | **Online
            Install** | βœ• | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | diff --git a/docs/SupportedOSes.md b/docs/SupportedOSes.md index 4fe975c..f063ec6 100644 --- a/docs/SupportedOSes.md +++ b/docs/SupportedOSes.md @@ -64,7 +64,7 @@ If you find something is wrongly marked, please feel free to update it.
            | | | | | | | | | | -|-------------------------- |-------- |-------- |-------- |-------- |-------- |-------- |--------- |--------- | +|--------------------------:|:--------:|:--------:|:--------:|:--------:|:--------:|:--------:|:---------:|:---------:| | **AutoPilot** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | | **Auto
            Download** | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ• | | **Online
            Install** | βœ• | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | βœ“ | diff --git a/docs/changelogs/v0-12-1.md b/docs/changelogs/v0-12-1.md index 698bd81..60f9145 100644 --- a/docs/changelogs/v0-12-1.md +++ b/docs/changelogs/v0-12-1.md @@ -6,10 +6,14 @@ This update includes the following features / fixes / changes: - Preliminary macOS Sequoia beta support - Added macOS Sequoia beta support to Discord rich presence +- Added temporary download link for macOS Sequoia beta BaseSystem to readme header notification (@eversiege) - Fixed an issue where the OpenCore restore tool would fail - *macOS Sequhuehuehuehueio* To see individual code changes, visit the project's commits page at +> [!NOTE] +> This release has multiple authors. Attributions for contributor changes are included in relevant lines above. + > [!NOTE] > Remember, commits by Coopydood will always be signed as **4CD28348A3DD016F** or GitHub's public key. From 543f97213beaad9e98133842c2df8839526a28c8 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 00:02:37 +0100 Subject: [PATCH 13/34] hacked around the problem lol Signed-off-by: Coopydood <39441479+Coopydood@users.noreply.github.com> --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1adfefa..5716d10 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ However, you should **NOT** use macOS Sequoia as your main virtual setup - and s You can download the latest recovery image below for use with AutoPilot.
            -
            BaseSystem.dmg (1.3 GB)
            +


            BaseSystem.dmg (1.3 GB)

            *** From b0f03d3ea9b5b199d5ad0a1b618df99c95f0b12f Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 00:04:07 +0100 Subject: [PATCH 14/34] you wouldnt download a download button Signed-off-by: Coopydood <39441479+Coopydood@users.noreply.github.com> --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5716d10..b641759 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,8 @@ However, you should **NOT** use macOS Sequoia as your main virtual setup - and s You can download the latest recovery image below for use with AutoPilot.
            -


            BaseSystem.dmg (1.3 GB)

            + +


            BaseSystem.dmg (1.3 GB)

            *** From 0cb0151b1433089edc2abdbf459f5aba6ea883ca Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 00:05:34 +0100 Subject: [PATCH 15/34] oh f*ck me that looks better Signed-off-by: Coopydood <39441479+Coopydood@users.noreply.github.com> --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index b641759..4aed0dc 100644 --- a/README.md +++ b/README.md @@ -21,8 +21,7 @@ macOS Sequoia has not yet been tested extensively, but it has been **confirmed t
            -**AutoPilot now has an additional option for macOS Sequoia beta!** -Please feel free to try out the macOS Sequoia beta with ULTMOS and leave feedback on how it went! +**AutoPilot now has an additional option for macOS Sequoia beta!**
            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! From 676e505d036b8b02b291dd4c5b9f7b5a7b619286 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 00:11:50 +0100 Subject: [PATCH 16/34] lets be honest this aint releasing on the 18th --- docs/changelogs/v0-12-1.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/changelogs/v0-12-1.md b/docs/changelogs/v0-12-1.md index 60f9145..abacc47 100644 --- a/docs/changelogs/v0-12-1.md +++ b/docs/changelogs/v0-12-1.md @@ -1,6 +1,6 @@ ## v0.12.1 -### Minor update β€’ 16/06/2024 +### Minor update β€’ 18/06/2024 This update includes the following features / fixes / changes: From 4cc9d37f26560aff7515ec5babb5c29c129dfe39 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 20:06:33 +0100 Subject: [PATCH 17/34] Add torrent download option --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4aed0dc..a7292f4 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ You can download the latest recovery image below for use with AutoPilot.
            -


            BaseSystem.dmg (1.3 GB)

            +


            BaseSystem.dmg (1.3 GB)
            Or, you can also download the torrent.

            *** From 6d2a6413ed6e80cc56ebf8cd6c24c3ea676f05fb Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 21:59:37 +0100 Subject: [PATCH 18/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a7292f4..5076111 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

            macOS Sequoia Support
            Available Now

            From c8540e43e104b5734246f21f46c3ef702fd1a52f Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:06:56 +0100 Subject: [PATCH 19/34] add archive.org message --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5076111..5da3513 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ macOS Sequoia has not yet been tested extensively, but it has been **confirmed t 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. +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).
            From fa3188c961790769f48e963183e9f6ee07dc4793 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:11:50 +0100 Subject: [PATCH 20/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5da3513..b8a1591 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

            macOS Sequoia Support
            Available Now

            From 7b4327bd54f36109ff19f85b71b904c03310e016 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:12:30 +0100 Subject: [PATCH 21/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b8a1591..b8558f9 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

            macOS Sequoia Support
            Available Now

            From 024a76324812f5fc88dbf57237461fd8a5587927 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:12:53 +0100 Subject: [PATCH 22/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b8558f9..86de12a 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

            macOS Sequoia Support
            Available Now

            From 7013a112d297d7914f6261d24600e10e4ef24883 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:13:34 +0100 Subject: [PATCH 23/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 86de12a..fe46fb0 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

            macOS Sequoia Support
            Available Now

            From b915b866d696485549a82544df507ed037da2e5e Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:13:52 +0100 Subject: [PATCH 24/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fe46fb0..3c30b45 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

            macOS Sequoia Support
            Available Now

            From b38a1d2af37cf44c74a4d73c093eb6f3be42bb6a Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:14:32 +0100 Subject: [PATCH 25/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3c30b45..16c8e76 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

            macOS Sequoia Support
            Available Now

            From d6cf4e75732ed30e39ff0ea0f82997b29acc1d78 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:14:46 +0100 Subject: [PATCH 26/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 16c8e76..bc102f7 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

            macOS Sequoia Support
            Available Now

            From 9194097e1976ecfdee4c52915535bc51c7d24855 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:15:01 +0100 Subject: [PATCH 27/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index bc102f7..53670f0 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

            macOS Sequoia Support
            Available Now

            From 4c1913da5d393fb0dc8fb00d23e10e9dd1fef134 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:15:25 +0100 Subject: [PATCH 28/34] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 53670f0..3c30b45 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

            macOS Sequoia Support
            Available Now

            From 48c11415f1b9bd043541d1a4514664a679860264 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Wed, 19 Jun 2024 20:12:25 +0100 Subject: [PATCH 29/34] v0.12.1 staging --- .gitignore | 3 +- docs/changelogs/v0-12-1.md | 5 ++- main.py | 79 ++++++++++++++++++++++++++++++++--- resources/baseDomain | 11 +---- scripts/extras/xml-convert.py | 16 ++++--- 5 files changed, 90 insertions(+), 24 deletions(-) diff --git a/.gitignore b/.gitignore index bcdaa24..e585b21 100644 --- a/.gitignore +++ b/.gitignore @@ -49,4 +49,5 @@ boot-noUSB.sh resources/python/__pycache__/ resources/python/pypresence/__pycache__/ resources/python/smbios/Scripts/__pycache__ -resources/python/cpuinfo/__pycache__/ \ No newline at end of file +resources/python/cpuinfo/__pycache__/ +blobs/user/.noBaseSystemReminder diff --git a/docs/changelogs/v0-12-1.md b/docs/changelogs/v0-12-1.md index abacc47..8cd19bb 100644 --- a/docs/changelogs/v0-12-1.md +++ b/docs/changelogs/v0-12-1.md @@ -6,8 +6,11 @@ This update includes the following features / fixes / changes: - Preliminary macOS Sequoia beta support - Added macOS Sequoia beta support to Discord rich presence -- Added temporary download link for macOS Sequoia beta BaseSystem to readme header notification (@eversiege) +- Added temporary download link for macOS Sequoia beta BaseSystem to readme header notification (Button design by @eversiege) +- Added a dialog allowing the user to automatically have the BaseSystem removed once a completed install is detected - Fixed an issue where the OpenCore restore tool would fail +- Fixed an issue where the XML converter would not convert physical disks properly +- The BaseSystem is no longer included in the base domain XML file; it is now added on detection - *macOS Sequhuehuehuehueio* To see individual code changes, visit the project's commits page at diff --git a/main.py b/main.py index 6579528..bc81e19 100755 --- a/main.py +++ b/main.py @@ -48,6 +48,7 @@ global VALID_FILE global REQUIRES_SUDO global discordRPC +global baseSystemNotifArmed detectChoice = 1 latestOSName = "Sonoma" @@ -57,6 +58,8 @@ procFlow = 1 discordRPC = 1 +baseSystemNotifArmed = False + version = open("./.version") version = version.read() @@ -76,7 +79,8 @@ def startup(): global detectChoice - + global apFile + global apFilePath detectChoice = None if not os.path.exists("resources/script_store/main.py"): # BACKUP ORIGINAL FILES TO STORE @@ -108,6 +112,7 @@ def startup(): if os.path.exists("./blobs/user/USR_CFG.apb"): global apFilePath global apFilePathNoPT + global apFile global apFilePathNoUSB global macOSVer global mOSString @@ -132,10 +137,11 @@ def startup(): global VALID_FILE global VALID_FILE_NOPT global VALID_FILE_NOUSB - + global baseSystemNotifArmed VALID_FILE = 0 VALID_FILE_NOPT = 0 VALID_FILE_NOUSB = 0 + apFile = open("./"+apFilePath,"r") @@ -153,9 +159,18 @@ def startup(): apFilePathNoPT = apFilePath.replace(".sh","-noPT.sh") apFilePathNoUSB = apFilePath.replace(".sh","-noUSB.sh") - if "APC-RUN" in apFile.read(): + apFileM = apFile.read() + + if "APC-RUN" in apFileM: VALID_FILE = 1 - + + if "#-drive id=BaseSystem,if=none,file=\"$REPO_PATH/BaseSystem.img\",format=raw" not in apFileM and "-drive id=BaseSystem,if=none,file=\"$REPO_PATH/BaseSystem.img\",format=raw" in apFileM and "HDD_PATH=\"/dev/disk/" not in apFileM: + if os.path.exists("./blobs/user/USR_HDD_PATH.apb"): + hddPath = open("./blobs/user/USR_HDD_PATH.apb") + hddPath = hddPath.read() + hddPath = hddPath.replace("$REPO_PATH",os.path.realpath(os.curdir)) + if (os.path.getsize(hddPath)) > 25177079296 and not os.path.exists("./blobs/user/.noBaseSystemReminder"): + baseSystemNotifArmed = True #REQUIRES_SUDO = 1 # UNCOMMENT FOR DEBUGGING if REQUIRES_SUDO == 1: @@ -211,7 +226,40 @@ def startup(): def clear(): print("\n" * 150) - +def baseSystemAlert(): + global apFilePath + clear() + print("\n\n "+color.BOLD+color.GREEN+"FINISHED INSTALLING MACOS?"+color.END,"") + print(" Finished install detected\n") + print(" The assistant has detected that your macOS installation \n may be complete. Would you like me to remove the install\n media from your config file for you?\n\n This stops the \"macOS Base System\" boot entry from appearing.\n") + #print(color.YELLOW+color.BOLD+"\n ⚠ "+color.END+color.BOLD+"WARNING"+color.END+"\n This action requires superuser permissions.\n"+color.END) + print(color.BOLD+" 1. Remove BaseSystem"+color.END) + print(color.END+" Detaches the macOS installer\n from the",apFilePath+" file\n") + print(color.END+" 2. Not now") + print(color.END+" 3. Don't remind me again\n") + detectChoice5 = str(input(color.BOLD+"Select> "+color.END)) + + if detectChoice5 == "1": + with open("./"+apFilePath,"r") as apFile: + apFileM = apFile.read() + apFileM = apFileM.replace("-drive id=BaseSystem,if=none,file=\"$REPO_PATH/BaseSystem.img\",format=raw\n-device ide-hd,bus=sata.4,drive=BaseSystem","#-drive id=BaseSystem,if=none,file=\"$REPO_PATH/BaseSystem.img\",format=raw\n#-device ide-hd,bus=sata.4,drive=BaseSystem") + apFile.close() + time.sleep(1) + with open("./"+apFilePath,"w") as apFile: + apFile.write(apFileM) + apFile.close() + clear() + print("\n\n "+color.BOLD+color.GREEN+"DONE"+color.END,"") + print(" BaseSystem removed successfully\n\n\n\n\n\n\n\n") + time.sleep(3) + clear() + elif detectChoice5 == "3": + with open("./blobs/user/.noBaseSystemReminder","w") as remindFile: + remindFile.write(" ") + remindFile.close() + clear() + else: + clear() os.system("chmod +x -R scripts/*.py") os.system("chmod +x -R scripts/extras/*.py") @@ -291,8 +339,9 @@ def clear(): print("\n" * 150) else: clear() + startup() - + #baseSystemAlert() # uncomment to always trigger notification if detectChoice == "1": os.system('./scripts/autopilot.py') elif detectChoice == "2": @@ -345,11 +394,17 @@ def clear(): print("\n" * 150) subprocess.Popen(["python3","./scripts/drpc.py","--os",macOSVer]) if REQUIRES_SUDO == 1: print(color.YELLOW+color.BOLD+"\n ⚠ "+color.END+color.BOLD+"SUPERUSER PRIVILEGES"+color.END+"\n This script uses physical device passthrough,\n and needs superuser privileges to run.\n\n Press CTRL+C to cancel.\n"+color.END) + if baseSystemNotifArmed == True: + baseSystemAlert() if discordRPC == 0: os.system("sudo ./"+apFilePath+" -d 0") else: os.system("sudo ./"+apFilePath) + + else: + if baseSystemNotifArmed == True: + baseSystemAlert() if discordRPC == 0: os.system("./"+apFilePath+" -d 0") else: @@ -430,11 +485,15 @@ def clear(): print("\n" * 150) subprocess.Popen(["python3","./scripts/drpc.py","--os",macOSVer]) if REQUIRES_SUDO == 1: print(color.YELLOW+color.BOLD+"\n ⚠ "+color.END+color.BOLD+"SUPERUSER PRIVILEGES"+color.END+"\n This script uses physical device passthrough,\n and needs superuser privileges to run.\n\n Press CTRL+C to cancel.\n"+color.END) + if baseSystemNotifArmed == True: + baseSystemAlert() if discordRPC == 0: os.system("sudo ./"+apFilePath+" -d 0") else: os.system("sudo ./"+apFilePath) else: + if baseSystemNotifArmed == True: + baseSystemAlert() if discordRPC == 0: os.system("./"+apFilePath+" -d 0") else: @@ -468,11 +527,15 @@ def clear(): print("\n" * 150) subprocess.Popen(["python3","./scripts/drpc.py","--os",macOSVer]) if REQUIRES_SUDO == 1: print(color.YELLOW+color.BOLD+"\n ⚠ "+color.END+color.BOLD+"SUPERUSER PRIVILEGES"+color.END+"\n This script uses physical device passthrough,\n and needs superuser privileges to run.\n\n Press CTRL+C to cancel.\n"+color.END) + if baseSystemNotifArmed == True: + baseSystemAlert() if discordRPC == 0: os.system("sudo ./"+apFilePathNoPT+" -d 0") else: os.system("sudo ./"+apFilePathNoPT) else: + if baseSystemNotifArmed == True: + baseSystemAlert() if discordRPC == 0: os.system("./"+apFilePathNoPT+" -d 0") else: @@ -506,11 +569,15 @@ def clear(): print("\n" * 150) subprocess.Popen(["python3","./scripts/drpc.py","--os",macOSVer]) if REQUIRES_SUDO == 1: print(color.YELLOW+color.BOLD+"\n ⚠ "+color.END+color.BOLD+"SUPERUSER PRIVILEGES"+color.END+"\n This script uses physical device passthrough,\n and needs superuser privileges to run.\n\n Press CTRL+C to cancel.\n"+color.END) + if baseSystemNotifArmed == True: + baseSystemAlert() if discordRPC == 0: os.system("sudo ./"+apFilePathNoUSB+" -d 0") else: os.system("sudo ./"+apFilePathNoUSB) else: + if baseSystemNotifArmed == True: + baseSystemAlert() if discordRPC == 0: os.system("./"+apFilePathNoUSB+" -d 0") else: diff --git a/resources/baseDomain b/resources/baseDomain index f525ee2..3cc1650 100644 --- a/resources/baseDomain +++ b/resources/baseDomain @@ -74,16 +74,7 @@
            - - - - - - -
            - - - +
            diff --git a/scripts/extras/xml-convert.py b/scripts/extras/xml-convert.py index 9a6bb19..38e76b7 100755 --- a/scripts/extras/xml-convert.py +++ b/scripts/extras/xml-convert.py @@ -39,8 +39,8 @@ detectChoice = "1" detectChoiceM = "" -latestOSName = "Ventura" -latestOSVer = "13" +latestOSName = "Sequoia" +latestOSVer = "15" runs = 0 global cpydPassthrough @@ -174,7 +174,7 @@ def convertBrains(): global apVars global useBlobs apFileS = source.read() - apVars = ["macOS","macOS",apFilePath,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + apVars = ["macOS","macOS",apFilePath,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] if autodetect == False or args.noblobs is True: @@ -207,8 +207,8 @@ def convertBrains(): # REQUIRES FL 7 if os.path.exists("./blobs/user/USR_HDD_ISPHYSICAL.apb"): - with open("./blobs/user/USR_HDD_ISPHYSICAL.apb") as blob: apVars[21] = str(blob.read()) - USR_HDD_ISPHYSICAL = apVars[21] + with open("./blobs/user/USR_HDD_ISPHYSICAL.apb") as blob: apVars[22] = str(blob.read()) + USR_HDD_ISPHYSICAL = apVars[22] else: USR_HDD_ISPHYSICAL = False # REQUIRES FL 6 @@ -408,7 +408,7 @@ def convertBrains(): apOSCvt = apOSCvt.replace("Mac OS X ","") apOSCvt = apOSCvt.replace(".","") - if USR_HDD_ISPHYSICAL == True: + if USR_HDD_ISPHYSICAL == "True": apFileM = apFileM.replace(" \n \n \n \n
            \n "," \n \n \n \n
            \n ") if USR_HDD_TYPE == "HDD": # DISK TYPE ROUTINE; REQUIRES CONFIG FL 6! @@ -420,6 +420,9 @@ def convertBrains(): apFileM = apFileM.replace(" ",""," -->") + if USR_BOOT_FILE != "-2": + apFileM = apFileM.replace("","\n\n \n \n \n \n
            \n \n\n") + if USR_BOOT_FILE == "-2" and useBlobs == True: # DISABLE THE DETACHED BASESYSTEM; REQUIRES BLOB METHOD! apFileM = apFileM.replace("","","") apFileM = apFileM.replace("","") + apFileM = apFileM.replace("$USR_MEMORY",str(apMemCvt)) apFileM = apFileM.replace("$USR_CPU_CORES",apVars[6]) apFileM = apFileM.replace("$USR_CPU_TOTAL",str(apTotalCvt)) From 2279bd141eeb42eceb0b73c3efc7998790383032 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Wed, 19 Jun 2024 20:31:40 +0100 Subject: [PATCH 30/34] Update version headers --- main.py | 4 ++-- scripts/autopilot.py | 4 ++-- scripts/drpc.py | 8 +++++++- scripts/extras.py | 4 ++-- scripts/extras/backup-assist.py | 4 ++-- scripts/extras/boot-args.py | 4 ++-- scripts/extras/cpyd-tui.py | 4 ++-- scripts/extras/dump-vbios.py | 4 ++-- scripts/extras/gpu-check.py | 4 ++-- scripts/repo-update.py | 4 ++-- 10 files changed, 25 insertions(+), 19 deletions(-) diff --git a/main.py b/main.py index bc81e19..fd7c6a2 100755 --- a/main.py +++ b/main.py @@ -51,8 +51,8 @@ global baseSystemNotifArmed detectChoice = 1 -latestOSName = "Sonoma" -latestOSVer = "14" +latestOSName = "Sequoia" +latestOSVer = "15" runs = 0 apFilePath = "" procFlow = 1 diff --git a/scripts/autopilot.py b/scripts/autopilot.py index 7e190e7..b19d8b0 100755 --- a/scripts/autopilot.py +++ b/scripts/autopilot.py @@ -59,8 +59,8 @@ args = parser.parse_args() detectChoice = 1 -latestOSName = "Sonoma" -latestOSVer = "14" +latestOSName = "Sequoia" +latestOSVer = "15" runs = 0 ############################### diff --git a/scripts/drpc.py b/scripts/drpc.py index 132b0fa..cfb2725 100755 --- a/scripts/drpc.py +++ b/scripts/drpc.py @@ -70,7 +70,8 @@ projectVer = "Powered by ULTMOS v"+version -if "Beta" in osVer: osVer = osVer.replace(" Beta","") +if osVer is not None: + if "Beta" in osVer: osVer = osVer.replace(" Beta","") if osVer is not None and osVer == "Sierra" or osVer == "High Sierra" or osVer == "Mojave" or osVer == "Catalina" or osVer == "Big Sur" or osVer == "Monterey" or osVer == "Ventura" or osVer == "Sonoma" or osVer == "Sequoia": osName = "macOS "+osVer @@ -91,8 +92,13 @@ 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" + osName1 = osName + + + if show != "default": smolImage = osOpt osOpt = show diff --git a/scripts/extras.py b/scripts/extras.py index 266dbde..ea4f72d 100755 --- a/scripts/extras.py +++ b/scripts/extras.py @@ -26,8 +26,8 @@ sys.path.insert(0, 'scripts') detectChoice = 1 -latestOSName = "Sonoma" -latestOSVer = "14" +latestOSName = "Sequoia" +latestOSVer = "15" runs = 0 version = open("./.version") diff --git a/scripts/extras/backup-assist.py b/scripts/extras/backup-assist.py index 148307b..6adcb09 100755 --- a/scripts/extras/backup-assist.py +++ b/scripts/extras/backup-assist.py @@ -24,8 +24,8 @@ detectChoice = 1 -latestOSName = "Ventura" -latestOSVer = "13" +latestOSName = "Sequoia" +latestOSVer = "15" runs = 0 class color: diff --git a/scripts/extras/boot-args.py b/scripts/extras/boot-args.py index c82b78b..0c37c18 100755 --- a/scripts/extras/boot-args.py +++ b/scripts/extras/boot-args.py @@ -23,8 +23,8 @@ from cpydColours import color detectChoice = 1 -latestOSName = "Sonoma" -latestOSVer = "14" +latestOSName = "Sequoia" +latestOSVer = "15" runs = 0 bypassMenus = 0 diff --git a/scripts/extras/cpyd-tui.py b/scripts/extras/cpyd-tui.py index 8a9dd3a..e4139e9 100755 --- a/scripts/extras/cpyd-tui.py +++ b/scripts/extras/cpyd-tui.py @@ -25,8 +25,8 @@ from cpydColours import color detectChoice = 1 -latestOSName = "Ventura" -latestOSVer = "13" +latestOSName = "Sequoia" +latestOSVer = "15" runs = 0 diff --git a/scripts/extras/dump-vbios.py b/scripts/extras/dump-vbios.py index ac892ef..47414f2 100644 --- a/scripts/extras/dump-vbios.py +++ b/scripts/extras/dump-vbios.py @@ -25,8 +25,8 @@ from cpydColours import color detectChoice = 1 -latestOSName = "Sonoma" -latestOSVer = "14" +latestOSName = "Sequoia" +latestOSVer = "15" runs = 0 diff --git a/scripts/extras/gpu-check.py b/scripts/extras/gpu-check.py index 1b5e1f1..b831116 100755 --- a/scripts/extras/gpu-check.py +++ b/scripts/extras/gpu-check.py @@ -36,8 +36,8 @@ args = parser.parse_args() detectChoice = 1 -latestOSName = "Sonoma" -latestOSVer = "14" +latestOSName = "Sequoia" +latestOSVer = "15" runs = 0 diff --git a/scripts/repo-update.py b/scripts/repo-update.py index 5360ce7..6e921e5 100755 --- a/scripts/repo-update.py +++ b/scripts/repo-update.py @@ -28,8 +28,8 @@ from cpydColours import color detectChoice = 1 -latestOSName = "Sonoma" -latestOSVer = "14" +latestOSName = "Sequoia" +latestOSVer = "15" runs = 0 noDelta = 0 From 18ba0bc4733dedacb6c868fcf702c11936bab086 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Wed, 19 Jun 2024 20:33:54 +0100 Subject: [PATCH 31/34] Update trigger HDD size --- main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main.py b/main.py index fd7c6a2..2ff7b9c 100755 --- a/main.py +++ b/main.py @@ -169,7 +169,7 @@ def startup(): hddPath = open("./blobs/user/USR_HDD_PATH.apb") hddPath = hddPath.read() hddPath = hddPath.replace("$REPO_PATH",os.path.realpath(os.curdir)) - if (os.path.getsize(hddPath)) > 25177079296 and not os.path.exists("./blobs/user/.noBaseSystemReminder"): + if (os.path.getsize(hddPath)) > 22177079296 and not os.path.exists("./blobs/user/.noBaseSystemReminder"): baseSystemNotifArmed = True #REQUIRES_SUDO = 1 # UNCOMMENT FOR DEBUGGING From 043778d70861e6ba221f03f2e724dd88b0ad7c27 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Wed, 19 Jun 2024 20:35:04 +0100 Subject: [PATCH 32/34] RC 1 --- docs/changelogs/v0-12-1.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/changelogs/v0-12-1.md b/docs/changelogs/v0-12-1.md index 8cd19bb..0f896dd 100644 --- a/docs/changelogs/v0-12-1.md +++ b/docs/changelogs/v0-12-1.md @@ -1,6 +1,6 @@ ## v0.12.1 -### Minor update β€’ 18/06/2024 +### Minor update β€’ 19/06/2024 This update includes the following features / fixes / changes: From 11bca8abc1f88efa4e3d7d787b4ef58bdcafb5e8 Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Wed, 19 Jun 2024 22:58:44 +0100 Subject: [PATCH 33/34] Update README.md Signed-off-by: Coopydood <39441479+Coopydood@users.noreply.github.com> --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3c30b45..a6e4a89 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Helping you build the ultimate macOS virtual machine, powered by KVM. *** - +

            macOS Sequoia Support
            Available Now

            From 4650b478d19cceda36209dbebdd08b012ec26d5d Mon Sep 17 00:00:00 2001 From: Coopydood <39441479+Coopydood@users.noreply.github.com> Date: Thu, 20 Jun 2024 00:42:15 +0100 Subject: [PATCH 34/34] Bump release date --- docs/changelogs/v0-12-1.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/changelogs/v0-12-1.md b/docs/changelogs/v0-12-1.md index 0f896dd..c374474 100644 --- a/docs/changelogs/v0-12-1.md +++ b/docs/changelogs/v0-12-1.md @@ -1,6 +1,6 @@ ## v0.12.1 -### Minor update β€’ 19/06/2024 +### Minor update β€’ 20/06/2024 This update includes the following features / fixes / changes: