This is an old revision of the document!
Fortunately, open-source scientific software applications, even those with Graphical User Interfaces, are most often developed on Linux. Those that have been developed on other operating systems generally also have build configurations for Linux. However, there are some applications that are only available on Windows. For the most part, these should be used on personal workstations or laptop computers. However, there are some exceptional circumstances where it might be useful to run these applications on the cluster:
Wine (originally an acronym for “Wine Is Not an Emulator”) is a compatibility layer capable of running Windows applications on several POSIX-compliant operating systems, such as Linux, macOS, & BSD. Installing Wine on a Linux system is a non-trivial task, which may require root access. This would introduce serious and unacceptable security issues. However, Wine can be accessed by way of a Singularity container. Singularity-3.5.3 is available on Linux and the container for WineHQ has been installed in
/home/apps/chpc/compmech/Wine/winehq.sif
Therefore, if you need to run a Windows application on the cluster, you can do so as follows:
module load chpc/singularity/3.5.3 singularity run /home/apps/chpc/compmech/Wine/winehq.sif WindowsExecutable.exe
If Wine needs to install anything, it will do so in a hidden directory in your home directory. For example:
$ls -l ~/.wine total 2536 drwxr-xr-x 2 jblogs jblogs 112 Apr 17 21:56 dosdevices drwxr-xr-x 7 jblogs jblogs 96 Apr 12 12:18 drive_c -rw-r--r-- 1 jblogs jblogs 2558225 Apr 17 21:56 system.reg -rw-r--r-- 1 jblogs jblogs 3306 Apr 12 12:09 userdef.reg -rw-r--r-- 1 jblogs jblogs 29256 Apr 17 21:56 user.reg $ ls -l ~/.wine/drive_c total 4 drwxr-xr-x 3 jblogs jblogs 22 Apr 12 12:09 ProgramData drwxr-xr-x 7 jblogs jblogs 109 Apr 12 12:33 Program Files drwxr-xr-x 6 jblogs jblogs 93 Apr 12 12:18 Program Files (x86) drwxr-xr-x 4 jblogs jblogs 33 Apr 12 12:09 users drwxr-xr-x 18 jblogs jblogs 4096 Apr 12 12:21 windows