Hacker News new | past | comments | ask | show | jobs | submit login
VMware Fusion 13 – native support for Apple Silicon Macs (macrumors.com)
190 points by tosh 70 days ago | hide | past | favorite | 111 comments

The UTM experience (https://mac.getutm.app/) has been stellar for me. Knowing that others have commented on this being a rough initial release, I really have no reason to try it out.

And while UTM was relatively unknown a year ago, it's become quite popular in my circle of Apple Silicon users, so I imagine VMWare's reception on Apple Silicon is going to be lukewarm at best.

UTM's lack of any accelerated graphics makes a non-starter for most desktop applications these days. It's fine as a frontend to QEMU, but that's all it is. Fusion and Parallels will continue to dominate this space on MacOS.

They do but it's experimental and only for Linux guests: https://github.com/utmapp/UTM/releases/tag/v2.2.4

Unironically the best experience for Linux in my case is no graphics adapter but instead a serial console. You can copy and paste text from the vm console window without any additions!

Fingers crossed that it eventually works but for me it invariably results in a crash or graphical corruption making my VM unusable regardless of the distro (have tried Fedora, Ubuntu, Debian etc)

With Fusion 13, I see no way of creating a macOS guest VM. It isn't in the VM options list. UTM will automagically connect to Apple's servers and download the latest version.

Problem with UTM is there is no copy/paste or file transfer between a macOS host and guest which is a huge barrier. I'm spoiled by Hyper-V enhanced sessions, I suppose.

> Problem with UTM is there is no copy/paste or file transfer between a macOS host and guest which is a huge barrier.

What if you connect to the UTM guest via RDP or or Apple Remote Desktop if it’s a Windows/macOS guest, respectively?

ARD works great via Safari (vnc://machine-name.tld). Thank you!

I can't believe Apple charges $80 for the ARD client in the App Store...

It lets you do things like run a zsh command over 300 mac machines at once, it's not just a simple VNC client.

Fusion only supports MacOS VMs on Intel, are you on Apple Silicon?

Yes, an M2.

Accelerated graphics was painful when doing macOS on macOS until macOS 13. I wouldn't be surprised if it gets added now in the future with virutalization.framework if they haven't done so already.

Why is accelerated graphics mandatory? I'd think most non-gaming, non-graphics-heavy apps would do fine with the CPU.

Electron apps (and other apps that uses Chromium Embedded Framework) are commonplace these days and they requires GPU acceleration. They'll crash if launched on system without gpu acceleration. Sure you can pass a command line argument to disable gpu acceleration to those apps (e.g. `--disable-gpu` on most electron apps and `--no-zygote` on apps that use chrome embedded framework like spotify), but you can't expect average users to know how to do that.

Most desktop nowadays have a compositor that rely on the gpu to render nice effects like blur, transparency, animations (including keeping the content of the window while dragging).

I just got Windows 7 running on an M1 Macbook Pro with UTM today actually. It took a bit of configuring but I am getting pretty amazing performance considering it's having to do a full ISA emulation (not using Rosetta.. QEMU can use Rosetta to translate for Linux ELF's in Linux VM's but it doesn't seem like it can do so under an x86 Windows VM). I have one legacy Windows application that I need sometimes randomly when traveling and this is amazing that it runs as well as it does- it is a program using OpenGL and the performance is useable for basic tasks and I am just using a the default VGA card emulation, I haven't even setup any advanced GPU card emulation yet. I'm blown away.

If you Crossover works for your app you can pipe x86 32 but apps through Rosetta 2 and Crossover will bridge the GPU stuff to an actual GPU. This is a lifesaver for me on 1 ancient app I have to use for work.

Can it be used with docker for Mac, or some competitor?

You probably would prefer colima to get an easy VM for docker/kubernetes using qemu in the background.

Nice, thank you! This does look promising.


According to this article, file sharing between the container and the host is about 80% faster in Colima than Docker Desktop for Mac, but still much slower than native:

    # Docker Desktop for Mac
    IOPS: 1545
    Bandwidth: 6.3MB/s

    # Colima
    IOPS: 2786
    Bandwidth: 11.4MB/s

    # Native
    IOPS: 28.6k
    Bandwidth: 117MB/s
Colima doesn't have all the annoying popups, telemetry, and other commercial aspects that turn off many developers from Docker Desktop for Mac. It sounds like a drop-in replacement otherwise. Terrific!

I'll still try to keep as much development native as possible for now, but if it ever gets to be a real pain I'll give Colima a try before mixing docker entirely.

never managed to run win11 so I gave up


Windows 11 runs beautifully on UTM.

I had a hard time finding the free version. You need to register an account, but this should be a direct link to the download page:


Alternatively, go there[0], click "Download now" under "Fusion 13 Pro for macOS 12+".

Upon first launch, it'll prompt you to either enter a Pro license, try Pro for 30 days, or go straight to Player (still requires a free license key, obtained via registration).

[0]: https://www.vmware.com/products/fusion/fusion-evaluation.htm...


I gave up after 45 minutes... They want so much information/cookies/tracking but even after changing browsers and (temporarily) disabling all security/privacy, I couldn't download.

same - the register page doesn't work at all. I just gave up. If it worked for personal use I may have recommended it for work but as it is Parallels or UTM will be my go to choices.

Thank you.

Every time anyone in the office had to go on their website, everyone knew from the groans, moans and thumps.

It’s an abomination.

Wait there is a free version? What's the limitation?

Fusion Player offers a Personal Use License, available for free with a valid MyVMware account. Home users, Open Source contributors, students, and anyone else can use Fusion Player Free for Non-Commercial activity.

There's a "Compare" tab here: https://www.vmware.com/products/fusion.html

This is only in the Pro column:

    Virtual Network Customization (NAT, network rename)
    Virtual Network Simulation (Packet Loss, Latency, Bandwidth)
    Connect to vSphere / ESXi
    Create Linked Clones
    Create Full Clones
    Trial License
This bit is only in the Player column:

    Free for Personal Use

If you just want a Linux kernel and user space, to see that your stuff works OK there as well, I'd really recommend Multipass from Canonical. It likely only works with Ubuntu but it is nicely integrated with Macos and requires no setup.

And it can be installed through a brew cask.

Multipass is awesome (lightweight) but a no go for some unless this issue is resolved : https://github.com/canonical/multipass/issues/2387

That’s the first time I hear about this software. Thank you.

Same, thanks for mentioning.

In practice I’ve found it more practical to create cloud VMs although I’ve traditionally used run a Linux and Windows VM on MacBooks. Or just buy a tiny server for a few hundred bucks and leave it plugged in at home and remote into that.

There’s too many issues around ARM support and the fact that other Linux and Windows machines generally won’t be running ARM. Apple Silicon also has expensive memory upgrades.

Remote Desktop to a virtualized Windows 10 running on VMWare ESXi is what I replaced VMWare Fusion with even before I got this M1. It's unlikely I'll ever upgrade now.

This only works if you have a good internet connection. The use case I've always had for VMWare Fusion is that I need to use a Windows app, as if it were local, with my local, multi-gig, files available.

Remote Desktop works surprisingly well over low bandwidth. I’ve done it at times using my unlimited hotspot data when I only had 3G speeds

RDP is really quite impressive. I host Windows VMs on a Linux server. With quickemu[0] you can fire up a Windows Vm in minutes. It fetches the ISO, sets everything up - even breezes through setup, creates a user, does KMS for activation, etc. One command and a few minutes later you're looking at a Windows desktop. Setup Remote Desktop (with SSH forwarding or VPN of course) and you have a remarkably responsive (even at 4k single and dual display) GUI experience and powerful remote connection - file sharing, sound forwarding, clipboard sharing, even printers and arbitrary devices.

[0] - https://github.com/quickemu-project/quickemu

Never heard of quickemu - looks really cool! Thanks for sharing

You're going to love it!

you misspelled “remote root protocol” ;)

Well in my case, it’s running on an EC2 instance with no ingress access. I access it by tunneling through Session Manager secured via IAM temporary credentials which itself is secured via a physical MFA device.


Hah totally get your sentiment but in my case it’s a port forward bound to loop back to a VM listening on a very well secured Linux machine only accessible with key based SSH. I’m not terribly worried about it.

I think you misread my comment.

If you're using a Windows app as part of your Mac workflow (which is often the case if Fusion is being used), you'll put files in a shared mount so the Mac and Windows apps have access to the storage they're on. This doesn't work if you have to transfer files across the internet to start the Windows side of your workflow.

For example, a Windows reporting tool that reads from an sqlite database, which was generated with a Mac workflow, while I'm sitting at a coffee shop.

And, the nicest thing about fusion is that each Windows app appears as a native window, which RDP doesn't seem to have.

Hi Nomel, the Microsoft RDP clients you can map a directory which is transparently available in both environments. The only constraint is bandwidth.

I am looking for an RDP equivalent for linux desktops. Almost every remote access tool I have tried comes up short in comparison.

Great news, I have been waiting quite some time for this! I am using VMware Fusion a lot on my Intel based Macs (most of my day-to-day work is on Linux in a VM) and just have been waiting for VMWare on ARM Macs.

While I also have used Parallels, I just find VMware the solution which works best with me. One of the features of course was to be able to run modern Linux kernels without the needs of installing custom drivers as the necessary drivers where part of the Linux kernel. Parallels requires drivers which often where quite a bit behind the Fedora releases.

Is this because you need to be in a full blown Linux is for some reason? Otherwise you could just mount a local volume in docker and run that right?

Yes, I want to be in a full blown Linux. With the complete software a Linux distribution brings (for me mostly Fedora) and of course the full GUI support.

I've been using the beta every single day.

I run a NixOS VM on my Macbook Pro, its transformed the way I develop. Checkout Hashicorp founder's NixOS setup here https://github.com/mitchellh/nixos-config

Too little too late. And, on x64 I switched to Parallels because I had problems installing the most recent macOS on several machines.

It's clear that VMware has hampered their ability to support their products (bugs and time to get this release out).

It's disappointing, because I like the UI of VMware more than Parallels (yes, probably because I used VMware for many years).

I don't like that Parallels requires a subscription to get more than 8 GB of RAM in a virtual machine so I'll be sticking with VMWare Fusion when I get an Apple Silicon Mac.

That's assuming that I decide that I actually need such a product. Most of my use of VMWare Fusion on my Intel Mac is to run Linux VMs. I recently have switched to using Docker for that.

The only real snag was that I want services running in a Docker container to be reachable from Mac processes on the same port they would be on when deployed on a real server somewhere. E.g., if I've got a server that would be foo.com when live on a real server that I'm testing locally in a container, I want it to appear at some_ip:443 on my Mac, not on something like localhost:8443 that Docker maps to port 443 in the container.

That turned out to be not too difficult to deal with by using Wireguard. Specifically, Wireguard between the Linux VM that Docker Mac creates to run containers and the Mac.

If Docker Mac works as well on Apple Silicon I might be able to just stick with that and not need either VMWare or Parallels.

I might be reading this wrong, but is this something where you could launch your containerized app running on whatever port, and map it to `localhost:443` using something along the lines of `docker run -p<whatever port in the container> My-App-Image` ? (might need sudo). I read this as wanting to have <your IP>:443 proxy to the container. Hope I'm not crazy.

The problem with "-p<whatever port in the container>" is that there is already something on

If I were running Docker on Linux this would not be a problem. I'd simply use bridged networking in the container which would give the container an IP that works for things running on the Linux host.

To access something on <whatever port in the container> I'd then just use <container IP>:<whatever port in the container>.

Docker Mac runs a Linux VM and then runs your containers on that Linux VM. Bridged networking there just bridges the containers to the Linux VM. The container's IP is not visible to the Mac, just to the Linux VM.

So I'm using Wireguard to tunnel between the Linux VM and the Mac, so that the container IPs end up visible on the Mac.

In case anyone else finds this useful, here are details of my setup.

• I've got a Docker network name "Mynet" that I put containers on with statically assigned IP addresses (e.g., "--network Mynet --ip"). Mynet has gateway It was created with this command:

docker network create --driver=bridge --subnet --ip-range= --gateway= Mynet

IP address are dynamically allocated to containers that are run with "---network Mynet" but not assigned a static IP. can be used for static IPs.

• On the Wireguard tunnel, I've given my Mac IP and the Docker Linux VM IP

• The Mac IP address on my home network is

• I've made a Docker alpine image, which I named alpine-wg, that is just the base alpine image with the Wireguard tools installed. The Docker Mac Linux VM has Wireguard kernel support built in, so you just need an image with the tools in order to configure it.

• I've generated key pairs for the Mac and the Linux VM.

• Here is my Wireguard conf file for the Mac (stored on Mac as ~/wg/mac/wg.conf).

  Address =
  PrivateKey = <Mac private key>
  ListenPort = 51820

  # docker VM
  AllowedIPs =,
  PublicKey = <Linux VM public key>
• Here is the Wireguard conf file for the Linux VM (stored on Mac as ~/wg/linux-vm/base.conf):

  Address =
  ListenPort = 51820
  PrivateKey = <Linux VM private key>

  AllowedIPs =
  PublicKey = <Mac public key>
  EndPoint =
  PersistentKeepalive = 25
• Commands to run on the Mac:

  # bring up the tunnel
  sudo wg-quick up /Users/tzs/wg/mac/wg.conf
  # take down the tunnel
  sudo wg-quick down /Users/tzs/wg/mac/wg.conf
• Aliases on the Mac to bring up, take down, and show the tunnel on the Linux VM:

  alias linux-wg-up='docker container run -it --rm --privileged --pid=host -v ~/wg/linux-vm:/wg alpine-wg nsenter -t 1 -u -n -i wg-quick up /wg/base.conf'

  alias linux-wg-down='docker container run -it --rm --privileged --pid=host -v ~/wg/linux-vm:/wg alpine-wg nsenter -t 1 -u -n -i wg-quick down /wg/base.conf'

  alias linux-wg-show='docker container run -it --rm --privileged --pid=host -v ~/wg/linux-vm:/wg alpine-wg nsenter -t 1 -u -n -i wg show'

This was a fascinating read, thank you for sharing. TIL!

EDIT: Is your home IP address for your mac static? Seems like if it was dynamic, this would need to be updated, though I know you can use some simple programs to dynamically inquire for the IP, and then just template it out into the config files before launching, just in case.

It's dynamic as far as the Mac is concerned, but I have my home router's DHCP configured to assign fixed IP addresses to various devices with known MAC addresses including the Mac.

I have a similar need for work (k8s instead of docker) and I just use the routing table on my router and `/etc/hosts` files (need domain names fir certificates) works easy.

> If Docker Mac works as well on Apple Silicon I might be able to just stick with that and not need either VMWare or Parallels.

MacBook Pro M1 Max user here. Yes, Docker Mac works on Apple Silicon.

Make sure to use Docker images built for Arm. M1 Rosetta is good, but is not used for Docker images. If you run Docker images for x86_64 in Docker Mac on Apple Silicon it’s noticeably slower. Whereas running docker images built for Arm is fast.

> I want it to appear at some_ip:443 on my Mac, not on something like localhost:8443

You can add hostnames to /etc/hosts if "localhost" bothers you.

Then you map ports to host ports using the -p docker argument.

Solving this with wireguard sounds like super overkill.

The typical case is that I'm testing with client code on my desktop that expects to talk to some particular server, such as db.work.com, on some particular port, say 3306. I don't want to run the client in a VM or container.

I want to run a test version of that server on a VM or in a container, and have that client connect to it, but I do not want to modify the client.

So I want to make an /etc/hosts entry for db.work.com giving the IP address of the VM or container that I'm running the test server in.

That works great with VMWare Fusion. The VM gets an IP address on my Mac, and I use that in the /etc/hosts entry.

That would also work great if I were running Linux instead of Mac OS, because Docker containers on Linux get IP addresses that are visible. I'd just have to put the container IP on the db.work.com /etc/hosts entry.

On Mac Docker runs a Linux VM and then the containers run in that. They don't have IP addresses that are visible to the Mac. For a lot of things that is fine. With the -p argument you can arrange to have a localhost port mapped to some port on the container.

But in my case that doesn't quite cut it. The client wants to connect to port 3306. I can't just map localhost:3306 to the container and put db.work.com in /etc/hosts pointing to because I've already got something on that is using 3306.

Hence Wireguard so that I can have an IP address for the container that is visible on the Mac.

VMware laid off their US based Workstation/Fusion team a few years back and moved development over to China. The China based team was then laid off in 2021 with development moving to India.

This is the move for any business intending to cut costs to near 0 and ride out a user base subscription to inevitable product death.

I’ve seen this happen multiple times; there are whole companies with this as their business model.

Why did they do that? Is it because VirtualBox and containers destroyed the market for them? Not enough money to bother competing with Parallels?

The graphics support in particular sounds like a total mess:

> For Graphics, Fusion 13 sports OpenGL 4.3 in Windows and Linux VMs on Intel, and in Linux VMs on Apple Silicon.

> On Intel, Windows continues to enjoy DirectX 11 graphics, and Fusion continues to support eGPU devices for incredible performance using some of the fastest GPU’s available.

> On Apple Silicon, Fusion can deliver OpenGL 4.3 with blazing fast 3D hardware acceleration to arm-based Linux virtual machines with Linux kernel 5.19 or greater.

So if I am reading this correctly, Windows on Apple Silicon doesn't have accelerated 3D at all? And even on Intel they are 10 full years behind with no support for DirectX 12.

I guess this is what happens six years after firing the entire team, once you can no longer coast on past innovations. https://arstechnica.com/information-technology/2016/01/vmwar...

Other than Hyper-V, what hypervisor can paravirtualize DirectX 12?

It probably depends on your use case. You seem to run Mac OS inside Mac OS?

On my end I've tried Parallels but my use case involves a lot of passing USB devices to a Windows or Linux VM and VMWare has been much better for that.

Although... the point is moot now. I bought a new amd box for running the x86 stuff, in preparation to moving my OS X machine to Mx when I feel brave enough.

Yes, I do a lot of macOS inside macOS, but I do Windows and Ubuntu, too.

The macOS support was just horrible in the last 1-2 years. I had purchased copies for 3 machines and I couldn't get stuff to work on any of them.

Installed it on my Intel MBP, upgraded my virtual machines to a new format version and now regretting it. The Bootcamp VM does not boot at all and the Win 7 VM is in an infinite restart-repair loop.

Thank God I have backups to revert to.

Many steps ?

recovery, reset on csr then reboot delete old boot camp very small link (<100mb) and do a new boot camp vm and go back to recovery and enable csr Reboot

But is to true for other vm?

No, not many steps. Just restoring Fusion 12 and Win7.vmwarevm from Time Machine and recreating a bootcamp vm. Easy

I'm a VMWare Fusion user since ver.6, I think, and I've never experienced anything like this :( Shocking

Completely tangential:

I tried VMWire fusion to run multiple browsers to get tickets for Glastonbury.

Are virtual machines ever not slow?

Running 9 virtual machines on an M1 mac, did not work...

I needed to be able to take over at any point, to enter the credit card details etc if successful, so puppeteer would not have been a good solution.

I think I need to rent multiple devices just for the day it seems. Chrome offers multiple profiles so I had 9 browsers, but you only get 60 refreshes per minute n an IP address. I would need to redirect some of the chrome instances, and have the screen real estate to handle it.

To run multiple browsers in one sense, use the --user-data-dir flag for Chromium based browsers. Give each of the 9 instances their own directory.

I would be tempted to try this but both of my M1 Macs only have 8G of memory.

For text/shell only Linux, I have been using https://github.com/lima-vm/lima for the last week and for what I needed (I wanted to setup picolisp and Emacs for some experiments) it was all good.

Is there a way to run x64 Windows on M1 Macs?

I haven't tried it but I imagine QEMU / UTM can do that. It's emulated though, and will have a non-negligible performance penalty.

qemu, but it will be slow because the kernel/processor can't do the heavy lifting.

in recent version of macos, you can run x86 app through rosetta inside arm VMs: https://docs.getutm.app/advanced/rosetta/

I did a few basic tests and the performances were quite impressive.

Equally the x64 emulation in Windows 11 works just fine if you run an ARM64 Windows 11 VM.

Why? ARM Windows can run x64 apps.

I came up with a qemu wrapper a little bit ago that meets my needs - https://github.com/nwpierce/qvm. Glad the VMWare option is out now though!

I switched to Parallels due to VMware's lack of Apple Silicon support; it's been a great experience for Windows 11 (and does a great job of bundling the Windows 11 ARM installer, etc.)

Crossover works surprisingly well for games, too.

Given the significant support for virtualization in macOS and the popularity of macs amongst unix devs, I am a bit surprised that Apple has not yet sherlocked the VMM configuration UI.

Virtualization is basically an API library (Virtualization.framework) from apple's perspective where they expect others to make programs to manage it, so not so surprising from that perspective.

I love what apple have done with the M1/M2 procesor. Really impresive.

I wish their macbooks had mate screen, trackpoint, and were made of carbon

Like a thinkpad with the M2 inside.

you can get matte screen, same product as papermate uses for ipad pro to let Apple Pencil feel like it's writing on paper

after a couple years of matte, i can't stand iPad Pro screen w/o it

used to swear by trackpoint, it can't "gesture" or "multi-touch" tho, magic trackpad converges Macbook with iPad, so worth getting one for desktop Macs too

Hopefully ESX is right behind ... anyone have any updates about this?

The Linux guys will get there first and, in either case, it will help Apple sell more Macs --just don't do it without AppleCare+ and backups of yoh backups (non-Apple software is largely ignorant of Apple's sometimes obscure and marginal thermal management systems). BTW, don't be shy about buying an m1pro/max based MBP --looking at the thermal plate they put on the m2 in the 2022 MBA, it will be a while before I'd trust the new enclosures with a warmer chipset.

The MBP M2 has an active cooling fan, or am I wrong? Could be an option. Also no ugly notch and the great touchbar and superior battery runtime. Price-wise the MPB 14" is superior though.

Does VMWare Fusion 12 run on macOS Ventura? (Not a apple m question)

Second year in a row VMware doesn’t have any Black Friday discounts

Bit of a tangent but do you know of other Black Friday things that the HN crowd would be interested in? Like, I know shodan.io usually does a discount on lifetime subs or something around now.

It looks like there is 30% off new licenses but not upgrades after all: VMware Fusion and Workstation Professional on sale for 30% off https://store-us.vmware.com/vmware-workstation-17-pro-570991...


Backblaze usually has a new customer discount and ProtonMail has a 40% off now

It sounds like a GUI around the Apple HV FW.

The hypervisor framework doesn't provide a lot of extra things which are implemented by whatever VMM you're using. Qemu can also use Hypervisor.framework but you certainly wouldn't say it's exactly 1-1 w/ VMware Fusion.

Any advantages to this over Parallels?

It's free for personal use.

Just installed the trial of Fusion Pro 13 and ran it through the paces of our application test suite and benchmarks, performance is...rough, compared to Parallels.

It's nice to have a personal use option, but I'll be sticking with Parallels for pro use since our company doesn't have a big investment in vmware based infrastucture, where I see using Fusion would be a boon but not for my particular case.

Any news on Bootcamp for Silicon?

FYI, I don't think "Silicon" is a product name; it's just the stuff computer chips are made out of. "Apple Silicon" is an unbrella term for their SoCs, but there's no context in which it makes sense to abbreviate that with just "Silicon".

There was this but it's 404'ed https://news.ycombinator.com/item?id=31657591

It is highly unlikely - the boot process isn't standardized, nor will there be manufacturer-provided drivers for a good portion of the Apple SoC features.

Still not drag&drop and no shared folder?? Seriously? For $150!?

It's impossible read an article on macrumors.com. Every 30 seconds, the page jumps because of an ad. I don't think Web is meant to do that.

Get yourself a good ad-blocker, I can't even surf the web without one.

Apple has quite strict virtualization constraints in its user agreement. I'm wondering if this is going to change any time soon.

This always comes up, but what does it actually prevent? Has Apple ever enforced it? It would seem likely that doing so would be hitting their power users.

They enforce it in their Virtualization framework: https://eclecticlight.co/2022/08/04/virtualisation-on-apple-...

And they specify it must be on Apple hardware.

They don’t enforce that though I don’t think, but I wonder if anyone has been caught or sued?

Haven't heard of any individuals being sued, but Apple did go after Psystar, who sold machines with macOS (Mac OS X back then): https://en.wikipedia.org/wiki/Psystar_Corporation

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact