Refactor platform detection for VM image download (#337)
Sometimes the platform detection for VM image download is wrong
This commit is contained in:
@@ -29,13 +29,11 @@ UBUNTU_X86_URL = "https://huggingface.co/datasets/xlangai/ubuntu_osworld/resolve
|
|||||||
WINDOWS_X86_URL = "https://huggingface.co/datasets/xlangai/windows_osworld/resolve/main/Windows-x86.zip"
|
WINDOWS_X86_URL = "https://huggingface.co/datasets/xlangai/windows_osworld/resolve/main/Windows-x86.zip"
|
||||||
|
|
||||||
# Determine the platform and CPU architecture to decide the correct VM image to download
|
# Determine the platform and CPU architecture to decide the correct VM image to download
|
||||||
if platform.system() == 'Darwin': # macOS
|
# sometimes the system is 'Darwin' but the machine is x86-based.
|
||||||
# if os.uname().machine == 'arm64': # Apple Silicon
|
if platform.machine().lower() in ['amd64', 'x86_64']:
|
||||||
URL = UBUNTU_ARM_URL
|
|
||||||
# else:
|
|
||||||
# url = UBUNTU_X86_URL
|
|
||||||
elif platform.machine().lower() in ['amd64', 'x86_64']:
|
|
||||||
URL = UBUNTU_X86_URL
|
URL = UBUNTU_X86_URL
|
||||||
|
elif platform.system() == 'Darwin': # macOS
|
||||||
|
URL = UBUNTU_ARM_URL
|
||||||
else:
|
else:
|
||||||
raise Exception("Unsupported platform or architecture")
|
raise Exception("Unsupported platform or architecture")
|
||||||
|
|
||||||
@@ -125,12 +123,12 @@ def _install_vm(vm_name, vms_dir, downloaded_file_name, os_type, original_vm_nam
|
|||||||
# Download the virtual machine image
|
# Download the virtual machine image
|
||||||
logger.info("Downloading the virtual machine image...")
|
logger.info("Downloading the virtual machine image...")
|
||||||
downloaded_size = 0
|
downloaded_size = 0
|
||||||
|
# sometimes the system is 'Darwin' but the machine is x86-based.
|
||||||
if os_type == "Ubuntu":
|
if os_type == "Ubuntu":
|
||||||
if platform.system() == 'Darwin':
|
if platform.machine().lower() in ['amd64', 'x86_64']:
|
||||||
URL = UBUNTU_ARM_URL
|
|
||||||
elif platform.machine().lower() in ['amd64', 'x86_64']:
|
|
||||||
URL = UBUNTU_X86_URL
|
URL = UBUNTU_X86_URL
|
||||||
|
elif platform.system() == 'Darwin':
|
||||||
|
URL = UBUNTU_ARM_URL
|
||||||
elif os_type == "Windows":
|
elif os_type == "Windows":
|
||||||
if platform.machine().lower() in ['amd64', 'x86_64']:
|
if platform.machine().lower() in ['amd64', 'x86_64']:
|
||||||
URL = WINDOWS_X86_URL
|
URL = WINDOWS_X86_URL
|
||||||
|
|||||||
Reference in New Issue
Block a user