mirror of
https://github.com/dortania/OpenCore-Legacy-Patcher.git
synced 2026-06-21 06:30:52 +10:00
ix crashing when CD is present
This commit is contained in:
@@ -15,6 +15,7 @@
|
|||||||
- Blocks `/usr/libexec/displaypolicyd` on MacBookPro9,1 to ensure smooth GPU switching
|
- Blocks `/usr/libexec/displaypolicyd` on MacBookPro9,1 to ensure smooth GPU switching
|
||||||
- Add custom SD Card icon
|
- Add custom SD Card icon
|
||||||
- Add automatic codesiging and notarization
|
- Add automatic codesiging and notarization
|
||||||
|
- Fix crashing when CD is present
|
||||||
|
|
||||||
## 0.0.18
|
## 0.0.18
|
||||||
- Disable Vault by default due to breaking installations
|
- Disable Vault by default due to breaking installations
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ class PatchSysVolume:
|
|||||||
delete_path = Path(self.mount_extensions) / Path(delete_current_kext)
|
delete_path = Path(self.mount_extensions) / Path(delete_current_kext)
|
||||||
if Path(delete_path).exists():
|
if Path(delete_path).exists():
|
||||||
print(f"- Deleting {delete_current_kext}")
|
print(f"- Deleting {delete_current_kext}")
|
||||||
subprocess.run(f"sudo rm -R '{delete_path}'".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode()
|
subprocess.run(f"sudo rm -R {delete_path}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode()
|
||||||
else:
|
else:
|
||||||
print(f"- Couldn't find {delete_current_kext}, skipping")
|
print(f"- Couldn't find {delete_current_kext}, skipping")
|
||||||
|
|
||||||
@@ -85,12 +85,12 @@ class PatchSysVolume:
|
|||||||
existing_path = Path(self.mount_extensions) / Path(add_current_kext)
|
existing_path = Path(self.mount_extensions) / Path(add_current_kext)
|
||||||
if Path(existing_path).exists():
|
if Path(existing_path).exists():
|
||||||
print(f"- Found conflicting kext, Deleting Root Volume's {add_current_kext}")
|
print(f"- Found conflicting kext, Deleting Root Volume's {add_current_kext}")
|
||||||
subprocess.run(f"sudo rm -R '{existing_path}'".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode()
|
subprocess.run(f"sudo rm -R {existing_path}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode()
|
||||||
print(f"- Adding {add_current_kext}")
|
print(f"- Adding {add_current_kext}")
|
||||||
subprocess.run(f"sudo cp -R '{vendor_location}/{add_current_kext}' '{self.mount_extensions}'".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode()
|
subprocess.run(f"sudo cp -R {vendor_location}/{add_current_kext} {self.mount_extensions}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode()
|
||||||
else:
|
else:
|
||||||
print(f"- Adding {add_current_kext}")
|
print(f"- Adding {add_current_kext}")
|
||||||
subprocess.run(f"sudo cp -R '{vendor_location}/{add_current_kext}' '{self.mount_extensions}'".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode()
|
subprocess.run(f"sudo cp -R {vendor_location}/{add_current_kext} {self.mount_extensions}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode()
|
||||||
|
|
||||||
def gpu_accel_patches_11(self):
|
def gpu_accel_patches_11(self):
|
||||||
# TODO: Add proper hardware checks
|
# TODO: Add proper hardware checks
|
||||||
|
|||||||
+13
-9
@@ -506,15 +506,19 @@ Please build OpenCore first!"""
|
|||||||
disks = plistlib.loads(subprocess.run("diskutil list -plist".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode())
|
disks = plistlib.loads(subprocess.run("diskutil list -plist".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode())
|
||||||
for disk in disks["AllDisksAndPartitions"]:
|
for disk in disks["AllDisksAndPartitions"]:
|
||||||
disk_info = plistlib.loads(subprocess.run(f"diskutil info -plist {disk['DeviceIdentifier']}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode())
|
disk_info = plistlib.loads(subprocess.run(f"diskutil info -plist {disk['DeviceIdentifier']}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode())
|
||||||
all_disks[disk["DeviceIdentifier"]] = {"identifier": disk_info["DeviceNode"], "name": disk_info["MediaName"], "size": disk_info["TotalSize"], "partitions": {}}
|
try:
|
||||||
for partition in disk["Partitions"]:
|
all_disks[disk["DeviceIdentifier"]] = {"identifier": disk_info["DeviceNode"], "name": disk_info["MediaName"], "size": disk_info["TotalSize"], "partitions": {}}
|
||||||
partition_info = plistlib.loads(subprocess.run(f"diskutil info -plist {partition['DeviceIdentifier']}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode())
|
for partition in disk["Partitions"]:
|
||||||
all_disks[disk["DeviceIdentifier"]]["partitions"][partition["DeviceIdentifier"]] = {
|
partition_info = plistlib.loads(subprocess.run(f"diskutil info -plist {partition['DeviceIdentifier']}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode())
|
||||||
"fs": partition_info.get("FilesystemType", partition_info["Content"]),
|
all_disks[disk["DeviceIdentifier"]]["partitions"][partition["DeviceIdentifier"]] = {
|
||||||
"type": partition_info["Content"],
|
"fs": partition_info.get("FilesystemType", partition_info["Content"]),
|
||||||
"name": partition_info.get("VolumeName", ""),
|
"type": partition_info["Content"],
|
||||||
"size": partition_info["TotalSize"],
|
"name": partition_info.get("VolumeName", ""),
|
||||||
}
|
"size": partition_info["TotalSize"],
|
||||||
|
}
|
||||||
|
except KeyError:
|
||||||
|
# Avoid crashing with CDs installed
|
||||||
|
continue
|
||||||
# TODO: Advanced mode
|
# TODO: Advanced mode
|
||||||
menu = utilities.TUIMenu(
|
menu = utilities.TUIMenu(
|
||||||
["Select Disk"],
|
["Select Disk"],
|
||||||
|
|||||||
Reference in New Issue
Block a user