<!--
{
  "availability" : [
    "macOS: 13.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Virtualization",
  "identifier" : "/documentation/Virtualization/VZLinuxRosettaDirectoryShare",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Virtualization"
    ],
    "preciseIdentifier" : "c:objc(cs)VZLinuxRosettaDirectoryShare"
  },
  "title" : "VZLinuxRosettaDirectoryShare"
}
-->

# VZLinuxRosettaDirectoryShare

The Linux directory share for Rosetta.

```
class VZLinuxRosettaDirectoryShare
```

## Overview

This directory share exposes the Rosetta directory from the host file system to the guest. The example below shows the process of creating a [`VZVirtualMachineConfiguration`](/documentation/Virtualization/VZVirtualMachineConfiguration), and then associating the Rosetta directory share with the VM configuration.

```swift
let tag = "EXAMPLE_TAG"  
let configuration = VZVirtualMachineConfiguration()
do {
    try let validationError = VZVirtioFileSystemDeviceConfiguration.validateTag(tag)
    let rosettaDirectoryShare = try VZLinuxRosettaDirectoryShare()
    let fileSystemDevice = VZVirtioFileSystemDeviceConfiguration(tag: tag)
    fileSystemDevice.share = rosettaDirectoryShare

    configuration.directorySharingDevices = [ fileSystemDevice ]
} catch VZError.invalidVirtualMachineConfiguration {
    // Rosetta is unavailable.
}
```

For complete instructions on installing Rosetta see <doc:running-intel-binaries-in-linux-vms-with-rosetta>, which includes additional information about checking for Rosetta availability, mounting the directory share, and registering the Rosetta runtime binary to run Intel binaries in a guest VM.

For information on using a custom kernel to enhance Rosetta performance, see [Accelerating the performance of Rosetta](/documentation/Virtualization/accelerating-the-performance-of-rosetta).

## Topics

### Creating a Rosetta directory share

[`init()`](/documentation/Virtualization/VZLinuxRosettaDirectoryShare/init())

Creates a new Rosetta directory share, or returns an error if Rosetta isn’t installed.

### Checking Rosetta availability

[`availability`](/documentation/Virtualization/VZLinuxRosettaDirectoryShare/availability)

A value that indicates the current state of Rosetta’s availability.

[`VZLinuxRosettaAvailability`](/documentation/Virtualization/VZLinuxRosettaAvailability)

Constants that describe the availability and installation status of Rosetta.

### Installing Rosetta

[`installRosetta(completionHandler:)`](/documentation/Virtualization/VZLinuxRosettaDirectoryShare/installRosetta(completionHandler:))

Starts the installation of Rosetta.

### Setting the ahead of time (AOT) caching options

[`cachingOptions`](/documentation/Virtualization/VZLinuxRosettaDirectoryShare/cachingOptions-swift.property)

The value that enables translation caching and configures the socket communication type for Rosetta.

[`setCachingOptions(_:)`](/documentation/Virtualization/VZLinuxRosettaDirectoryShare/setCachingOptions(_:))

Sets the Rosetta caching options using the options you specify.

[`VZLinuxRosettaDirectoryShare.CachingOptions`](/documentation/Virtualization/VZLinuxRosettaDirectoryShare/CachingOptions-swift.enum)

Socket values you specify to configure Rosetta’s caching capabilities.

[`options`](/documentation/Virtualization/VZLinuxRosettaDirectoryShare/options)

The value that enables translation caching and configures the socket communication type for Rosetta.

[`VZLinuxRosettaAbstractSocketCachingOptions`](/documentation/Virtualization/VZLinuxRosettaAbstractSocketCachingOptions)

Caching options for an abstract socket.

[`VZLinuxRosettaCachingOptions`](/documentation/Virtualization/VZLinuxRosettaCachingOptions)

An abstract class that defines UNIX socket-based caching options for Rosetta.

[`VZLinuxRosettaUnixSocketCachingOptions`](/documentation/Virtualization/VZLinuxRosettaUnixSocketCachingOptions)

An object that represents caching options for a UNIX domain socket.

## See Also

[`VZDirectorySharingDeviceConfiguration`](/documentation/Virtualization/VZDirectorySharingDeviceConfiguration)

The base class for a directory sharing device configuration.

[`VZSharedDirectory`](/documentation/Virtualization/VZSharedDirectory)

A directory on the host that you can expose to a guest.

[`VZSingleDirectoryShare`](/documentation/Virtualization/VZSingleDirectoryShare)

An object that defines the directory share for a single directory.

[`VZMultipleDirectoryShare`](/documentation/Virtualization/VZMultipleDirectoryShare)

An object that describes a directory share for multiple directories.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)