Scripting - Chapter 5: Wine

From PlayOnLinux
Revision as of 07:21, 27 February 2015 by RoninDusette (talk | contribs) (We'll now see some usual commands to manage Wine prefixes with PlayOnLinux.)
Jump to: navigation, search

Who's that?

This is the engine behind PlayOnLinux. This software is developed by WineHQ, and permits applications that were created for Windows to run on Linux and Mac OS X.

In this chapter, I will show you some important PlayOnLinux functions in regard to Wine, but not all of them. For the more technical functions, you should read the List of Functions, which lists them all.

The Prefixes (aka virtual disks)

PlayOnLinux manages Wine's prefixes. Nothing better than an illustration to explain this.

With Wine, the installation of a game looks like this:

wine_en.jpg

With PlayOnLinux, it can be summed up this way:

playonlinux_en.jpg

The point being: It allows you to have a specific configuration per program, and the uninstallation of a program is simplified (you just have to remove a folder).

Typical commands to manage Wine prefixes with PlayOnLinux.

Select a prefix

Syntax:

POL_Wine_SelectPrefix "PrefixName"

A prefix name should only contain alphanumerical characters (roughly meaning no spaces, no special chars). Avoid short cryptic prefix names like WoW; use something like WorldOfWarcraft.

Example:

POL_Wine_SelectPrefix "Steam"

Will select Steam's prefix (must be done even if the prefix doesn't exist yet).

Create a prefix (after having selected it)

Syntax:

POL_Wine_PrefixCreate

Example:

POL_Wine_PrefixCreate

ch05-01.en.png

Will either create or update a prefix. It is necessary before each installation.

Use Wine to run an .exe file

Syntax:

POL_Wine start /unix "path/to/the/file.exe"

Example:

POL_Wine start /unix "/home/user/file.exe"
POL_Wine start /unix "$APP_ANSWER"

The 2nd example show how to run an executable selected by the user through the command POL_SetupWindow_browse.

Display a "please wait" message

It's sometimes useful to display a "please wait" message while commands are running. This is particularly useful for the command POL_Wine that will last as long as the program it launched has not completed (hence, in the case of an installation, until the installation is over).

Syntax:

POL_SetupWindow_wait "Message" "Title"
# Commands

You can put as many commands as you want; The "please wait" message will stay around until another command affecting the window is used.

Example:

POL_SetupWindow_wait "Please wait" "Installation in progress"
POL_Wine start /unix "path/to/some/file.exe"

ch05-02.en.png

Use of a specific version of Wine

It is possible to assign some version of Wine to a game (independently of the version of Wine installed system-wide). This is particularly useful for large games or applications, whose performance may vary from version to version of Wine. This can also be used if some software has stopped working with recent versions of Wine.

To do this, you just have to add an argument to the function POL_Wine_PrefixCreate:

Syntax:

POL_Wine_PrefixCreate "Version of Wine"

Example:

POL_Wine_PrefixCreate "1.3.4"

Previous: Chapter 4: Conditions

Next: Chapter 6: The Filesystem