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.

Tux penguin

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.