VMware Fusion 13 – native support for Apple Silicon Macs
macrumors.com
macrumors.com
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.
Windows 11 runs beautifully on UTM.
https://www.arthurkoziel.com/replacing-docker-desktop-for-ma...
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.
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.
What if you connect to the UTM guest via RDP or or Apple Remote Desktop if it’s a Windows/macOS guest, respectively?
I can't believe Apple charges $80 for the ARD client in the App Store...
https://customerconnect.vmware.com/downloads/details?downloa...
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.
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 UseEvery time anyone in the office had to go on their website, everyone knew from the groans, moans and thumps.
It’s an abomination.
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...
And it can be installed through a brew cask.
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.
(https://medium.com/sai-ops/using-aws-session-manager-to-conn...)
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.
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.
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
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).
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.
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.
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.
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 10.11.12.10"). Mynet has gateway 10.11.12.1. It was created with this command:
docker network create --driver=bridge --subnet 10.11.12.0/24 --ip-range=10.11.12.128/25 --gateway=10.11.12.1 Mynet
IP address 10.11.12.128-254 are dynamically allocated to containers that are run with "---network Mynet" but not assigned a static IP. 10.11.12.2-127 can be used for static IPs.
• On the Wireguard tunnel, I've given my Mac IP 10.11.0.2 and the Docker Linux VM IP 10.11.0.3.
• The Mac IP address on my home network is 192.168.0.2.
• 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).
[Interface]
Address = 10.11.0.2/32
PrivateKey = <Mac private key>
ListenPort = 51820
# docker VM
[Peer]
AllowedIPs = 10.11.0.3/32, 10.11.12.0/24
PublicKey = <Linux VM public key>
• Here is the Wireguard conf file for the Linux VM (stored on Mac as ~/wg/linux-vm/base.conf): [Interface]
Address = 10.11.0.3/32
ListenPort = 51820
PrivateKey = <Linux VM private key>
[Peer]
AllowedIPs = 10.11.0.2/32
PublicKey = <Mac public key>
EndPoint = 192.168.0.2:51820
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'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.
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.
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 127.0.0.1 because I've already got something on 127.0.0.1 that is using 3306.
Hence Wireguard so that I can have an IP address for the container that is visible on the Mac.
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.
> 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...
I’ve seen this happen multiple times; there are whole companies with this as their business model.
Thank God I have backups to revert to.
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?
I'm a VMWare Fusion user since ver.6, I think, and I've never experienced anything like this :( Shocking
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.
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.
I did a few basic tests and the performances were quite impressive.
Crossover works surprisingly well for games, too.
I wish their macbooks had mate screen, trackpoint, and were made of carbon
Like a thinkpad with the M2 inside.
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
https://store-us.vmware.com/vmware-fusion-13-pro-5708569900....
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.
They don’t enforce that though I don’t think, but I wonder if anyone has been caught or sued?