From 49b853f28723bbf7b28f7ce6ec9e2bce72a45a8a Mon Sep 17 00:00:00 2001 From: Simon McVittie <smcv@collabora.com> Date: Wed, 27 Jan 2021 13:42:35 +0000 Subject: [PATCH] system-info: Record environment variables that influence SDL, Wine, Steam Inspired by <https://github.com/ValveSoftware/steam-runtime/issues/357> which turned out to be a distro patch from a version of Slackware that didn't support PulseAudio, forcing SDL to use ALSA even though the user had upgraded to a version of Slackware that *does* support PulseAudio. Various environment variables set by the Steam package on Flathub are also included. Signed-off-by: Simon McVittie <smcv@collabora.com> --- steam-runtime-tools/system-info.c | 73 ++++++++++++++++++++++++++++++- 1 file changed, 72 insertions(+), 1 deletion(-) diff --git a/steam-runtime-tools/system-info.c b/steam-runtime-tools/system-info.c index d340bd6ff..6d287dac0 100644 --- a/steam-runtime-tools/system-info.c +++ b/steam-runtime-tools/system-info.c @@ -3369,19 +3369,90 @@ ensure_driver_environment (SrtSystemInfo *self) GRegex *regex; gchar **env_list = self->env; /* This is the list of well-known driver-selection environment variables, - * plus __GLX_FORCE_VENDOR_LIBRARY_%d that will be searched with a regex */ + * plus __GLX_FORCE_VENDOR_LIBRARY_%d that will be searched with a regex. + * Please keep in LC_ALL=C alphabetical order. */ static const gchar * const drivers_env[] = { + "ALSA_CONFIG_PATH", + "AUDIODEV", + "DISPLAY", "DRI_PRIME", "EGL_PLATFORM", + "GST_PLUGIN_SYSTEM_PATH", "LD_LIBRARY_PATH", "LD_PRELOAD", "LIBVA_DRIVER_NAME", + "MESA_GLSL_CACHE_DIR", "MESA_LOADER_DRIVER_OVERRIDE", "MESA_VK_DEVICE_SELECT", + "MIDIDEV", + "SDL_ACCELEROMETER_AS_JOYSTICK", + "SDL_AUDIODRIVER", + "SDL_AUDIO_CHANNELS", + "SDL_AUDIO_DEVICE_NAME", + "SDL_AUDIO_FORMAT", + "SDL_AUDIO_FREQUENCY", + "SDL_AUDIO_SAMPLES", + "SDL_AUTO_UPDATE_JOYSTICKS", + "SDL_DYNAMIC_API", + "SDL_ENABLE_STEAM_CONTROLLERS", + "SDL_FRAMEBUFFER_ACCELERATION", + "SDL_GAMECONTROLLERCONFIG", + "SDL_GAMECONTROLLERCONFIG_FILE", + "SDL_GAMECONTROLLERTYPE", + "SDL_GAMECONTROLLER_ALLOW_STEAM_VIRTUAL_GAMEPAD", + "SDL_GAMECONTROLLER_IGNORE_DEVICES", + "SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT", + "SDL_JOYSTICK_DEVICE", + "SDL_JOYSTICK_DISABLE_UDEV", + "SDL_JOYSTICK_HIDAPI", + "SDL_JOYSTICK_HIDAPI_PS4", + "SDL_JOYSTICK_HIDAPI_PS5", + "SDL_JOYSTICK_HIDAPI_STEAM", + "SDL_JOYSTICK_HIDAPI_SWITCH", + "SDL_JOYSTICK_HIDAPI_XBOX", + "SDL_OPENGLES_LIBRARY", + "SDL_OPENGL_ES_DRIVER", + "SDL_OPENGL_LIBRARY", + "SDL_PATH_DSP", + "SDL_RENDER_DRIVER", + "SDL_RENDER_LOGICAL_SIZE_MODE", + "SDL_RENDER_OPENGL_SHADERS", + "SDL_RENDER_SCALE_QUALITY", + "SDL_RENDER_VSYNC", + "SDL_VIDEODRIVER", + "SDL_VIDEO_ALLOW_SCREENSAVER", + "SDL_VIDEO_DOUBLE_BUFFER", + "SDL_VIDEO_EGL_DRIVER", + "SDL_VIDEO_EXTERNAL_CONTEXT", + "SDL_VIDEO_GL_DRIVER", + "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS", + "SDL_VIDEO_WAYLAND_WMCLASS", + "SDL_VIDEO_X11_FORCE_EGL", + "SDL_VIDEO_X11_LEGACY_FULLSCREEN", + "SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR", + "SDL_VIDEO_X11_NET_WM_PING", + "SDL_VIDEO_X11_VISUALID", + "SDL_VIDEO_X11_WINDOW_VISUALID", + "SDL_VIDEO_X11_WMCLASS", + "SDL_VIDEO_X11_XINERAMA", + "SDL_VIDEO_X11_XRANDR", + "SDL_VIDEO_X11_XVIDMODE", + "SDL_VULKAN_DISPLAY", + "SDL_VULKAN_LIBRARY", + "SDL_X11_XCB_LIBRARY", + "SDL_XINPUT_ENABLED", + "SSL_CERT_DIR", + "STEAM_RUNTIME_PREFER_HOST_LIBRARIES", "VDPAU_DRIVER", "VK_ICD_FILENAMES", "VK_LAYER_PATH", + "WAYLAND_DISPLAY", + "WINEESYNC", + "WINEFSYNC", + "WINE_FULLSCREEN_INTEGER_SCALING", + "WINE_HIDE_NVIDIA_GPU", + "XDG_RUNTIME_DIR", "__EGL_VENDOR_LIBRARY_DIRS", "__EGL_VENDOR_LIBRARY_FILENAMES", "__GLX_VENDOR_LIBRARY_NAME", -- GitLab