ARR

Steam Deck notes

Posted on Nov 6, 2022

Some notes put together through use of the Steam Deck.

System password

In case anyone isn’t familiar with changing user passwords on most Linux/Unix systems:

By default, the deck user doesn’t have a password set, meaning you can’t perform any tasks requiring sudo privileges.

To enable, simply open the terminal and type passwd. You’ll then be prompted to create a new password. Sorted!

% passwd

Screen lock

Note that you’ll have to set a password for the deck user (or any other user you may have set up) before doing this.

  • Navigate to Workspace > Workspace Behavior > Screen Locking
  • Check “Lock screen automatically” and set to 10 minutes
  • Check “After waking from sleep” and apply changes.
  • Press the power button once, let the screen turn off, then press it again to show the lock screen.

The native virtual keyboard doesn’t work when pressing STEAM + X, so if you want to unlock when there isn’t a physical keyboard available, you’ll have to install qt5-virtualkeyboard.

Someone has put together a shortcut to lock the screen as Super + L doesn’t work as expected. Right now, I’m comfortable with continuing to use the power button to lock the screen.

On-screen keyboard

Via github, this seems the best option for enabling the virtual keyboard for use when unlocking the Deck in desktop mode.

Note that you’ll have to do this after major system updates due to any changes in the system partition being wiped.

I’ve placed this in ~/data/bin/steam-deck-osk.sh.

#!/usr/bin/env bash                                            
                                                                                                                              
# This does initial customization for Steam Deck for initial setup / post update config                                       
# After each major system update, this needs to be re-run as the system partition is wiped in the process                     
# Worth checking back after each update to see if the OS has been updated to include this by default, however
                                                               
echo "Setting file system to writable"                
sudo steamos-readonly disable                                                                                                 

echo "Initializing Pacman"                                                                                                    
sudo pacman-key --init                                                                                                        
sudo pacman-key --populate     
sudo pacman -Syu                                               
                                                                                                                              
echo "Installing on-screen keyboard"                                                                                          
sudo pacman -S qt5-virtualkeyboard --noconfirm                                                                                
                                                               
echo "Setting file system back to read-only"                   
sudo steamos-readonly enable

SSH

Note that you’ll have to set a password for the deck user (or any other user you may have set up) before doing this.

SSHD comes installed on the Steam Deck, but isn’t enabled by default. To run just the once:

% sudo systemctl start sshd

If you want to have running permanently instead:

% sudo systemctl enable --now sshd

Next..

There are some things I’d like to try/investigate just because that I’ll need to test first in case it breaks anything. Steam Deck’s OS is tied to some specific defaults that may not play nicely with being switched about. Just nice to have/experiment with.

  • Switch to i3 in place of KDE (ooohh looks like someone has already done this)
  • Create a user separate from the deck account - this isn’t possible without breaking steam integration, as far as I can tell
  • Try different operating systems using the SD slot
  • How best to backup? Games look to be installed in ~/, using rsync to send that to another device should
  • Distrobox - Have this running using the official distrobox guide
  • Document using Ansible to spin up distrobox containers