nextnanomat GUI on Linux¶
We strongly recommend using |nextnanopy| on Linux since it runs Linux-native executables and provides methods to modify input files and interact with simulation output.
The nextnanomat GUI is programmed in C#, and can thus be executed on any operating system. It is, however, developed on and optimized for Windows. On Linux, you have to either install Wine or Mono and then execute nextnanomat.
Please note that we developed nextnanomat for Windows and not for Linux, therefore many things might not work as expected.
Status 2020-04-07: Recommended to use Wine as described below.
Status 2018-05-03: Recommended to use Wine as described below.
Option 1: Wine¶
The following instructions are for Ubuntu version 20.10 (Groovy Gorilla). Commands for the Wine installation on various distributions are given in Wine Installation. A detailed description on how to install WineHQ on Ubuntu can be found here: Install WineHQ package on Ubuntu
The following commands are needed to install WineHQ on Ubuntu 20.10 (Groovy Gorilla). For older versions of Ubuntu, please see here: Wine Installation.
sudo dpkg --add-architecture i386
wget -nc https://dl.winehq.org/wine-builds/winehq.key
sudo apt-key add winehq.key
sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ groovy main'
sudo apt update
sudo apt install --install-recommends winehq-stable
Download the portable version of nextnanomat from this site or any other portable package containing nextnanomat from Downloads.
Unzip this file.
Open a Terminal window and change to the directory where the
nextnanomat.exe
is located.Type:
wine nextnanomat.exe
There will be a pop-up message that a Mono package is missing which can be installed automatically. Click ‘’Install’’.
There will be a pop-up message that a Gecko package is missing which can be installed automatically. Click ‘’Install’’.
If nextnanomat does not work, close the terminal and open a new terminal and then try again.
The first thing you have to do when nextnanomat opens is to activate
your license. Normally this operation fails when performed under Wine or Mono.
Instead you should activate your licenses via command line License activation via command line.
Afterwards, you need to update the paths within Tools ==>
Options ==>
Licenses.
(You can cancel the activation dialog of nextnanomat)
Please note that we developed nextnanomat for Windows and not for Linux, therefore some things might not work as expected. Optionally, one can execute the nextnano++ and nextnano³ executables on Linux without nextnanomat (see Running nextnano++ & nextnano³ on Linux from Terminal).
Known problems are:
On very old CPUs, the 64-bit version of nextnano++ does not work. In this case, please select the 32-bit version of nextnano++. Tools => Options => Simulation => nextnano++ executable =>
<path>\nextnano++\bin 32bit\nextnano++_Microsoft_32bit_serial.exe
Somehow the settings are not saved, i.e. you need to re-enter custom paths or settings at each program start.
The program crashes.
Things that have to be fixed for future updates are:
Use a monospaced font for the Input tab. (It seems that the default font for Windows is not found and then another default font (Tahoma) which is not monospaced is chosen.) One can choose a different font for the editor. Tools => Options => Editor => Editor font
The following instructions are for Ubuntu version 18.04 LTS.
Run commands in a terminal:
$ sudo apt update # Update system
$ sudo apt install wine-stable winetricks # Install required packages (without "-stable" in versions bevore Ubuntu 16.10)
$ winetricks dotnet45 # Install .net support, follow along on-screen instructions, ignore warnings
$ winetricks corefonts # Install basic fonts of Windows
Finally run winecfg
-> Select “Windows 8” in Applications -> Windows
Version and reboot afterwards.
To start the application, use
wine /<your_directory_name>/nextnanomat.exe
Example: ‘’wine ‘/home/ubuntu/nextnanoTestversion/nextnanomat.exe’ ‘’
Option 2: Mono¶
(This documentation should be updated for the latest Ubuntu and Mono versions.) It is not clear if it still works!
$ mono nextnanomat.exe &
On some Linux distributions (e.g. Ubuntu), Mono is already preinstalled.
The current Mono version uses .NET Framework version 4.0 by default. The nextnanomat GUI, however, still requires the installation of the .NET Framework version 2.0. Therefore the following error occurs:
The assembly mscorlib.dll was not found or could not be loaded.
It should have been installed in the `/usr/lib/mono/2.0/mscorlib.dll' directory.
The following solution works:
$ sudo apt-get install libmono-corlib2.0-cil
$ sudo apt-get install libmono-winforms2.0-cil
$ sudo apt-get install mono-complete
All nextnanomat features seem to work on Linux Ubuntu. However, what does not work satisfactorily is the coloring of the 2D plots. They look too bright, so one can hardly recognize the results. A quick fix is to activate “Show grid”. Then the figure looks better.
If you have any feedback on these instructions, please let us know, then we can keep our documentation up to date.
Please check out Downloads for the nextnano software we provide for various Linux distributions.