Hi,
It appears that the automated triggering of Rosetta 2 installer is only done when a user directly clicks on an Intel only binary on silicon hardware.
I have an app that is itself a universal binary but which loads an intel only plugin. This does not cause the built in Rosetta 2 installer to launch.
I can detect that the app is running on arm64 and I can detect that Rosetta is not yet installed but I cannot programatically install it. It would be nice to have one of the following:
- The ability to require Rosetta in the app's plist for a universal binary.
- A system call to initiate installation.
- For the automated installer to work however a binary is run.
The first seems like the cleanest solution. Without one of these, or some other fix, Rosetta 2 installation is incoherent.
For now the only way I can work round this issue is very ugly: include a second minimal x86_64 only app with my app as a no op installer for Rosetta, then when my app runs if I detect that Rosetta is missing on silicon, throw up an alert to ask the user to run the bundled minimal app and exit. This is less than ideal.
Can you suggest a better way to work round this issue?
or
Can you add one of the above solutions as a feature request?
Thanks
Paul