Chapter 9. Advanced Manual Configuration Options

Most users will not need to use the instructions in this chapter. You should not attempt any of these procedures unless you have passing knowledge of the OS X command-line -- most of these sections require text commands to be issued.

Installing CrossOver on multiple systems

CrossOver supports rolling out Windows applications to a large number of users and on a large number of systems. The basic technique is bottle publication which allows all the users of a single system to share a single installation of each application. Bottle publication is simple -- just create a bottle with the included files and applications that you wish to distribute, remove any private data (for example, cached passwords and user names), and click the Publish button. After publication, all users on that system will have access to the software within the published bottle.

When a user accesses a published bottle, a 'stub bottle' will be created in their home account. Stub bottles contain a user's custom alterations to the bottle, and contain symbolic links that refer to most large files and directories in the published bottle. A stub bottle has the same name as the published bottle to which it refers.

Distributing a published bottle

The simplest way to distribute a published bottle to another Mac is to copy it into the same location on the new system (it's typically located in /Library/Application Support/CrossOver/Bottles). Users on that system only need to run CrossOver once after the bottle has been added, at which point CrossOver will create any icons that are a part of that bottle.

Depending on your needs and network configuration, you may wish to provide some or all of the following customizations before pushing packages out to the target machines.

Distributing ready-made icons.  If you have a facility to automatically push icons onto users' docks, you may wish to include one or more icons created by CrossOver in your distribution package. An icon will still work if copied from one machine to another, as long as the bottle path is the same on both. As soon as CrossOver is launched via the icon, it will review the icon file and may replace it with an equivalent system-local icon if appropriate.


After publishing a bottle, you will have two sets of icons, one of which refers to your private bottle, and one of which refers to the published bottle. Make sure you distribute the icons that refers to the published bottle.

Providing custom or ready-made preference files.  Many sysadmins will want to modify some of CrossOver's default behavior before rolling it out widely. This can be done either by running scripted commands in each user account, or by preparing a ready-made defaults file (Typically ~/Library/Preferences/com.codeweavers.CrossOver.plist) and copying that file into the Preferences directory of each user account.

A few of the most useful default settings are:

  • Changing where a user's bottles are located.  The default user bottle directory is ~/Library/Application Support/CrossOver/Bottles. Even when using published bottles this directory is used to store user-local settings. The location of this directory can be changed via the BottleDir preference:

    $ defaults write com.codeweavers.CrossOver BottleDir /path/to/user_private/non_networked/bottle/dir

    It is very important that you not point this setting to a directory that contains the published bottles themselves, as user settings will conflict with the system settings.

    Using a networked or remote volume for the bottle directory may result in serious performance problems and is generally a bad idea.

  • Changing where CrossOver looks for published bottles.  If you want to store the published bottles on an external volume, or on one that's shared between multiple systems, you will probably need to redirect CrossOver to look in an alternative directory. This can be accomplished using the ManagedBottleDirs preference:

    $ defaults write com.codeweavers.CrossOver ManagedBottleDirs /path/to/shared/non_networked/bottle/dir

Please Wait...