fgsfdfgs has released a new version of Doom for the Switch:
Changes
merged latest upstream changes (4.1.2+).
Installation and running
Unzip the attached ZIP file to the switch folder on your SD card.
Place at least one supported IWAD (e.g. doom2.wad) into gzdoom/iwads/.
Run GZDoom Launcher from hbmenu.
Known bugs
When you exit the game via the Quit option in the menu, something doesn't deinitialize properly and the next homebrew you run will crash, unless you exit and reenter hbmenu.
Joystick axis settings might reset after restart.
Startup takes a while.
Notes
Launcher controls:
D-PAD: navigation
L/R: change tab
A: activate option
B: cancel/exit
X: reset option
PLUS: start game
You can technically place the game into any subfolder in sdmc:/switch/, as long as the gzdoom folder is next to gzdoom_launcher.nro.
Any custom files (PWADs, PK3s, DEHs, LMPs, whatever) should be placed into the gzdoom/pwads folder.
The launcher has predefined default profiles for most supported IWADs. You can also add your own profiles by pressing Y on the main tab. Any changes will be saved to gzdoom/launcher.ini.
The launcher will only detect files in gzdoom/iwads and gzdoom/pwads. You can use the Override RSP file option if you have to load files from other locations.
Multiplayer does work, however only Switch <=> PC multiplayer has been tested. You can start a netgame from the launcher. Don't forget to change the player number from 1 and read the warning message.
The IP that's placed in the address field by default is your Switch's local IP, others can use that to connect to it if they're on the same network.
Only the player that hosts the game needs to set gameplay settings, however everyone has to pick the same set of custom files as the host.
Fatal errors are logged into error.log. You can also turn on logging in the launcher.