A curated list of tricks to run linux games without XWayland
| Game | Wayland | Engine | Info |
|---|---|---|---|
| Aragami | ❌ | Unity | SDL2: crash |
| Awaria | 🟡 | Unity | SDL2: preload, download the game from itch.io ,screenshot |
| Alien Isolation | 🟡 | Cathode | SDL2: preload, screenshot |
| Baba Is You | ❌ | Multimedia Fusion 2 | SDL2: crash |
| Balatro | ❌ | Wine wayland, screenshot | |
| Bastion | 🟡 | FNA-XNA | SDL2 preload mouse KO, xbox pad OK |
| BattleBlock Theater® | 🟡 | - | SDL2 preload, Screenshot |
| Besiege | ❌ | Unity | SDL2 : no effect |
| BioShock Infinite | 🟡 | Unreal Engine 3 | SDL2 preload |
| BIT.TRIP Presents... Runner2: Future Legend of Rhythm Alien | ❌ | - | SDL2: crash |
| Black Mesa | 🟡 | Source | SDL2 preload |
| Borderlands 2 | ❌ | Unreal Engine 3 | SDL2: error |
| Celeste | 🟡 | FNA-XNA | SDL2 preload, screenshot |
| Clone Hero | 🟡 | Unity | SDL2 preload, screenshot |
| Chess | ✅ | Install from flatpak | |
| Chivalry: Medieval Warfare | 🟡 | Unreal Engine 3 | SDL2 preload mouse KO |
| Cities: Skylines | ❌ | Unity | launcher fail to start game |
| Counter-Strike | 🟡 | GoldSource | SDL2 preload, screenshot |
| Counter-Strike: Source | 🟡 | Source | SDL2 preload, screenshot |
| Counter-Strike: Global Offensive | 🟡 | Source | SDL2 preload |
| Counter-Strike: 2 | 🟡 | Source 2 | SDL2 preload |
| Crusader Kings II | ❌ | Clausewitz Engine | SDL2: crash |
| Day of Infamy | 🟡 | Source | SDL2 preload |
| DDNet | ✅ | Install from flatpak, Screenshot | |
| Dead Cells | 🟡 | Heaps | See |
| Deus Ex: Mankind Divided | ❌ | Dawn Engine | SDL2: No visible window |
| DiRT Rally | ❌ | Ego Engine | SDL2: No visible window |
| Distance | ❌ | - | SDL2 : no effect |
| Doom | ✅ | Doom | Get GZDoom, screenshot |
| Dreamfall Chapters | ❌ | Unity | SDL2 : no effect |
| Euro Truck Simulator 2 | ❌ | Prism3D | SDL2 : no effect |
| Europa Universalis IV | ❌ | Clausewitz Engine | SDL2: crash |
| EVERSPACE™ | ❌ | Unreal Engine 4 | SDL2: crash |
| Factorio | 🟡 | - | SDL2 preload |
| fault - milestone one | 🟡 | Ren'Py | SDL2 preload |
| FEZ | 🟡 | FNA-XNA | SDL2 preload |
| Five nights at Freddy's 1 | ❌ | Clickteam | Works with wine wayland driver, screenshot |
| Five nights at Freddy's 2 | ❌ | Clickteam | Works with wine wayland driver, screenshot |
| Five nights at Freddy's 3 | ❌ | Clickteam | Works with wine wayland driver, screenshot |
| Five nights at Freddy's 4 | ❌ | Clickteam | Works with wine wayland driver, screenshot |
| From the Depths | ❌ | - | SDL2: No visible window |
| Friday night funkin' | 🟡 | - | SDL2 preload, screenshot |
| FTL: Faster Than Light | ❌ | - | SDL2 : no effect |
| Game Dev Tycoon | ❌ | NW.js | SDL2 : no effect |
| Garry's Mod | 🟡 | Source | SDL2 preload |
| Gear Up | ❌ | - | SDL2 : no effect |
| Grand Theft Auto IV | ❌ | RAGE | Got it running with proton-tkg + wine wayland driver, screenshot |
| Guns of Icarus Online | ❌ | Unity | SDL2 : no effect |
| Half Life | 🟡 | Gold Source | SDL: preload, screenshot |
| Hearts of Iron IV | ❌ | Clausewitz Engine | launcher fail to start game |
| Helltaker | ❌ | Unity | SDL2 preload doesn't work, probably because the unity version of the game is old |
| HITMAN™ | ❌ | - | SDL2: No visible window |
| Hollow Knight | ❌ | Unity | SDL2: No visible window |
| Iconoclasts | ❌ | Construct 3 | SDL2 : no effect |
| Indivisible | 🟡 | - | SDL2 preload |
| Insurgency | 🟡 | Source | SDL2 preload |
| ISLANDERS | ❌ | Unity | SDL2: crash |
| Kerbal Space Program | ❌ | Unity | SDL2: crash |
| Keypunch | ✅ | Install from flatpak | |
| Left 4 Dead 2 | 🟡 | Source | SDL2 preload, screenshot |
| Life is Strange - Episode 1 | ❌ | Unreal Engine 3 | SDL2: crash |
| Life is Strange 2 | 🟡 | Unreal Engine 4 | SDL2 preload |
| Life is Strange: Before the Storm | ❌ | Unity | SDL2: No visible window |
| Mad Max | ❌ | Apex Engine | SDL2: No visible window |
| Metro 2033 : Redux | ❌ | 4A Engine | SDL2 : OpenGL 4.0 or later has not been found |
| Metro Last Light : Redux | ❌ | 4A Engine | SDL2 : OpenGL 4.0 or later has not been found |
| Minecraft | 🟡 | LWJGL | Your launcher needs to support the use of system libs / Your glfw pkg must be 3.4 or higher, Screenshot |
| Mini Metro | ❌ | Unity | SDL2: crash |
| Momodora: Reverie Under The Moonlight | ❌ | GameMaker Studio | SDL2 : no effect |
| Northgard | ❌ | - | SDL2: crash |
| Oaken | 🟡 | Unity | SDL2: preload, screenshot |
| Osu! | ✅ | Use the flatpak, screenshot | |
| PAYDAY 2 | ❌ | Diesel Engine | SDL2: crash |
| Plants vs Zombies: Replanted | ❌ | Frostbite engine | Proton wayland, screenshot |
| Plants vs Zombies: Garden Warfare 2 | ❌ | Frostbite engine | Proton wayland, screenshot |
| Portal | ❌ | Source | SDL2: logo and crash |
| Portal 2 | 🟡 | Source | SDL2 preload |
| Phoenix Wright: Ace Attorney Trilogy | ❌ | Play android version via waydroid, screenshot | |
| PokeMMO | 🟡 | GLWF | Need a newer version of GLWF, use the Flatpak version and remove the x11 permission |
| Project Zomboid | LWJGL | XWayland: compatibility mode | |
| Robocraft | ❌ | Unity | SDL2: No visible window |
| Roblox | ✅ | Use sober to play, screenshot | |
| ReIII | 🟡 | RAGE | Game uses glfw for windowing soo all you need to do is compile with wayland support (Couldn't find a binary that has wayland support enabled) |
| ReVC | 🟡 | RAGE | Game uses glfw for windowing soo all you need to do is compile with wayland support (Couldn't find a binary that has wayland support enabled) |
| Rocket League® | 🟡 | Unreal Engine 3 | SDL2 preload Native RL deprecated, for online game need Proton/RocketLeague |
| Saints Row IV | 🟡 | - | SDL2 preload |
| Saints Row: The Third | 🟡 | - | SDL2 preload |
| Seers Isle | ❌ | - | XWayland crash |
| Shadow of the Tomb Raider | 🟡 | - | SDL2 preload |
| Space Cadet | ✅ | Install the flatpak | |
| Speedrunners | 🟡 | FNA-XNA | SDL2 preload, screenshot |
| Splitgate | 🟡 | Unreal Engine 4 | SDL preload, screenshot |
| Super Mario 64 | ✅ | - | SDL2 preload, The fanmade pc port |
| Synergy | 🟡 | Source | SDL2 preload, screenshot |
| Shan Gui (山桂) | ❌ | - | XWayland crash |
| Shank 2 | 🟡 | - | SDL2: Preload, screenshot |
| Sid Meier's Civilization® V | ❌ | Gamebryo | SDL2: crash |
| Snow Light | ❌ | - | SDL2: logo and crash |
| Solitaire | ✅ | - | Install from flatpak |
| Sonic Unleashed | ✅ | - | Install from flatpak, screenshot |
| Sound of Drop - fall into poison - | 🟡 | - | SDL2 preload |
| Star Conflict | ❌ | Hammer Engine | SDL2: crash |
| Stellaris | ❌ | Clausewitz Engine | SDL2: crash |
| Super Meat Boy | 🟡 | SDL2: preload, screenshot | |
| Tabletop Simulator | 🟡 | - | Need SDL_DYNAMIC_API and SDL_VIDEODRIVER |
| Terraria | 🟡 | FNA-XNA | SDL2 preload mouse KO |
| Team Fortress 2 | 🟡 | Source | SDL2 preload, screenshot |
| The Coma: Recut | ❌ | - | SDL2: crash |
| The Witcher 2: Assassins of Kings Enhanced Edition | 🟡 | REDengine | SDL2 preload need mouse border calibration |
| Tomb Raider | ❌ | - | SDL2: No visible window |
| Transistor | ❌ | - | SDL2: logo and crash |
| Unturned | ❌ | Unity | SDL2: crash |
| VA-11 Hall-A: Cyberpunk Bartender Action | ❌ | GameMaker Studio | SDL2 : no effect |
| VirtuaVerse | 🟡 | Unity | Need SDL_DYNAMIC_API and SDL_VIDEODRIVER |
| War Thunder | ✅ | - | Use the flatpak |
| We. The Revolution | ❌ | - | SDL2: No visible window |
| Whispering Willows | ❌ | Unity | SDL2: crash |
| XCOM® 2 | ❌ | Unreal Engine 3 | SDL2: crash |
| Code | Meaning |
|---|---|
| ✅ | The linux port runs on Wayland natively without any configuration. |
| 🟡 | The linux port can work on Wayland natively, but needs some tinkering. |
| ❌ | The linux port either doesn't exist or requires XWayland to run. Try emulating another port of the game. |
| 💩 | There isn't a port of the game that you can emulate without XWayland. |
You need to install the sdl2 package on your distro before doing this.
| Launcher | How to find it |
|---|---|
| Steam | Library > Properties > Launch options > Add environment variables before %command% |
| Lutris | Library > Configure > System options > Environment Variables |
| Heroic game Launcher | Library > Settings > Environment Variables |
To run an SDL2 application on Wayland, set SDL_VIDEODRIVER=wayland
SDL_DYNAMIC_API override the SDL library used by a particular game. Useful if the game use a old version without Wayland support.
Fedora, Arch: SDL_DYNAMIC_API=/usr/lib64/libSDL2-2.0.so
Flatpak: SDL_DYNAMIC_API="/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0"