This seemed harder than it should be.
First I created a new user for Steam with appropriate permissions.
sudo useradd --user-group --create-home --shell /bin/false grencez-for-games # Give permission to play sound. sudo usermod -a -G audio grencez-for-games
Next create a
/etc/sudoers.d/grencez-for-games file with the line:
grencez ALL=(grencez-for-games) NOPASSWD: ALL
This allows me to run Steam as that user without entering a password:
sudo -u grencez-for-games -- steam
Though, you may need to add the new user to xhost permission for that to work:
# Show authorized clients. xhost # Add local grencez-for-games user as authorized client. xhost +SI:localuser:grencez-for-games
For PulseAudio, you sometimes need to point the game user at your normal user’s session.
export PULSE_COOKIE=/home/grencez/.pulse/cookie export PULSE_SERVER=unix:/run/user/$UID/pulse/native
Then I enabled Proton in Steam Play.
It gives a lot of errors, but I eventually realized that it requires Vulkan, which was just a matter of installing
media-libs/mesa with the
vulkan USE flag.
I configured both packages to support 32-bit for good measure.
Instead of Vulkan, I could have probably just enabled
$HOME/.steam/steam/steamapps/common/Proton\ 5.0/user_settings.py, which I tried but forgot to rename the
user_settings.sample.py file to
You may want to use a game controller in other games.
I use a Microsoft Xbox 360 controller, which is supported via the
xpad kernel module.
To use it with Steam, give the games user
sudo usermod -a -G input grencez-for-games
In Steam’s general controller settings, you can also disable
Xbox Configuration Support.
This option seems to unnecessarily require Big Picture mode.