I’m certainly not the first to attempt to run the popular N1MM Logger+ contest logging program on Linux through Wine. I do think that I’m one of the few (NF8M, W2NRL (thanks to both of you for putting your experiences out on the Web)) that has found that this may now be possible after years of frustration. Wine has clearly become more capable and short of N1MM Logger+ being written to work with Mono, hams wanting to transition away from Microsoft Windows to Linux may well have one less reason to prevent them from doing so.
In recent weeks I have been working with Debian Buster which at this time is nearing its freeze before it is released as the next Debian Stable release. I have found Buster to very well integrated and have been enjoying Gnome on Wayland and finding its font rendering to be among the best I have seen on the Linux desktop. This newfound capability led me to consider how well Wine had evolved and I must say that I am pleasantly impressed.
Wine installation
This section assumes that you’re familiar with the Debian packaging tools such
as apt-get
or aptitude
. As I prefer aptitude
, I’ll be noting package
installation through its UI.
Wine in Buster supports both 32 and 64 bit applications. As I understand, the
best compatibility is obtained by having both 64 and 32 bit versions installed
simultaneously. For those of us running the Debian amd64
architecture, this
means the i386
architecture needs to be enabled and packages from it
installed. For adding the i386
architecture, the command is:
sudo dpkg --add-architecture i386
Next you can update the package list using aptitude
or apt-get update
,
whatever is your preference.
In the aptitude
UI select the wine
package and see that it depends on
either the wine32
or wine64
package. Also, both can be installed at once
as this screenshot shows.
In addition to the wine
and its dependent packages, the winetricks
package
should also be installed. Start the installation process which will take some
time as a lot of i386
architecture packages are downloaded and installed.
Setting up the wineprefix
Wine has the capability of multiple virtual Windows installations through
the use of multiple wineprefixes which are stored as additional “hidden”
directories in your home directory. The default wineprefix is, appropriately
enough, .wine
.
A bit of a shortcut can be taken that will create the wineprefix and configure Wine to smooth (antialias) the Windows application fonts (the following command assumes your display uses RGB sub pixel rendering).
WINEPREFIX=$HOME/.wine-n1mm winetricks settings fontsmooth=rgb
A small window from winecfg
will appear and the following will be printed to
the terminal before winetricks
exits:
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Using winetricks 20180815 - sha256sum: 29e664ec1e879271a33167bf367deaa188cbe803d44b540e692bd669c44a2804 with wine-3.0.3 (Debian 3.0.3-2) and WINEARCH=win64
Executing w_do_call fontsmooth=rgb
Executing load_fontsmooth rgb
Setting font smoothing to rgb
Executing wine regedit C:\windows\Temp\_fontsmooth=rgb\fontsmooth.reg
Executing wine64 regedit C:\windows\Temp\_fontsmooth=rgb\fontsmooth.reg
Next make a few settings in winecfg
to configure the virtual Windows
installation. The following screen video shows setting the Drives to point to
various locations in your system (click the full screen icon in the lower
right of the video play to view it in full size).
Next winetricks
will be run to install the Microsoft .NET 4.0 runtime
library as shown in the following screen video.
The video cuts off but once winetricks
returns to the selection screen, just
press the Cancel button to exit the screens in succession.
Now that the prerequisites are in place, the N1MM Logger+ full installer
and most recent update may be downloaded, installed, and configured.
Again, the WINEPREFIX
will be used to make sure that N1MM Logger+ will be
installed in the correct virtual Windows installation. From the directory
where your browser saved the downloaded files run the following commands (Note
that N1MM Logger+ is updated often and the versions you download will differ
from those shown here, please use the version you downloaded):
WINEPREFIX=$HOME/.wine-n1mm wine N1MM\ Logger+\ FullInstaller\ 1.0.7182.exe<
and:
WINEPREFIX=$HOME/.wine-n1mm wine N1MM\ Logger+\ Update\ 1.0.7342.exe
Simply follow the on-screen prompts of each installer. Wine will create
desktop icons that link into the correct WINEPREFIX
for N1MM Logger+ into
the standard Free Desktop menu system. Be aware that the N1MM menus will
often close before they can be clicked with the mouse (I am guessing, but have
not confirmed, that this is an issue between Wine and MS .NET 4.0). Oft times
using the keyboard arrow keys and the Enter key for selection is required.
This has been needed in the main Configure menu. Actual logging is not
affected even though the cursor bar is rather frenetic.
Have fun!
As a side note, I operated the 2018 ARRL 160m contest using N1MM Logger+ on my Debian Buster desktop running Gnome and it worked quite well. I set it up to key the K3 via the RTS line through the CAT serial port and that part performed flawlessly.
Tip
If you get an error after setting up the radio on a serial port that another
application is using the port, it’s quite likely that your Linux user account
does not have permission to access the port. Adding your username to the
dialout
group will clear the error and allow using the serial ports as your
normal user. You can do this from a terminal as:
sudo usermod -aG dialout <username>
Logout of your desktop and log back in and N1MM Logger+ should be able to access the ports now.
Comments
Comment by Nate Bargmann on 2022-10-30 07:15:00 -0600
I’m no longer using this setup as after about 18 months changes to N1MM+ and .Net rendered the entire exercise moot. Changes to N1MM+ meant that it no longer did automatic updates as I recall, and newer versions of .Net simply could not be installed under Wine. It was fun for a little bit.