Running Orbiter under Wine

From OrbiterWiki
Revision as of 08:21, 18 August 2016 by Enjo (talk | contribs) (→‎Installing DX9: reordered commands)
Jump to navigation Jump to search

This article explains how to run Orbiter2016 with DirectX9 client under Wine. Use only stable version of Wine for this (tested on 1.6.2), or Orbiter will be crashing upon switching views, etc.

Preparation

Installing the base environment

Install the latest STABLE version of Wine and Winetricks in your system.

# cd into your Orbiter2016 directory

# We will be operating on a specialized Wineprefix
echo "$HOME/.local/share/wineprefixes/orbiter2016" > wineprefix.txt
export WINEPREFIX=`cat wineprefix.txt`

# Create the Wineprefix for Orbiter 2016. Select Windows 8.1 as the supported operating system.
WINEARCH=win32 winecfg

# Install VC++ runtimes
winetricks vcrun2005 vcrun2008 vcrun2010 vcrun2012 vcrun2013 vcrun6 vcrun6sp6 corefonts
winetricks vcrun2015 # This may fail under older winetricks/wine

Installing DX9

Search the forum to get the latest DX9 Client for Orbiter 2016. Once we reach a stable Orbiter release, the DX9 Client link might get fixed.

export WINEPREFIX=`cat wineprefix.txt`

# It should be possible to install DX9 via the following command, but it doesn't seem to satisfy all dependencies:
# winetricks d3dx9

# Download page of the DX9 runtimes
#https://www.microsoft.com/en-us/download/confirmation.aspx?id=8109

# A direct link
#wget https://download.microsoft.com/download/8/4/A/84A35BF1-DAFE-4AE8-82AF-AD2AE20B6B14/directx_Jun2010_redist.exe

# Adjust your DX9 extraction directory
DX9_EXTRACTED_DIR=../../orbiter-clean/install/dx9_jun2010/

# Extract the redistrubutable to the directory, that you entered above
wine directx_Jun2010_redist.exe

# Let wine install it in your prefix
wine $DX9_EXTRACTED_DIR/DXSETUP.exe

Run scripts

Create the following two scripts in your Orbiter2016 directory to and run them with:

sh run-wine-orbiter-ng.sh # DirectX9
sh run-wine-orbiter.sh    # DirectX7

run-wine-orbiter-ng.sh

#!/bin.bash

killall orbiter.exe
export WINEPREFIX=`cat wineprefix.txt`
wine Orbiter_ng.exe

run-wine-orbiter.sh

#!/bin.bash

killall orbiter.exe
export WINEPREFIX=`cat wineprefix.txt`
wine orbiter.exe

Running Orbiter

  • click Modules, and click Expand all twice. Select addons you want to use. In case of running run-wine-orbiter-ng.sh, enable the D3D9Client checkbox.
  • click Video, and switch to full screen
  • click Parameters, uncheck Focus follows mouse
  • click Scenario and pick something.
  • click Launch Orbiter
  • The typical Ctrl+F1-4 combinations don't work under Linux. Use the upper pane of the Orbiter window to invoke these special functions.

(info borrowed from http://devio.us/~dv/linux-orbiter.html#sec-9 )

Full screen mode works faster for the same resolution as in the windowed mode, but it may block keyboard entirely when you operate on dialog boxes. In that case, you have to kill the orbiter.exe process by switching to another virtual console via Ctrl+Alt+F1, logging in and typing:

killall orbiter.exe

next switch back to X via Ctrl+Alt+F7