From 2768090383a376aef3c1042c97b9d2ec2efd32ae Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Tue, 31 May 2022 16:00:16 -0600 Subject: [PATCH] installer.py: Add pre-10.13 incantation handling for createinstallmedia --- resources/installer.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/resources/installer.py b/resources/installer.py index 992c34566..49bcd196c 100644 --- a/resources/installer.py +++ b/resources/installer.py @@ -337,7 +337,18 @@ def generate_installer_creation_script(script_location, installer_path, disk): # Implemnting this into a single installer.sh script allows us to only call # OCLP-Helper once to avoid nagging the user about permissions + additional_args = "" + createinstallmedia_path = str(Path(installer_path) / Path("Contents/Resources/createinstallmedia")) + plist_path = str(Path(installer_path) / Path("Contents/Info.plist")) + if Path(plist_path).exists(): + plist = plistlib.load(Path(plist_path).open("rb")) + if "DTPlatformVersion" in plist: + platform_version = plist["DTPlatformVersion"] + platform_version = platform_version.split(".")[0] + if platform_version[0] == "10": + if int(platform_version[1]) < 13: + additional_args = f" --applicationpath '{installer_path}'" if script_location.exists(): script_location.unlink() @@ -347,7 +358,9 @@ def generate_installer_creation_script(script_location, installer_path, disk): script.write(f'''#!/bin/bash erase_disk='diskutil eraseDisk HFS+ OCLP-Installer {disk}' if $erase_disk; then - "{createinstallmedia_path}" --volume /Volumes/OCLP-Installer --nointeraction + "{createinstallmedia_path}" --volume /Volumes/OCLP-Installer --nointeraction{additional_args} fi ''') - return True \ No newline at end of file + if Path(script_location).exists(): + return True + return False \ No newline at end of file