HomeKit Steam User Switcher
This script exposes a virtual HomeKit Television accessory where each input corresponds to a Steam user. Selecting an input updates the Steam’s AutoLoginUser; turning the "TV" off restarts Steam.
Why
We regularly game on a headless machine and wanted to switch Steam users easily without fiddling with a KVM. HomeKit provides a convenient way to control devices, and by exposing Steam user accounts as HomeKit inputs, we can seamlessly switch users with our existing HomeKit setup and even set up personalized scenes.
What it does
HomeKit Television service (Active + ActiveIdentifier)
Inputs are Steam users (PersonaName as label, AccountName as slug)
When you switch input, AutoLoginUser is set accordingly
When you turn the TV off, Steam is restarted (killall steam)
Pairing/state stored under XDG state: ~/.local/state/homekit-steam-user-switcher/
... continue reading