Using Mono to Run .exe Files on Linux

Found a great game? Discover a new program? Only available on Windows? No Windows machine? Don’t want to bother dual booting? Running a virtual machine not an option? Me too! Using Mono makes all that a lot easier. Let’s talk about using mono to run .exe files on linux.

Mono, according to their website, is an open source project sponsored by Microsoft that implements the .NET framework across other platforms like Linux and Mac OS. It’s not a program. It’s a framework. Basically a sort of language used to run files. So how exactly do you go about using mono to run .exe files on linux?

Installation is pretty straightforward. Just install a few packages, add the PPA to your system, and run the install command. Done! Detailed instructions on how to do this can be found here.

In my case, I use KeePass to keep track of all my passwords, but that’s a software project that’s only available as an .exe file. Luckily, you can open it and run it on any OS using Mono. Just by dropping this command:

mono Location/Of/Your/EXE/File.exe

The only catch here is that Mono only works for certain .exe files. This is where it gets kinda deep, but it’s essentially dependent on how that .exe file was compiled and what elements of .NET it’s using or requires to run. A bit of googling can certainly point you in the right direction, and for more information on Mono compatibility, check this out.

Something I learned just recently: if you’re just trying to run KeePass, there’s a great chance that the package manager in your distro has some sort of KeePass equivalent, if not KeePass itself. I’ve started using Manjaro lately, and KeePass is just a one click install. Try it out!