Skip to content

Instantly share code, notes, and snippets.

@paulfermoreyes
Created July 20, 2025 10:23
Show Gist options
  • Save paulfermoreyes/daf4c89327707a333c0b05e5855eee64 to your computer and use it in GitHub Desktop.
Save paulfermoreyes/daf4c89327707a333c0b05e5855eee64 to your computer and use it in GitHub Desktop.
Running VM in Macbook Pro M series

πŸ’» Running Windows on your M1 Mac with UTM and CrystalFetch

This guide outlines the steps to set up a Windows Virtual Machine (VM) on Apple Silicon Macs (M1, M2, M3 chips) using UTM and CrystalFetch. This combination provides a streamlined way to get Windows running, especially for those needing the ARM version.

πŸ“ Prerequisites

  • MacBook M1 Pro (or any Apple Silicon Mac): These instructions are tailored for Apple Silicon architecture.
  • UTM: A virtualization application for macOS, capable of running QEMU. Download the latest version from UTM's Official Website.
  • CrystalFetch: A utility that helps download Windows ARM64 ISOs directly from Microsoft's servers. Download the latest version from CrystalFetch's GitHub Releases.
  • Stable Internet Connection: For downloading the Windows ISO.
  • Sufficient Storage Space: Windows VMs can take up a significant amount of disk space (20-50GB recommended).

πŸš€ Setup Instructions

Step 1: Install UTM

  1. Download UTM: Go to mac.getutm.app and download the latest version of UTM.
  2. Install: Once downloaded, drag the UTM.app file into your Applications folder.

Step 2: Download Windows ARM64 ISO using CrystalFetch

  1. Download CrystalFetch: Go to CrystalFetch's GitHub Releases and download the latest .dmg or .zip file.
  2. Install: Open the downloaded file and drag CrystalFetch.app into your Applications folder.
  3. Launch CrystalFetch: Open CrystalFetch from your Applications folder.
  4. Select Windows Version: In CrystalFetch, choose the Windows version you wish to download (e.g., Windows 11 ARM64).
  5. Select Edition: Choose the desired edition (e.g., Home, Pro, Enterprise).
  6. Select Language: Pick your preferred language.
  7. Start Download: Click the "Download" button. CrystalFetch will download the official Windows ARM64 ISO directly from Microsoft. This might take some time depending on your internet speed.
  8. Note the Save Location: By default, CrystalFetch usually saves the ISO to your Downloads folder. Make a note of this location.

Step 3: Create a New Windows VM in UTM

  1. Launch UTM: Open UTM from your Applications folder.
  2. Create a New Virtual Machine: Click the "+" button (or "Create a New Virtual Machine" if it's your first time) to start the VM creation wizard.
  3. Select Virtualize: Choose "Virtualize" as you are virtualizing a guest operating system.
  4. Select Windows: Select "Windows" from the operating system options.
  5. Import VHDX (Optional but Recommended for faster setup):
    • On the next screen, you'll see an option to "Import VHDX image." If CrystalFetch downloaded a VHDX image (which is a pre-installed virtual hard disk), you can select it here. This can significantly speed up the initial setup as Windows is already installed.
    • If CrystalFetch downloaded an ISO, do not select this option. You will install Windows from the ISO in the next steps.
  6. Browse and Select ISO: If you did not import a VHDX, click "Browse" and navigate to the Windows ARM64 ISO you downloaded with CrystalFetch. Select it.
  7. Configure Hardware:
    • Memory: Allocate a suitable amount of RAM. 4GB (4096 MB) is a good minimum, but 8GB or more is recommended for better performance.
    • CPU Cores: Assign a reasonable number of CPU cores. 4 cores is a good starting point.
  8. Adjust Storage:
    • Disk Size: Set the virtual hard drive size. At least 64GB is recommended for Windows 11, but adjust based on your needs.
  9. Shared Directory (Optional but Useful):
    • You can set up a shared directory between your macOS host and the Windows VM here. This is helpful for easily transferring files.
    • Click "Browse" next to "Shared Directory" and select a folder on your Mac you wish to share.
  10. Review and Save: Review your settings. You can rename your VM if you wish. Click "Save" to create the VM.

Step 4: Install Windows (if not using VHDX)

  1. Start the VM: In UTM, select your newly created Windows VM and click the "Run" button (the play icon).
  2. Follow Windows Installation Prompts: The VM will boot from the ISO. Follow the standard Windows installation prompts.
    • Product Key: You can skip this during installation and enter it later if you have one.
    • Internet Connection: During installation, Windows 11 may require an internet connection. If you encounter issues, you might need to use the "Shift + F10" trick during the network setup phase to open Command Prompt and type oobe\bypassnro to bypass the online requirement temporarily.
    • Driver Installation: UTM usually handles driver injection automatically, so you generally don't need to manually install additional drivers.
  3. Complete Setup: Once Windows is installed, it will boot into the desktop.

Step 5: Install UTM Guest Tools (Important!)

  1. Mount Guest Tools: In the running Windows VM, go to the UTM menu bar at the top of your Mac screen. Select "Virtual Machine" > "Install UTM Guest Tools". This will mount a virtual CD/DVD drive within the Windows VM.
  2. Run Setup: Open "This PC" (or "My Computer") within the Windows VM. Locate the mounted drive (usually labeled "UTM Guest Tools" or similar) and run the setup.exe or install.msi file.
  3. Reboot: Follow the prompts to install the tools. You'll likely be asked to reboot the VM after installation.
  4. Benefits: Installing guest tools provides:
    • Improved Performance: Better graphics, network, and disk performance.
    • Clipboard Sharing: Copy and paste between macOS and Windows.
    • Dynamic Resolution: The VM resolution will automatically adjust when you resize the UTM window.
    • Shared Folders: Access to the shared directory you configured in Step 3.

πŸŽ‰ Post-Installation Tips

  • Windows Updates: Run Windows Update to ensure your VM is up-to-date with the latest security patches and features.
  • Microsoft Account: Sign in with your Microsoft account to personalize your Windows experience and sync settings.
  • Antivirus: Install a reliable antivirus software, even in a VM.
  • Snapshots: In UTM, you can take snapshots of your VM. This is incredibly useful for creating restore points before making significant changes or installing new software. If something goes wrong, you can revert to a previous snapshot.
  • Backup: Regularly back up your UTM VM files. The VM data is usually stored in ~/Library/Containers/com.utmapp.UTM/Data/Documents/ (or ~/Library/Application Support/UTM/ for older versions/non-App Store versions).

You're now ready to use your Windows VM on your M1 Mac! Enjoy!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment