This got resolved in NixOS by https://github.com/NixOS/nixpkgs/pull/189961.
For everyone not using NixOS, but still running steam inside a container environment, it can be fixed by setting the environment variable SDL_JOYSTICK_DISABLE_UDEV=1, which forces SDL to use inotify instead of udev (which is unreliable inside containers) for discovering joysticks.
Because this is not an error on Steam’s side, I think this issue can be closed, @kisak-valve .
This also applies to the related issue #7746.
Closing per the last comment.
Just for posterity, I recently got the same issue in my Laptop running Arch Linux. Weirdly enough, my PC running the same sytem is fine. Adding the same env variable fixed the issue.
SDL_JOYSTICK_DISABLE_UDEV=1`,x1 2022-09
Your system information
Please describe your issue in as much detail as possible:
Xbox controllers are not recognized by Steam unless they are present before Steam is started. If an Xbox controller disconnects, Steam must be fully restarted before it will be recognized by Steam or games again. I'm on Gnome Wayland and use an Xbox One controller connected to a Microsoft dongle via xow. Steam Controllers connected via the dongle and a PS4 controller connected via Bluetooth are hotplugging fine.
Steps for reproducing this issue: