Using Wine Games over Steam Link
2019 Note: This has all been superceded by the excellent Wine support built into the Linux Steam client, called SteamPlay/Proton
I recently bought a Steam Link box to play my games on the TV. I'm a Linux gamer and I use Steam on Linux.
The Steam Link is a really cool little box, but I also use Wine and PlayOnLinux to play Windows games through Steam as well, so how do I get that to play nicely with the Steam Link?
The answer is pretty easily. The Steam Link protocol pretty much streams your desktop, so all you have to do is get Steam for Linux to launch PlayOnLinux (where you've already installed Steam for Windows and your games).
You'll need a start script to change the environment back to something sensible before loading PlayOnLinux. This is because Steam has it's own library folder and changes the LD_LIBRARY_PATH, PATH, SYSTEM_PATH and LD_PRELOAD environment variables.
I made a script that looks like this:
#!/bin/sh env cd /home/robin PATH=$HOME/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games unset LD_PRELOAD unset LD_LIBRARY_PATH unset SYSTEM_PATH /usr/bin/playonlinux --run "Steam"
and saved it as "winesteam" in my $HOME/bin folder, then made it executable. I then went to Games->Add a Non-Steam Game to My Library, then chose "PlayOnLinux" from the list. I right clicked on PlayOnLinux, picked Properties and changed the target from "/usr/bin/playonlinux" to my new script at /home/robin/bin/winesteam
I also have my wine set to use a 1920x1080 desktop to match one of my monitors, otherwise games changing resolutions in fullscreen mess with the Linux desktop. Also note that I have a "Steam" launcher in PlayOnLinux that the script is running on startup - change that to suit your setup.
This works great, I can choose PlayOnLinux from the big picture menu on my Steam Link and play my Windows games over Steam Link from Linux!