Alright, let’s talk about getting Sunshine running on the Steam Deck. It was a bit of a journey, but totally worth it for the sweet, sweet remote play.
First off, I needed to enable developer mode. So, I went to the Steam Deck settings, then ‘System’, and flipped the ‘Enable Developer Mode’ switch. Easy peasy.
Next up, installing Sunshine itself. This isn’t in the Discover store, so I had to get my hands dirty with the command line. I opened up the Konsole app (you can find it in the Application Launcher under ‘System’).
Then, I followed the official Sunshine installation instructions. Basically, it boiled down to adding the Sunshine repo to my package manager and then installing it. The commands looked something like this (but always double-check the official docs, things change!):
sudo pacman-key --recv-key 3F49A4985214FEAE
sudo pacman-key --lsign-key 3F49A4985214FEAE
echo -e "[openhd]nServer = */arch/$arch" sudo tee -a /etc/*
sudo pacman -Sy sunshine
After that, I had to configure Sunshine. This part was a bit fiddly. Sunshine creates a default config file, but you usually need to tweak it. The config file location is somewhere like ~/.config/Sunshine/*
. I had to set a password, mess with the resolution settings to match my display, and add the games I wanted to stream.
Adding games is pretty straightforward. You basically tell Sunshine the path to the executable. You can add non-Steam games this way too, which is awesome.
Then comes the fun part: actually running Sunshine! Just type sunshine
in the Konsole. It should start up and tell you the IP address and port it’s listening on. Make sure your Steam Deck and the device you want to stream to are on the same network.
On my client device (phone/laptop), I used Moonlight to connect to Sunshine. I typed in the IP address of my Steam Deck, Moonlight found Sunshine, and then asked me for the PIN that Sunshine displayed on the Deck. Boom! Connected.
Of course, it wasn’t quite that smooth. I ran into a couple of snags. First, my firewall was blocking the connection. I had to open up the necessary ports in the Steam Deck’s firewall using sudo ufw allow [port number]
for the ports Sunshine was using. Another issue was that Sunshine wasn’t picking up my controller inputs correctly. I had to fiddle with the controller settings in the Sunshine config file until everything worked.
Overall, it took a couple of hours of tinkering, but now I can stream my games from my Steam Deck to any device on my network. Totally worth the effort!
Things I learned:
- Always double-check the official documentation. Things change!
- Firewalls are annoying but necessary.
- Don’t be afraid to get your hands dirty with the command line.