[Troubleshooting] Left 4 Dead 2 on Zorin OS - "Steam must be running" error even with Goldberg Emulator

Help / Troubleshooting

I've been fighting with Left 4 Dead 2 (DODI repack) for days and could really use some help from the Linux gaming community. The game runs perfectly on Windows but refuses to launch on my Zorin OS setup.

System Specs:

  • OS: Zorin OS 18 (Ubuntu-based) x86_64
  • Kernel: 6.17.0-14-generic
  • DE: GNOME 46.0 (Wayland)
  • CPU: Intel i5-6300U
  • GPU: Intel HD Graphics 520 (integrated)
  • RAM: 3.7GB total (1.9GB free)
  • Launcher: Heroic Games Launcher 2.19.1
  • Wine Prefix: /home/unisjy/Games/Heroic/Prefixes/default/sideload

The Problem:
Every time I try to launch, I get the classic "Steam is not running. You must start Steam in order to play this game" error. The error appears after the game seems to start initializing (I can see Bink videos trying to load in the terminal output).

What I've Tried (in order):

  1. GE-Proton-Latest → Steam error
  2. Wine-GE-Latest → Still Steam error
  3. SmartSteamLoader → Same error
  4. Goldberg Emulator (current attempt):
    • Generated steam_interfaces.txt from original steam_api.dll (got: SteamClient017, SteamGameServer012, SteamUser019, SteamUtils008, SteamController004)
    • Using Windows Goldberg steam_api.dll (not the Linux .so version - learned that Wine can't load native Linux libs)
    • steam_appid.txt with "550" in main folder AND in steam_settings/
    • steam_settings/account_name.txt with my username
    • steam_settings/language.txt set to english
    • Removed all SmartSteamLoader files (smartsteamemu.ini, steamclient.dll, launcher.exe)
    • Kept original steam_api.dll backed up as steam_api.dll.original

Current game folder contents:

text

left4dead2.exe
steam_api.dll (Goldberg Windows version)
steam_api.dll.original (backup)
steam_appid.txt
steam_interfaces.txt
steam_settings/
├── account_name.txt
├── language.txt
└── steam_appid.txt

Terminal output when launching:

text

BinkOpen( x:\games\left 4 dead 2\left4dead2\media\valve.bik )
BinkOpen( x:\games\left 4 dead 2\left4dead2\media\l4d2_intro.bik )
Loading unsigned module client.dll
Access to secure servers is disabled.
Loading unsigned module server.dll
Access to secure servers is disabled.
Game.dll loaded for "Left 4 Dead 2"
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit

Then the Steam error popup appears

What confuses me:

  • The game seems to initialize (loading videos, game modules) before the Steam error hits
  • The steam_interfaces.txt was generated correctly from the original DLL
  • No Goldberg-related messages appear in the log (should it print something when loading?)
  • The game works on Windows with the same repack

Questions for the community:

  1. Does Goldberg need additional configuration for L4D2 specifically? The readme mentions some games need more than just interfaces.txt

  2. Could this be related to VAC/secure servers? I see "Access to secure servers is disabled" in the log - is the game trying to phone home?

  3. Is there a way to verify Goldberg is actually loading? Should I see "Goldberg Steam Emulator" in the logs somewhere?

  4. Has anyone gotten this specific L4D2 repack working on Ubuntu/Zorin? If so, what was your exact setup?

  5. Could it be a permission issue with the Intel GPU? The game seems to initialize graphics fine based on the DXVK output

  6. Should I try the experimental Goldberg build? I have it in my download but haven't tried yet

  7. Is there a specific Wine/Proton version known to work with Goldberg + L4D2?

Additional info:

  • Running from terminal with WINEPREFIX=/home/unisjy/Games/Heroic/Prefixes/default/sideload wine left4dead2.exe
  • Save files should go to ~/.local/share/Goldberg SteamEmu Saves/550/ but nothing appears there yet
  • Disk space is tight (94% full on root, 95% on data partition) - could this affect it?

I've spent hours on this and it's the last game keeping me from full Linux migration. Any help would be massively appreciated!

Body:

I've been fighting with Left 4 Dead 2 (DODI repack) for days and could really use some help from the Linux gaming community. The game runs perfectly on Windows but refuses to launch on my Zorin OS setup.

First, this comment from the DODI site is what sent me down this rabbit hole:

So I know it's possible - someone has done it. I just can't figure out the exact recipe.

System Specs:

  • OS: Zorin OS 18 (Ubuntu-based) x86_64
  • Kernel: 6.17.0-14-generic
  • DE: GNOME 46.0 (Wayland)
  • CPU: Intel i5-6300U
  • GPU: Intel HD Graphics 520 (integrated)
  • RAM: 3.7GB total (1.9GB free)
  • Launcher: Heroic Games Launcher 2.19.1
  • Wine Prefix: /home/unisjy/Games/Heroic/Prefixes/default/sideload

The Problem:
Every time I try to launch, I get the classic "Steam is not running. You must start Steam in order to play this game" error. The error appears after the game seems to start initializing (I can see Bink videos trying to load in the terminal output).

What I've Tried (in order):

  1. GE-Proton-Latest → Steam error
  2. Wine-GE-Latest → Still Steam error
  3. SmartSteamLoader → Same error
  4. Goldberg Emulator (current attempt):
    • Generated steam_interfaces.txt from original steam_api.dll (got: SteamClient017, SteamGameServer012, SteamUser019, SteamUtils008, SteamController004)
    • Using Windows Goldberg steam_api.dll (not the Linux .so version - learned that Wine can't load native Linux libs)
    • steam_appid.txt with "550" in main folder AND in steam_settings/
    • steam_settings/account_name.txt with my username
    • steam_settings/language.txt set to english
    • Removed all SmartSteamLoader files (smartsteamemu.ini, steamclient.dll, launcher.exe)
    • Kept original steam_api.dll backed up as steam_api.dll.original

Current game folder contents:

text

left4dead2.exe
steam_api.dll (Goldberg Windows version)
steam_api.dll.original (backup)
steam_appid.txt
steam_interfaces.txt
steam_settings/
├── account_name.txt
├── language.txt
└── steam_appid.txt

Terminal output when launching:

text

BinkOpen( x:\games\left 4 dead 2\left4dead2\media\valve.bik )
BinkOpen( x:\games\left 4 dead 2\left4dead2\media\l4d2_intro.bik )
Loading unsigned module client.dll
Access to secure servers is disabled.
Loading unsigned module server.dll
Access to secure servers is disabled.
Game.dll loaded for "Left 4 Dead 2"
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit

Then the Steam error popup appears

What confuses me:

  • The game seems to initialize (loading videos, game modules) before the Steam error hits
  • The steam_interfaces.txt was generated correctly from the original DLL
  • No Goldberg-related messages appear in the log (should it print something when loading?)
  • The game works on Windows with the same repack
  • Someone explicitly said it "runs flawlessly if emulated with goldberg" but I can't replicate it

Posted Feb 22, 2026, 5:02 PM UTC

11
Loading comments…