Configuration on Linux

The program is written for Windows and uses the .NET Framework version 4.7.2. It runs on computers with Windows 7 and newer.

From now on, nothing stands in the way
of running RigAndLog on Linux as well! *

 

* Though here’s a small asterisk — with some limitations.

The program runs on Linux through Wine, and I’ll describe how to configure it later. Because of this, there are several limitations — Linux is not Windows, and emulation will never be 100% perfect.
I’m not a Linux expert and have only limited experience with it, so I apologize in advance for any technical inaccuracies or controversial opinions. These are simply my personal experiences, not an attempt to discredit anyone.

As for providing help with Linux-specific issues when something doesn’t work — unfortunately, my knowledge in that area is limited.

List of known limitations:

  • No support for OmniRig and radios — this is very difficult to implement, and I was unable to get Linux to work properly with OmniRig. Any potential workaround would likely conflict with other Linux radio software, so I do not recommend attempting it. This issue may eventually be resolved once hamlib support is implemented. For now, only the LogBook functionality can be used.

  • Operation similar to Windows 7. Wine does not include all Windows controls — for example, WebView2 (Edge browser). Even if installed, it basically doesn’t work. As a result, several windows (e.g., map displays) open in an external browser like Firefox instead of within the program.

  • No LoTW support. The program natively uses the Windows version of LoTW. If someone manages to get it running and functioning properly under Linux, it can be enabled in the program.

  • Avoid using schedulers and limit background operations.

  • Time synchronization and camera support have been disabled. Linux has better native solutions for these features, and enabling them in Wine would likely cause problems.

  • Some errors may occur. Since Wine emulates Windows, it’s not 100% compatible. For example, in one of the dialogs, a text containing the Polish letter Ł repeatedly appeared — and although it worked fine elsewhere, in that specific place it caused Wine to freeze. In general, my impression is that Linux constantly needs a little “push” to move forward — copy-paste issues, network browsing quirks, etc., always something to tweak in the console to make it work. That’s just my personal opinion as a long-time Windows user after briefly exploring the topic. No offense intended. 😜

  • Running on a virtual machine — e.g., Linux inside Windows — is slow and not worth it. Wine draws program controls very slowly.

  • File system differences. The Windows file system is emulated and mapped to Linux paths by Wine. You’ll need to get used to where things are located and how to work with them in this setup.

🛠️ Configuration on Linux

In the file manager, navigate to the RigAndLog program folder, right-click it, and select Open Terminal Here (or a similar option).
You can also launch the console using the keyboard shortcut ALT+CTRL+T, but it’s better to run the scripts directly from the RigAndLog program folder.

First, we need to improve the copy-paste functionality in the terminal window. If pasting already works correctly, you can skip this step:

bind 'set enable-bracketed-paste off'
echo "bind 'set enable-bracketed-paste off'" >> ~/.bashrc
echo "DISABLE_BRACKETED_PASTE=true" >> ~/.zshrc

I’ve created a script for a full installation (for the brave ones, though I don’t recommend it). You can run it as follows:

chmod +x *.sh 
./install_all.sh

However, because of the variety of Linux distributions and the possibility of a number of problems along the way, I will describe step by step how I ran it on Linux Mint version 22.2. By performing the installation step by step you can react to errors as they occur and a single mistake won’t affect the rest of the configuration. Unfortunately, if you lack Linux experience I probably won’t be able to help much in case of problems. The configuration was created thanks to Google, ChatGPT, etc., and many days of trial and error.

I take no responsibility for any errors or losses caused by faulty operation… you know the drill.

Let’s begin:


🧩 STEP 1 — Make sure your system is up to date

In the terminal, type:

sudo apt update && sudo apt upgrade -y

and wait until everything is fully updated.


🧰 STEP 2 — Install Wine

Wine is a “compatibility layer” that allows you to run Windows programs on Linux.

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install wine winetricks -y
sudo apt install wine-gecko2.47.4

If the last command doesn’t work — which is quite likely — run the following instead:

wget https://dl.winehq.org/wine/wine-gecko/2.47.4/wine-gecko-2.47.4-x86.msi
wget https://dl.winehq.org/wine/wine-gecko/2.47.4/wine-gecko-2.47.4-x86_64.msi
wine msiexec /i wine-gecko-2.47.4-x86_64.msi

🍷 STEP 3 — Configure the Wine environment

Run the Wine configuration tool:

winecfg

The launch may take a little while. On the first run, Wine will create the ~/.wine directory and open the configuration window. Here’s how I set up the configuration:

🖋 STEP 4 — Install fonts and text rendering

winetricks dotnet48

💡 This step will take the longest. Wine will download installers from Microsoft servers.

Winetricks can automatically install the full chain of previous .NET versions:

.NET 2.0 → 3.0 → 3.5 → 4.0 → 4.5 → 4.6 → 4.7 → 4.7.2 →4.8

Although the program works with .NET 4.7.2, it is recommended to also install 4.8 — supposedly it slightly improves performance and buffering.

During installation:

  • Accept the license agreement.
  • Do not restart the system if prompted — click Cancel / Later or similar.

💾 STEP 7 — Copy RigAndLog to Linux

Download the 64-bit version of the program, unpack it, and copy the program folder to your Linux home directory, for example:~/RigAndLog

▶️ STEP 8 — Launch the application

In the terminal:

cd ~/RigAndLog
wine RigAndLog_SP4THK.exe

⚙️ Additional options:

🖥️ Desktop and Start Menu shortcuts

Here I’ve created a script — run it in the terminal window by typing:

chmod +x *.sh 
./install_shortcuts.sh

📡 COM Ports / Radio

If RigAndLog uses COM ports (e.g., for CW), you need to map them in Wine:

Check available ports:

ls /dev/tty*

Create a symbolic link, for example for /dev/ttyUSB0:

ln -s /dev/ttyUSB0 ~/.wine/dosdevices/com1

In the program, select COM1 in the CW windows.

However, I don’t think Wine and RigAndLog handle CW transmission very well. There are better native Linux programs for this purpose.

🚀 Launching the Program

Once started, the program detects that it’s running under Wine and knows it’s on Linux. It tries to adapt to the challenging environment it has to operate in — in this hostile, letter-sensitive system. 😉

On the first launch window, it’s best to leave the options as they are:

It’s worth considering whether to enable or disable the visual style. This may slightly slow down Wine, but it’s not a drastic slowdown. The option can be chosen depending on your hardware.

After opening the LogBook window, select Configuration ⚙️.

Unlike the program on native Windows, there is an additional tab in the configuration, aptly named Wine:

Here we set the drive mapping options, similar to those in the Wine configuration itself. Wine translates from Linux paths to Windows-style paths; we will translate in the opposite direction.

Wine emulates a Windows file system — for example, drives C: and D:. Windows also has its specific folders like My Documents, Program Files, etc. Wine maps these to the Linux file system. The program essentially doesn’t see the Linux directories directly, only the mapped Linux paths to virtual drives like C:.

However, if a user clicks Show in Explorer, natively this works poorly. There’s no straightforward way to handle it. That’s why in the program, all options that would open files or folders in Explorer are remapped to Linux paths and opened in the default Linux file manager — much more convenient and easier to navigate. Therefore, it’s necessary to configure reverse mapping in the program.

There may be ways to extract these paths directly from Wine settings, but this setup also has advantages — for example, you can customize it your way.

Unfortunately, this is a one-way option: if you open a file in LogBook (e.g., an ADI file for import), it must reside in the mapped directories; otherwise, the program won’t be able to see it. This is a bit cumbersome and requires getting used to, but there’s no alternative.

As mentioned, the program essentially runs like on Windows 7, though under Wine it’s better to set it to Windows 10. Unfortunately, I haven’t found a reasonably working internet browser that can be easily integrated into the program. As a result, maps and other HTML-based windows open in the Linux browser rather than within the program. This is the only practical workaround, since the built-in Wine browser… well, you know.

Testing:

We have two buttons to test the file system: opening a folder and opening a file.

There are also three buttons to test how the browser works.

The program opens web pages in several ways:

  • Local file, e.g., C:/mapa.html
  • Local file with parameters, e.g., C:/mapa.html?CallSign=Sp4THK&Option1=XX...
  • Internet file, e.g., https://sp4thk.elfro.pl
  • Internet file with parameters, similar to option 2

Because, as usual, Wine + Linux… the so-called query string (the ? and parameters in the URL) gets mangled, causing the link to break. This is why there are three separate launch methods.

For the user, it’s important to test all three browser launch options, as well as the two file and folder opening options.


The end!!! 🥳 Configuration complete 🎉

The program’s operation on Linux has been tested for basic scenarios, but it’s possible that some things may still not work 🤷🤔😕. Please provide feedback if you encounter any issues.

No penguins were harmed in the making of this guide. 😉