The Problem
Last week I performed a check-flight with a flight instructor. He showed me a nice tool that helps a lot with the flight-planning. It is called SkyDemon and it works on iPad, Android, iPhone, PC and Web. After you have registered yourself for a 30 day trail version the installation you can install the software. While the installation on my android tabled worked without any issues (download from the play store and install it) the installation on my laptop was a bit tricky. The reason behind this issues was that i run Ubuntu 14.04 which is not supported by SkyDemon. Here is how to get it running:
The Sulution: Use wine
Inspired by this forum post from 2013 I decided to use wine to get SkyDemon up and running. Wine (short for Wine Is Not an Emulator) is a free and open source compatibility layer software application that aims to allow applications designed for Microsoft Windows to run on Unix-like operating systems. You can install it via the package manager. Here is my setup:
Linux gue-thinkpad 3.13.0-35-generic #62-Ubuntu SMP Fri Aug 15 01:58:42 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
$ lsb_release -s -d
Ubuntu 14.04.2 LTS
$ dpkg --get-selections | grep -v deinstall | grep wine
wine install
wine-gecko2.21:amd64 install
wine-gecko2.21:i386 install
wine-mono0.0.8 install
wine1.6 install
wine1.6-amd64 install
wine1.6-i386 install
winetricks install
$
As we can see i have installed a few packages that contain the name 'wine'. I am not sure if I would need all of them for SkyDemon but since i am running several other Windows applications as well I decided to leave the system as it is. SkyDemon needs the .Net3.0 SP1 and the GDI+ package to work correctly. Since I am working on a 64 bit system I had to use a WINEPREFIX to emulate a 32Bit Windows installation.
For the impatient readers -> the following 5 steps lead to success:
$WINEPREFIX=~/SkyDemon WINEARCH='win32' wine winecfg
$WINEPREFIX=~/SkyDemon WINEARCH='win32' winetricks dotnet30sp1
$WINEPREFIX=~/SkyDemon WINEARCH='win32' winetricks gdiplus
$WINEPREFIX=~/SkyDemon WINEARCH='win32' wine ./SkyDemonSetup.exe
The next few paragraphs are describing these steps in detail.
Step 1: Setup a new WINEPREFIX and initialize it
In the first step a new environment for wine is setup. Everything that wine needs will be stored in the directory ~/SkyDemon.
total 2392
drwxrwxr-x 2 gue gue 4096 Mai 11 21:13 Aircraft
drwxrwxr-x 2 gue gue 4096 Mai 11 21:16 Charts
drwxrwxr-x 2 gue gue 4096 Mai 11 21:13 CustomData
drwxrwxr-x 2 gue gue 4096 Mai 11 21:13 dosdevices
drwxrwxr-x 5 gue gue 4096 Mai 11 20:48 drive_c
-rw-rw-r-- 1 gue gue 182 Mai 11 21:17 license.skdl
drwxrwxr-x 2 gue gue 4096 Mai 11 21:13 Logs
drwxrwxr-x 2 gue gue 4096 Mai 11 21:13 Routes
-rw-rw-r-- 1 gue gue 2312993 Mai 11 21:48 system.reg
-rw-rw-r-- 1 gue gue 2138 Mai 11 20:48 userdef.reg
-rw-rw-r-- 1 gue gue 52821 Mai 11 21:48 user.reg
-rw-rw-r-- 1 gue gue 58 Mai 11 20:51 winetricks.log
Note: The content of your WINEPREFIX directory may look different - depending on the installed applications.
Step 2: Setup a new WINEPREFIX and initialize it
Once you have initialized the new folder you can do some additional settings. The command winecfg launches a graphical editor where you can perform various settings.
I changed the Windows Version to Windows XP. Everything else was unchanged.
Step 3+4: Install the dependencies
A new WINEPREFIX is like a fresh installed windows box. There are no servicepacks, some of your favourite programs are missing and so on. SkyDemon 3.3.0 relies on the GDI+ and the .NET 3/SP1 framework. both of these dependencies can be installed via winetricks. winetricks is a helper script to download and install various redistributable runtime libraries needed to run some programs in Wine. These may include replacements for components of Wine using closed source libraries.
Step 5: Install SkyDemon
Download the latest and greatest version of SkyDemon and place install it via wine. Once it is installed you have to enter your trail version credentials and you have to download at least one map. After this you can do everything that is possible with the regular Windows version:
Step 6: Configure PDF display
SkyDemon is able to download PDFs from the internet. In order to display them you have either to insall a PDF reader like 'Adome Acrobat Reader', 'Foxit Reader' or something similar OR you can use your native one.
Windows queries the registry to find the correct reader. In order to use our native one we create the following *.reg file:
@="PDFfile"
"Content Type"="application/pdf"
[HKEY_CLASSES_ROOT\PDFfile\Shell\Open\command]
@="winebrowser \"%1\""
and then we register it by calling $ regedit ./winepdf.reg in the shell.
Happy Landings !