bacongravy/macinbox

Compatibility with Big Sur

LcTrKiD opened this issue · 13 comments

I'm getting this error when trying to create a box with Big Sur:

• Attaching installer disk image...
• Checking macOS versions...
  + Error: InstallInfo.plist not found in installer app bundle

• Cleaning up...

any idea @bacongravy ?

I haven't investigated Big Sur recently. I couldn't figure out how to download the installer app when the first beta came out, and I haven't revisited it. It sounds like the installer app is laid out differently. As long as it still contains a disk image of the OS to install, though, I suspect it would be possible to adapt macinbox to find it using a new heuristic.

I'll see if I can find a way to download the installer app and take a look.

I started to look into this. It doesn't look promising.

The first problem, as you discovered, is that the InstallInfo.plist file is no longer present in Big Sur installer app. In fact, I can't find any file inside of the installer app that definitively indicates what version of the OS the installer will install.

If I hack the script to assume that it is installing version 11.0.1 of the OS, the installation proceeds up to this point:

Nov  7 12:00:34  installer[68314] <Warning>: Unsupported install environment due to error:Error Domain=com.apple.osinstall Code=-31 "Not running from RecoveryOS environment." UserInfo={NSLocalizedDescription=Not running from RecoveryOS environment.}

The key detail appears to be: Not running from RecoveryOS environment

I'm not sure what I can do to work around this. It appears that macinbox simply may not be able to support installing Big Sur.

Ugh, that's disappointing... I wish Apple would be more friendly for the dev and automation community.

Can we somehow try to install it from the recovery partition? It appears Parallels doing something similar when you create macOS VM with their GUI.

Obviously, it won't replace macinbox, but I've published a manually created base box with Big Sur (for Parallels provider) and committed to updating it roughly within a week of new macOS releases. Feel free to use it and report any issues or suggestions here.

@andreiborisov Thanks for the link.

I'll try playing around with running macinbox from a Big Sur recovery partition, but I'm not optimistic that it'll work, and even if it does, it's still pretty inconvenient to have to boot into the recovery partition to use the tool.

Another approach would be to use packer to boot the Big Sur installer in a VM and try to use VNC scripting to walk through the installer. I've seen other projects attempt that, but I don't think I'm going to try that myself.

I don't think there's anything to take from how Parallels works - it doesn't actually install the OS, it just converts the macOS Installer app into a bootable CD image. It doesn't automate installation or creation of the user account or the enabling of ssh or the installation of the ssh key.

I'm using this project right now and it use a very clever solution to install the os from the recovery assistant using voiceover and boot commands to open the terminal...
https://github.com/trodemaster/packer-macOS-11

As of BigSur 11.2, there is now a Info.plist with relevant info about the installer
<key>DTPlatformName</key> <string>macosx</string> <key>DTPlatformVersion</key> <string>11.2</string> <key>DTSDKBuild</key> <string>20D74</string> <key>DTSDKName</key>

But the key problem remains

Are there any hints about how to resolve this? Is Macinbox broken after Catalina for good?

For the record, one runs into the same issues with Monterey (I guess that was to be expected).

Right now I use Packer to build a vagrant box. Not clear if the techniques used by packer work via Vagrant (start a VM and run installer from ISO)