Skip to content

Instantly share code, notes, and snippets.

@famellad
Last active February 1, 2026 16:15
Show Gist options
  • Select an option

  • Save famellad/3a602756b0575dd421bd3b96cadb1462 to your computer and use it in GitHub Desktop.

Select an option

Save famellad/3a602756b0575dd421bd3b96cadb1462 to your computer and use it in GitHub Desktop.
How I got NFS:Heat UNITE running on Linux, this probably works on Steam Deck as well

What is this??

Ok first of all why are you here if you don't know what this is, touch grass.

So I was unable to find one guide that would walk me through the process of installing a NFS: Heat mod on Linux from start to finish without running into some issue without running into some issue or another, this is what worked for me, your mileage may vary, but even if you succeed I hope you learned something, got some inspiration to try something else, and keep trying, I wish you luck <3.

If you're still here I will assume you have no interest in touching grass and you want to read this full-of-nonsense guide on how to install UNITE on your Linux machine, where nothing is ever easy. Fear not, I gotcha.

Full disclaimer: This guide is the combination of two tutorials, and resources, I came up with very little of what you're about to read.

BTW, this probably works for any mod, not just UNITE. In fact, if you really know what you're doing I'm willing to bet this works for any game Frosty is able to patch. In any case I hate EA and if NFS wasn't like crack to me I would absolutely banish them into the shadow realm. Anyway I'm getting ahead of myself.

OK so how do I do it

Watcha need

  • A Linux computor system and basic knowledge of it
  • You need to understand where things are, and why
  • Know how to get Steam to run any game using Proton, not just Deck Verified games. Check the FAQ.
  • This patched version of the Frosty Mod Loader, we'll call this the Linux Fix Frosty
  • This wonderful utility and script, we'll call this the Injector
  • Download and launch NFS: Heat at least once, we want everything installed already.

What do I do now?

Never run commands you found on some random ass gist promising you can install UNITE on your Deck without understanding what the commands do, read a book PLEASE.

Getting the Frosty running

  1. Unzip the Linux Fix Frosty on a folder outside your game folder, remember it.
  2. We need to run this in the same Proton prefix as NFS: Heat, if you know how to do this using STL, protontricks or whatever skip to the next section, otherwise keep reading. And you'll learn the easy way.
  3. On the Steam Library click "Add Non-Steam Game" at the bottom left. Click "Browse..." on the window that opens.
  4. Look for your Linux Fix Frosty and add it. (It's the FrostyModManager.exe file)
  5. On your newly added entry, right click and open "Properties".
  6. In the Launch Options write: STEAM_COMPAT_DATA_PATH="$HOME/.steam/steam/steamapps/compatdata/1222680/" %command%. This launches the mod manager in the same prefix as your game would launch. If your game is stored in a different drive, you need to alter that path in the quotes to match. You're looking for the 1222680 folder. Why?
  7. On the sidebar go to Compatibility, and enable Steam Play, and choose exactly the same version of Proton you're using for NFS: Heat, anything above 7 should be fine. Find the most performant for you, or don't.
  8. Follow the Required setup on Linux section of this guide to get Koaloader working. (You need this)
  9. Hit that Play button and open the Frosty Mod Manager.

Installing the modderino(s)

  1. The "Scan for games" button is unlikely to work, so go ahead and click the "New" button and navigate to your NFS: Heat folder and pick NeedForSpeedHeat.exe. HELP I CAN'T SEE MY .steam OR .local FOLDER WHAT DO I DO???
  2. Mr. Frosty Mod Manager here will get busy and it will take a long ass time doing whatever it's doing, just leave it be. Now is a good time to grab some tea (I recommend apple cinnamon tea).
  3. Hit "Add Mod(s)", go look for that UNITE .zip file you downloaded from here.
  4. On the left panel select the mods you want (Select ONLY ONE handling mode) and hit "Apply Mod(s)" up top.
  5. Them mods will be moved to the right panel, where you can reorder to your heart's contempt if you so desire.
  6. When you're done experiencing the thrill of reordering mods, hit the "Install mods" button at the top.
  7. Frosty may claim there is some error or something. DO NOT BELIEVE HIS LIES. You're done with Frosty, the mods are installed, you can close it.

Running NFS: Heat with the mods enabled

  1. Unzip the Injector in your NFS: Heat folder. If you did it correctly, you should have a bcrypt.dll and a shim.exe in that folder.
  2. Rename NeedForSpeedHeat.exe to original_NeedForSpeedHeat.exe
  3. Rename shim.exe to NeedForSpeedHeat.exe
  4. Open setup_linuxmod_nfs-heat.sh with a text editor.
  5. Change the FROSTY_PROFILE_PATH variable at the beginning with the location of your mod(s), in the case of UNITE for Singleplayer, it should read FROSTY_PROFILE_PATH="ModData/UNITE STORY". Don't touch anything else.
  6. You're almost done, now open a Terminal in the game directory (how do I do this?) and run the script by typing ./setup_linuxmod_nfs-heat.sh and hitting enter.
  7. Almost there! Go to NFS: Heat on your Steam Library, Right Click > Properties, and in the Launch Options type: WINEDLLOVERRIDES="bcrypt=n,b" %command%.
  8. That's it. Hit "Play" on NFS: Heat, pick a god, and pray.

FAQ, maybe

How do I run any game and not just Deck Verified?

On Steam, Steam > Settings > Compatibility > Enable Steam Play for all other titles

What is this 1222680 nonsense?

Steam game ID. TODO EXPLAIN HOW

Why can't I see my .local or .steam directory?

Enable dotfiles in winecfg. TODO EXPLAIN HOW

I want to install other mods?

That's not a question, you gotta follow a similar procedure, open Frosty, install mods, run the script. The script needs more work if you want UNITE and other mods to work. But I haven't tested this yet. I'll write back my findings when I get to it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment