By: Josh, AA0FU
In my quest to make my portable operations setup as robust as possible, in April 2023, I turned an old Chromebook into a station computer for the go kit. After failing to get Pat (https://getpat.io) working, I started fresh and found several guides for using Wine with Winlink Express. However, none of them quite worked as a one-stop shop.
The following methods were used to successfully install and operate Winlink Express and VARA HF on Bunsenlabs Beryllium. I have also used the process outlined here on Ubuntu 22.04 for my home station. The only significant change is setting a different WineHQ repository (though I suspect the Debian repos will work on any Debian-based distro).
Install Latest Wine:
If you have already installed Wine from another repository, you need to remove it and any dependent packages before attempting to install packages from WineHQ, as they may cause conflicts. Uninstall/purge as fits your operating system configuration.
If your system is 64 bit (most likely it is), enable 32 bit architecture (unless you already have):
$ sudo dpkg –add-architecture i386
Download and add the repository key:
$ sudo mkdir -pm755 /etc/apt/keyrings
$ sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key
Add the repository from WineHQ:
$ wget -nc https://dl.winehq.org/wine-builds/debian/dists/bullseye/winehq-bullseye.sources
$ sudo mv winehq-bullseye.sources /etc/apt/sources.list.d/
Update and install:
$ sudo apt update
$ sudo apt install –install-recommends winehq-stable
Install mono when prompted.
To install Wine Gecko run:
$ wine iexplore
A popup telling you to install wine gecko will appear.
Install winetricks (latest version):
$ sudo wget ‘https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks’ -O /usr/local/bin/winetricks
$ sudo chmod +x /usr/local/bin/winetricks
Install Winlink Express:
Insure you are in the groups needed to use Winlink and VARA HF:
$ grep -i $USER /etc/group
You should see the groups ‘dialout’, ‘tty’ and ‘audio’. If your user name is not in those groups with the following:
$ sudo usermod -a -G dialout $USER
$ sudo usermod -a -G tty $USER
$ sudo usermod -a -G audio $USER
If you have been using Wine and/or winetricks before this setup, backup and clear the cache:
$ mv ~/.wine ~/.wineBU
$ rm -rf ~/.cache/winetricks
Do the following to ensure that you are installing to 32-bit Wine:
$ export WINEARCH=win32
$ wine reboot
Pulseaudio causes problems with Wine, so enable alsa:
$ winetricks sound=alsa
Install some needed components:
$ winetricks -q dotnet48
Pour a drink. Do some laundry. It’ll be a while.
$ winetricks vb6run
$ winetricks vcrun2015
Get the latest Winlink Express at https://downloads.winlink.org/User Programs/ . Download and unzip the installer (.exe). I extracted the .zip file in the Downloads directory.
$ wine ~/Downloads/Winlink_Express_install_1-6-0-0/Winlink_Express_install.exe
Some sources say the package may appear as RMS Express, but will work fine. If Winlink starts up, it will ask you to fill in a set-up page that will register you with Winlink and allow you to pass email via telnet. Have the call sign you will be using, a password, the Maidenhead locator of the station and your personal contact information. If you already have an account, enter your call sign and password, then click update and it should auto complete.
Install VARA HF Modem Software:
Download the VARA Modem program from https://rosmodem.wordpress.com/ . I only used VARA HF, since my portable setup is only an HF radio. Extract the zip file. Once again, I just used the Downloads directory.
Download the extra goodies from K6ETA (http://files.k6eta.com/VARA_Components.zip)
Unzip the file to wherever you like (someplace easy, like Downloads, is nice) and then copy the files to ~/.wine/drive_c/windows/system32. Replace anything already there.
Time to install:
$ wine ~/Downloads/’VARA setup (Run as Administrator).exe’
If you get an error when you run VARA at the completion of the install, you likely need to replace a bad .dll. The fixed copy can be installed using the following commands:
$ wget ‘http://download.microsoft.com/download/winntsrv40/update/5.0.2195.2668/nt4/en-us/nt4pdhdll.exe’ -O ~/Downloads/nt4pdhdll.exe
$ wine ~/Downloads/nt4pdhdll.exe
This unzips the file to “~/.wine/drive_c/users/(your user name)/Temp”. Copy the files pdh.dll, pdh.dbg and pdh.pdb to the directory ~/.wine/drive_c/windows/system 32.
$ cp ~/.wine/drive_c/users/(your user name)/Temp/pdh.* ~/.wine/drive_c/windows/system32/
Everything should be groovy now.
USB audio config:
Because Wine has difficulty passing USB to as serial, I had to override Wine’s default device mapping.
$ wine regedit
Create a new string entry in HKEY_LOCAL_MACHINE\Software\Wine\Ports.
The entry name will be the Windows device name and the value is the Linux device path. In my case, I chose COM5 and used value /dev/ttyUSB0. I also created a symlink to the USB device in the Wine directory.
$ cd ~/.wine/dosdevices
$ ln -s /dev/ttyUSB0 COM5
$ wine reboot
At this point, I also restarted the entire system.