The Mac admin’s guide to Rosetta 2

The Mac admin’s guide to Rosetta 2

On November 10 2020, Apple CEO Tim Cook made his mark on history by announcing a bold new path for the company. A strong and decisive move away from conventional Intel processors for their macOS devices, to their personally curated ARM-based silicon processors, the Apple M1 chip. After 14 years of producing Macs with the intel core series processors, the M1 chip marked the beginning of a new and improved generation of Macs.

“With its unique combination of remarkable performance, powerful features, and incredible efficiency, M1 is by far the best chip we’ve ever created.”
Johny Srouji
Senior vice president of Hardware Technologies, Apple

However, Apple’s new silicon Macs brought forth a slightly unprecedented concern. For the past decade, macOS apps were built to run on the Intel core processors.
With the introduction of the new M1 Macs, Mac admins and developers found themselves in the middle of a fix to make previous-gen apps compatible with the new Apple Silicon Macs. These new Macs by default, could not run previous-gen Intel x86 apps on their ARM processors. This is where the need for Apple’s Rosetta 2 software comes in.

What is Rosetta 2?

Apple introduced Rosetta 2 to help both Mac admins and developers ease the process of shifting to the new M1 Macs, and ensure that the apps supported by previous-gen Intel Macs were compatible with the new ARM-based silicon Macs.

A Mac admin configuring an M1 powered Mac
A Mac admin configuring an M1 powered Mac
A Mac admin configuring an M1 powered Mac

What does Rosetta 2 do?

“Rosetta 2 automatically translates existing Mac apps so they work on the new Macs with Apple Silicon chips. It translates the apps when you install them so that they can launch immediately and be instantly responsive.”
Craig Federighi
Software engineer, Apple
@Apple WWDC 2020

If an app or plugin only contains Intel instructions, Apple’s M1 Mac automatically launches Rosetta and translates the x86 code into native commands, which is then launched instead of the original.

A little backstory on the Rosetta series

However, the method of transformation differs between the two. Whereas the first version of Rosetta converted instructions in real-time, Rosetta 2 converts an application right after installation, creating an ARM-compatible version of the app even before it is opened. This ensures reduced processing time, which improves the overall user experience.

What apps require Rosetta 2 to run?

What software is Rosetta 2 unable to translate?

A developer working on updating Mac app to the universal builds
A developer working on updating Mac app to the universal builds
A developer working on updating Mac app to the universal builds

How do I check if an installed Mac app requires Rosetta 2 to run?

Universal apps are compatible with both ARM and Intel processors, and can be run on both previous-gen Macs as well as the new silicon Macs.

You can also force a universal app to be converted using Rosetta and then run, by checking the ‘Open using Rosetta’ box from the ‘Get info’ tab.

How to install Rosetta 2 on Apple M1 Macs?

There are two cases when a user will be prompted by the system to install Rosetta on their macOS device.

  • When a user tries to open an app that hasn’t been updated to the universal build.
  • When a user tries to install an app or package that hasn’t been updated to the universal build.

However, if your enterprise manages a UEM solution that supports the execution of macOS scripts, it is possible for IT admins to push the following script to automatically install Rosetta 2 on managed macOS devices. (Root permission is required for the following scripts.)

Apple silicon Macs in the enterprise
Apple silicon Macs in the enterprise
Apple silicon Macs in the enterprise

macOS script to install Rosetta 2

  • /usr/sbin/softwareupdate -install-rosetta
  • /usr/sbin/softwareupdate -install-rosetta -agree-to-license

UEM apps on Apple M1 Macs that aren’t updated to the universal build — including the UEM agent app — will depend on Rosetta’s translation process to successfully monitor and manage the device.

  • If you are enrolling the ARM-based macOS devices directly from the UEM portal, the end-user will be prompted to install Rosetta 2 on the first launch of the UEM app.
  • However, if the device is enrolled in UEM via Automated Device Enrollment, then the UEM agent will be installed with the help of macOS setup assistant. In this case, the device fails to show a prompt to the end-used to install Rosetta 2, and the UEM agent app fails to run.

In such cases, the best solution is to recommend users to manually install Rosetta by either trying to open or install an Intel-based app, or to provide a script that runs a command to install Rosetta 2 on their device.

In order to ensure a streamlined device enrollment process for your enterprise, it is highly advisable to switch to a UEM solution that supports a universal build, or contact your current UEM service provider and request them to update to the latest universal build.

How will performance be impacted when using Rosetta?

Will Rosetta be a permanent software?

The first instance of Rosetta was introduced back in 2006 for macOS 10.4.4, became a downloadable option for 10.6, and disappeared the following year. Considering the case that Apple still supports the Intel Mac and its apps, it seems likely that Apple will maintain support for Rosetta 2 at least for the coming years.

Originally published at https://www.hexnode.com on May 27, 2021.

Hexnode MDM is an award winning Enterprise Mobility Management vendor which helps businesses to secure and manage BYOD, COPE, apps and content.

Hexnode MDM is an award winning Enterprise Mobility Management vendor which helps businesses to secure and manage BYOD, COPE, apps and content.