How to Install GZDoom (Open source Doom game) on Linux (2024)

The recent surge in the popularity of retro-styled first-person shooters has led many to wonder where it first started. Many people are driven to play the one game that started it all, Doom (1993). However, getting the game to run on more modern systems without fiddling around with different settings and DOS emulators is a massive hurdle to playing the game, even though the Doom code can be run on a bacteria sample.

Today, we are going to be discussing GZDoom, it is based on ZDoom port of the original ID tech 1 engine software which allows a person to not only play Doom, but its extensive list of mods, and all games which were made on the ‘Doom engine’. Notable mentions include Doom II, Final Doom, Heretic, and Hexen.

The list of benefits does not end here though, the engine can make use of the much more modern OpenGL renderer in order to use better environmental lighting techniques, and allows you to use mouselook, which the older Doom games were sorely missing. It allows for playing on higher resolutions without hiding the HUD, allows for improved textures, better performance, and other benefits while running the open source game.

This is a guide to installing and setting up GZDoom in order to play Doom WADs (an acronym for “Where’s All the Data?”).

This comprehensive guide covers the installation and setup of GZDoom on Linux, allowing you to play classic DOOM games and mods. The methods include installing GZDoom as a Snap application, from Flathub, or manually using a .deb file. Specific steps are provided for each method, including handling WAD files and potential errors. With GZDoom, you can enjoy enhanced graphics, better performance, and modern features while playing DOOM and other games built on the ‘Doom engine’.

Installing GZDoom from the Snap release

Again, as the GZDoom repository is not exactly provided as a default repository in most distros, the easiest way to install it is using the snap package manager. This is mostly recommended to users who are on Ubuntu or already have snap installed on their systems. If snap is installed, type in the command line:

sudo snap install gzdoom
Installing Using Snap
Installing GZDoom Using Snap

This manages to install the application on your computer. However, if you try running it, then you will be greeted with an error message. You have to find out the directory of the snap application and put the required WADs in the same directory in order to play the games. These WADs are available in the files of the games themselves, so it should not be much of a problem to obtain WADs in order to play the game. You can also get the WADs by purchasing a copy of the DOOM engine from either Steam or GOG store.

which gzdoom

This should give you the directory where the gzdoom is located. However, if you try to open up gzdoom by typing in the following command, you will just get an error.

/snap/bin/gzdoom
Running Without Setting Up The GZDoom
Running GZDoom Without Setting It Up
GZDoom Error
GZDoom Error

Upon reading this error, we can understand that we just have to add the WAD files inside ~/snap/gzdoom/current/.config/gzdoom/. However, if you go inside your terminal to find this particular folder, you’ll find that the .config folder doesn’t even exist.

However, this can be easily solved by going to the file explorer and searching inside the ‘/’ part of the system. Eventually, you will find the .config folder you are looking for and the gzdoom folder, inside which you need to place your WADs.

How To Find The .config Folder
How to Find the .config Folder

Here, I have already placed my shareware version of DOOM (1993) and DOOM II : Hell on Earth (1994). Before showcasing GZDoom, I went ahead and put in a few extra WADs to play around with inside the port. Go ahead and type in the terminal:

/snap/bin/gzdoom

Following this, you will be greeted with the following dialog box, which prompts you to select a certain WAD to play. However, if you only have one WAD inside the directory, it will skip this step and open up the WAD for you to play!

GZDoom Dialog
GZDoom Dialog

I go ahead and start up the shareware version of DOOM on here and start playing E1M1: Hangar.

I go ahead and start up the shareware version of DOOM on here and start playing E1M1: Hangar.

E1M1 On GZDoom 1
E1M1 On GZDoom 1

We have finally managed to play DOOM on our snap installation of GZDoom. However, this version of GZDoom doesn’t play well with mods, and I have had a really difficult time trying to get DOOM mods to work with this version of GZDoom. Thus, I would highly recommend a person install GZDoom on their distro using the manual installation method.

Also Read: Snaps in Linux (Basic intro)

Installing GZDoom port from Flathub

It greatly helps if you can install a universal container package like a flatpak in order to run GZDoom. This is ensured to work on most distros and, excluding some edge cases, is probably the best way to experience GZDoom on your system.

If you have flatpak installed on your system, you can go ahead and type in the following command in the terminal:

flatpak install flathub org.zdoom.GZDoom

Also Read: How to set up and enable Flatpaks in Linux

Installing GZDoom From Flathub
Installing GZDoom From Flathub

However, much like our snap installation of the port, it won’t work unless you put in some WADs for it to play with. If you go ahead and type in the following command in the terminal, then you will receive an error which is quite similar to the one we receive when we run the snap application without any previous setup.

In order to start playing on this installation method, you’d have to go to ~/home/{username}/.var/app/org.zdoom.GZDoom/.config/gzdoom and put all your required WADs there. After you have done this step, you can go ahead and type in the terminal.

flatpak run org.zdoom.GZDoom

You are then greeted by the following screen to start up your WAD.

GZDoom Flatpak Selection Screen
GZDoom Flatpak Selection Screen

However, even this method of installation doesn’t play nice with mods, as GZDoom doesn’t come up as an app which we can choose to run .WAD files. For proper mod playability, we would need to go to manual installation techniques, which are more prevalent on Windows.

Manually Installing GZDoom Using a .deb File

This method of installation is suitable on Debian based systems and works by just going to the official website in order to download the Ubuntu version. In order to download the official release, you need to go to this website

GZDoom Download Page
GZDoom Download Page

After you click on the .deb file after it is finished installing, the file just installs itself without needing any further instructions. This also leads to an install that essentially behaves just like the snap or Flatpak ones. Thus, this type of installation also needs you to manually put all your WADs in a particular folder. This time, it’s ~/.config/gzdoom.

In all these options, you can try to edit the [IWADSearchDirectories] in the gzdoom.ini file in order to get the required WADs from another specified directory. In this instance, I edit the .ini file using VIM in order to get the required IWADs or WADs from my “DOOM MULTIPLAYER” directory

In order to do this, just go into the terminal and type in, (provided that VIM is installed on your system)

$ cd .config/gzdoom
$ vim gzdoom.ini

This opens up the VIM editor.

Editing The .ini File Using VIM
Editing The .ini File Using VIM

As you can see in the highlighted part of the above picture, you have to type in the required path of your WAD folder in order for GZDoom to detect them.

To edit the .ini file, press ‘I’ on your keyboard to go into “INSERT” mode and then type PATH=/required file path. In order to exit, first press ‘Esc’ to get out of “INSERT” mode and type ‘:wq’ to save the changes you made to the file and quit.

Now, you can just start GZDoom by typing in:

gzdoom

This will then again provide us with the selection screen we’re oh so familiar with. However, this method also allows us to play additive mods.

If you add the GZDoom application on your desktop, then you just need to drag and drop your wanted mod on top of the GZDoom Icon.

This will allow you to play any of the base mods you have with these additive ones. For this example, I am opening up DOOM II using a Mario mod I found.

Entryway Super Mario Doom
Entryway Super Mario Doom

This marks the end of our journey of learning how to install GZDoom and running it on Linux! You can still go ahead and go into the archives available on the official website in order to get older versions. You can also download the .tar files in order to just directly extract GZDoom into your WADs directory and not have to worry about placing WADs in specific folders or editing .ini files.

References

GZDoom Official Wiki

ZDoom Support and Forum page

Official Source Code of the Project