VMware guest tools on aarch64-linux

I’m trying to set up a NixOS VM in VMware Fusion (Tech Preview version for aarch64 support). I’m having trouble setting up the virtualisation.vmware.guest.enable = true option:

$ sudo nixos-rebuild switch
...
Failed assertions:
- VMWare guest is not currently supported on aarch64-linux

What can I do to get virtualisation.vmware.guest.enable working on aarch64-linux? Is this something that can be addressed in nixpkgs or are we constrained by upstream binary builds?

That assertion originates from here

So it can be disabled in Nixpkgs.

But the reason that assertion is there in the first place might or might not be related to the upstream. The binary might only be working on those platforms or it might be the case that no one tested the derivation or the module on other platforms.

You can try to ask the maintainers of the derivation or test if it works by loosening the assertion yourself.

Oh nice! Ok, how does one rebuild with a custom nixpkgs to test this out?

Looking at the man page I’m not seeing an option to specify a custom nixpkgs path when invoking nixes-rebuild.

I am not sure how to do this without flakes; but changing the NIX_PATH of root might work. With flakes, you can just point the input url to your fork.

In a recent thread jonringer explained how to rebuild a NixOS system from the directory of a local copy of nixpkgs. I haven’t tried it myself yet but it might help

You can apply changes locally by doing, sudo nixos-rebuild -I nixpkgs=$PWD switch , or use path urls if you are using flakes.

Here is the full post:

3 Likes

Looks like part of the reason is at least that xorg.xf86inputvmmouse is not supported on aarch64. Overriding doesn’t seem to work either.

Created VMware guest additions support for aarch64 · Issue #147650 · NixOS/nixpkgs · GitHub to track this.

Hosted by Flying Circus.