ddwangnz, I had a similar issue on the raspberry pi 4. Had to perform the extraction and mounting of the img on another Ubuntu/linux box (vm or otherwise).
Running this on a raspberry pi fails with an error "failed to add service - already in use?". Based on the FAQ/Support thread over at steam forums, here is what it says
* Running on the console on Debian Buster isn't supported, the graphics device isn't available for EGL context creation. Try running under X11 instead.
Steam Link Raspberry Pi Troubleshooting :: Steam Link Raspberry Pi
yeah ive been scratching my head over this but managed to get at least abit further but just having issues with eg something after making sure i disabled the line mentioned in the previous posts to get it working but im wondering if its QT at this point not being compiled correctly for the rpi 4's gpu....i really want this going instead of having to use raspbian as my media centre os aswell as i think something barebones would be better imo but it also creates headaches, even going the docker route failed me too so hmm
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/storage/steamlink/.tmp/runtime-root'
Unable to query physical screen size, defaulting to 100 dpi.
To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
INFO: Couldn't open /storage/.local/share/Valve Corporation/SteamLink/streaming_settings.bin for reading
INFO: Couldn't open /storage/.local/share/Valve Corporation/SteamLink/client_id_map.txt for reading
INFO: Couldn't open /storage/.local/share/Valve Corporation/SteamLink/speaker_configuration.txt for reading
INFO: Warning: Couldn't set IPV6_ADD_MEMBERSHIP on discovery network socket
"No carrier"
Steam Link UI desktop resolution 3840 x 2160 coordinate scale = 2.1
EGL Error : Could not create the egl surface: error = 0x300b