Help: macOS 11 VirtualBox base box boots up into the EFI prompt

Hey all! I’m currently trying to set up a VBox macOS 11 base box. I have a VM with macOS 11 installed, which boots up completely fine. I’ve done all the things I’m supposed to do on it, including adding the vagrant ssh key; however, when I do the following to try to package the VM as a base box:

$ vagrant package --base "macOS Big Sur"
==> macOS Big Sur: Exporting VM...
==> macOS Big Sur: Compressing package to: /Users/vcpkg/package.box
$ vagrant box add ./package.box --name "macos-base-box"
==> box: Box file was not detected as metadata. Adding it directly...
==> box: Adding box 'macos-base-box' (v0) for provider:
    box: Unpacking necessary files from: file:///Users/vcpkg/package.box
==> box: Successfully added box 'macos-base-box' (v0) for 'virtualbox'!

You can see that this seems to work; however, then I go into a vagrant directory, to do all the installation-y steps, with the following Vagrantfile:

Vagrant.configure('2') do |config|
  config.vm.box = 'macos-base-box'
  config.vm.boot_timeout = 1800
  config.vm.synced_folder '.', '/vagrant', disabled: true
end

and run vagrant up:

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'macos-base-box'...
==> default: Matching MAC address for NAT networking...
==> default: Setting the name of the VM: vcpkg-box_default_1607367113615_87915
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key

However, when I look at the VM from Virtualbox, I’m looking at the EFI prompt, as opposed to it booting up.

The VM is installed on an APFS data volume, which might be an issue? Additionally, the mac that the VM is running on is also on macOS 11.

Does anyone have any ideas?

Additionally, it seems like the issue is with the VM itself; the old VM that does boot up works with the new hard drive file, and the new vagrant-made VM doesn’t work with the old hard drive file.

Edit: New Information: It looks like the NVRAM might be set up incorrectly? When I copied the NVRAM from the old VM to the new VM, the VM started booting up immediately. (and apparently I forgot to turn on the SSH server…)

Update 2: After I set up the NVRAM correctly, and repackaging the vagrant VM with the new NVRAM, the VMs based on the newly packaged box also work… so… I have no idea what’s goin’ on. Looks like maybe a bug with the NVRAM copying for creating base boxes?

I’ve also run into this issue and created https://github.com/hashicorp/vagrant/issues/12509 for it.