-
v0.20250408.0 protectedcc44ec41 · ·
steam-runtime-tools v0.20250408.0 [ Ryan Gonzalez ] * libsteam-runtime-tools: - Implement discovery of OpenXR runtimes (steamrt/tasks#608) - Refactoring * Build system: - Fix UBSan compatibility with GLib toolchain assumptions (steamrt/tasks#677) * Tests: - Factor out code for pretty-printing JSON - Factor out code for comparing strings and showing a line-by-line diff if they are different [ Simon McVittie ] * pressure-vessel: - Make the AT-SPI accessibility bus available inside the sandbox, allowing steamwebhelper and Steam apps/games to communicate with screen readers and other assistive technologies (steamrt/tasks#699) * Diagnostic tools: - Query the supported surface formats for VA-API instead of assuming I420 is supported. Thanks to David Rosca (steamrt/tasks#702, steam-runtime#752) - Clean up allocation and error handling in check-va-api * Documentation: - docs/can-i-use.md: Document some version numbers and features that we can or can't rely on * Tests: - Don't fail when encountering a known issue with the ncurses family, allowing CI testing to be expanded to newer host distributions (steamrt/tasks#341, steamrt/tasks#703) [ Ludovico de Nittis ] * Tests: - CI fixes
-
v0.20250225.0 protectedffd2bb4e · ·
steam-runtime-tools v0.20250225.0 [ Ryan Gonzalez ] * libsteam-runtime-tools: - Add OpenXR architecture name mapping for known architectures (steamrt/tasks#608) [ Simon McVittie ] * libsteam-runtime-tools: - process-manager: Use correct program name instead of hard-coding pv-adverb * pressure-vessel: - Build srt-bwrap with unnecessary options disabled - Automatically discover library dependencies instead of hard-coding what we expect them to be in scout. A benefit of this is that it also makes the relocatable install built on scout smaller, by no longer including unnecessary libraries from libselinux, pcre3 and util-linux (steamrt/tasks#112) - Move non-entry-points into pkglibexecdir with short names. This avoids having them in the PATH where they might be relied on as an "API" by Steam or Steam games, and makes them more distinctive in ps(1) or similar. (steamrt/tasks#669) - Improve support for building a relocatable install on newer base library stacks * s-r-launch-options: - Look for pv-adverb in ${libexecdir} first, falling back to its old location * Build system: - Fix the linker option to select RPATH in preference to RUNPATH - Remove some unnecessary dependency checks * Packaging: - Build pressure-vessel on any suite, removing the special case for scout. Official binary builds continue to be done on scout to minimize the host OS requirements, but this gives us the option to raise host OS requirements to something a little more modern in future. - Improve ability to build on non-x86 * Tests: - Test pressure-vessel on modern Debian releases - Improve parallelization - Build packages on Debian 11 'bullseye', giving us test coverage for an environment that is less specialized than scout (steamrt/tasks#669, steamrt/tasks#679) - Build packages and a relocatable pressure-vessel for aarch64, giving us test coverage for an architecture that doesn't have the biarch special cases that x86 does (steamrt/tasks#669, steamrt/tasks#679)
-
v0.20250217.0 protectedd1250fb4 · ·
steam-runtime-tools v0.20250217.0 [ Simon McVittie ] * libsteam-runtime-tools: - Refactoring (steamrt/tasks#595) - Improve test coverage (steamrt/tasks#595) * pressure-vessel: - Export parent dir of LD_PRELOAD modules, unless it's $HOME. This should make local installations from source of MangoHud and similar modules more reliable (steamrt/tasks#595) - Add STEAM_COMPAT_RUNTIME_SDL2=sdl2-compat, which selects a non-default sdl2-compat if present in the runtime, rather than classic SDL 2. This will not be practically useful until we have a release of soldier and/or sniper that includes a copy of sdl2-compat. (steamrt/tasks#579, steamrt/tasks#573) - Refactoring (steamrt/tasks#595) * s-r-launch-options: - Set SDL_VIDEO_DRIVER (SDL 3) as well as SDL_VIDEODRIVER (SDL 2) - Allow control over SDL dynamic API overrides (steamrt/tasks#579) - Set DEBUG_INVOCATION=1 if extra debug is requested * Build system: - Add convenience files to cross-compile for aarch64, as an example of a non-x86 architecture * Tests: - Add a build pass for aarch64 to the CI - Fix a JSON syntax error in aarch64 test data - Refactoring (steamrt/tasks#595) - Improve coverage (steamrt/tasks#595) - Fix a wrong assertion which only worked as a result of compensating errors (steamrt/tasks#595) [ Ryan Gonzalez ] * libsteam-runtime-tools: - Refactoring (steamrt/tasks#608)
-
v0.20250122.0 protectedda9c84f0 · ·
steam-runtime-tools v0.20250122.0 * Tests/CI: - Don't fail testing if libgbm.so.1 is incomplete (steamrt/tasks#647)
-
v0.20250116.0 protected19a5bfd9 · ·
steam-runtime-tools v0.20250116.0 * SteamLinuxRuntime family: - Always generate ./run (steamrt/tasks#634) - Only generate ./run-in-SUITE for branches with a backwards-compatibility requirement for it to exist * Tests/CI: - meson: Add pkg-config field next to deprecated pkgconfig
-
v0.20250107.0 protected8c49613f · ·
steam-runtime-tools v0.20250107.0 [ Timothee Besset ] * steamwebhelper support scripts: - If we cannot detect the uncompressed size, guess 250M for the purposes of block size and progress reporting. This speeds up detection of corrupted archives. (steam-for-linux#11602, steam-runtime-tools!775) [ Simon McVittie ] * log: Treat DEBUG_INVOCATION=1 as equivalent to SRT_LOG=debug * Update libglnx to 2025-01-06 - Fix an assertion failure if creating a parent directory encounters a dangling symlink - Fix compiler warnings with clang 19.1.6 - Fix Meson warnings with Meson 1.1.0 * Documentation updates - In particular, this includes developer documentation for how to launch debugging and development commands outside the SLR container (see docs/slr-for-game-developers.md) [ Ludovico de Nittis ] * Set a default merge request template
-
v0.20241125.0 protected057d8393 · ·
steam-runtime-tools v0.20241125.0 * pressure-vessel: - Generate /etc/passwd, /etc/group for the container. This fixes interoperability with systemd-homed or remote user directories when running games that disregard `$HOME` (ValveSoftware/steam-runtime#705) * Developer/debugging tools: - Make steam-runtime-launch-options work as intended in the Gamescope session on Steam Deck. Note that it doesn't accept controller input, so it requires using the touchscreen, a touchpad that Steam Input represents as a mouse, or an external USB mouse. (steamrt/tasks#602) - Remove obsolete --directory='' from a debug hint shown by s-r-launcher-service * Documentation improvements
-
v0.20241118.0 protectedf21aab3e · ·
steam-runtime-tools v0.20241118.0 * populate-depot: Set filter_exclusive_priority equal to major version. This allows the Steam client to distinguish between mutually incompatible branches like soldier and sniper, and avoid offering one as a way to run games that expect the other. (steamrt/tasks#597)
-
v0.20241111.0 protectedf7326c8d · ·
steam-runtime-tools v0.20241111.0 * pressure-vessel: - Add a mechanism to set SDL_DYNAMIC_API to force use of the runtime's version of SDL2 in a non-distro-specific way, even in games that have their own bundled or statically-linked SDL2 (as long as it is version ≥ 2.0.2 and the dynapi feature has not been disabled). This can be activated by setting a game's launch options to `STEAM_COMPAT_RUNTIME_SDL2=1 %command%` or by adding `runtime-sdl2` to `STEAM_COMPAT_FLAGS`. (steamrt/tasks#578) - Add an equivalent mechanism for SDL3_DYNAMIC_API, activated via `STEAM_COMPAT_RUNTIME_SDL3=1` or `runtime-sdl3`. This is not practically useful yet, but will become relevant when we start to provide SDL3 in runtimes. (steamrt/tasks#578)
-
v0.20241101.0 protected9d15225e · ·
steam-runtime-tools v0.20241101.0 * pressure-vessel: - Fix setup of VDPAU drivers in the container, which regressed in v0.20231128.0 (steam-runtime-tools!764) - Use host versions of libdrm family if newer, even without an explicit dependency, defending against possible use of dlopen() for these libraries in future Mesa releases (see mesa/mesa!21658) - Share $STEAM_RUNTIME_SCOUT with the container, so that Steam Linux Runtime 1.0 can use it (steamrt/tasks#520) - Update bubblewrap to 0.11.0 + improved logging on error (steamrt/tasks#444) * s-r-dialog: - Prefer to look for s-r-dialog-ui in $STEAM_RUNTIME_SCOUT (steamrt/tasks#520) * Diagnostic tools: - Fix build with Vulkan-Loader 1.3.296 and slightly improve error reporting (steam-runtime-tools!765) * Tree-wide: - Consistently disable GIO modules for any executable with an RPATH, but restore them before steam-runtime-urlopen runs external programs (steamrt/tasks#505) - Documentation updates * tests: - Avoid invalid escape sequences in JSON, avoiding test failures with json-glib 1.10
-
v0.20240916.0 protected3dbde195 · ·
steam-runtime-tools v0.20240916.0 * pressure-vessel: - If using host libxkbcommon, try to use host libxkbcommon-x11 as well (steamrt/tasks#530) - Update libcapsule to 0.20240916.0 + avoid a spurious warning when using the "symbols" comparison order for a library with versioned symbols - Update Flatpak-derived code from 1.15.10 + no functional changes - Update bubblewrap to 0.10.0 + no functional changes in the parts used by pressure-vessel * srt-logger: - Add timestamps in the log file (steamrt/tasks#537) * Library code / tree-wide changes: - Update libglnx to 2024-08-23 - Fix lint warnings in shell/Python scripts
-
v0.20240820.0 protectedd44ee3f2 · ·
steam-runtime-tools v0.20240820.0 [ Ryan Gonzalez ] * steam-runtime-urlopen: - When run inside the scout LD_LIBRARY_PATH runtime, if unable to open the URL via xdg-desktop-portal or Steam fails, fall back to removing the runtime's environment variables and running the system copy of xdg-open if any (steamrt/tasks#489) * srt-run-outside-ldlp: - New tool which can be used in the scout LD_LIBRARY_PATH runtime, to run system commands such as xdg-email without compatibility issues or overhead caused by the runtime or the Steam Overlay (steamrt/tasks#489) [ Simon McVittie ] * Internal changes: - Fix build with glibc 2.39 - Fix build with GLib 2.81.x - srt-run-outside-ldlp: Fix logging issues
-
v0.20240809.0 protectedfae8cd38 · ·
steam-runtime-tools v0.20240809.0 * pressure-vessel: - Treat /var/lib/dbus as a reserved path, fixing an issue where the container runtime would not start if /var/lib was in $XDG_DATA_DIRS and /var/lib/dbus/machine-id on the host was a regular file (steamrt/tasks#493, steam-runtime#688) - Similarly treat /var/run as a reserved path for completeness - Don't share paths with the container just because they appear in $XDG_CONFIG_DIRS or $XDG_DATA_DIRS. This avoids a category of possible regressions similar to steam-for-linux#10789 and steam-runtime#688. If additional shared paths are required, advanced users can still add them to PRESSURE_VESSEL_FILESYSTEMS_RO or PRESSURE_VESSEL_FILESYSTEMS_RW as before. (steamrt/tasks#493) * steam-runtime-launch-options (developer tool): - Accept reaper and steam-launch-wrapper in either order (steamrt/tasks#266) - Switch to user-specified LDLP runtime before running reaper and/or steam-launch-wrapper (steamrt/tasks#489)
-
v0.20240806.0 protected5373a586 · ·
steam-runtime-tools v0.20240806.0 [ Simon McVittie ] * pressure-vessel: - Update libcapsule to 0.20240806.0 + Always rewrite the symlink target, fixing a regression on NixOS (steam-runtime#684) + Improve consistency of capsule-capture-libs diagnostic messages - If running under srt-logger ≥ 0.20240726.0, mark each diagnostic message from capsule-capture-libs with its severity - Silence a spurious warning for libnvidia-pkcs11 on Ubuntu 24.04 (steamrt/tasks#488) * SteamLinuxRuntime 1.0: - Update fallback code path to account for changes in the Steam client since May 2024 (steamrt/tasks#490) [ Ryan Gonzalez, Simon McVittie ] * srt-logger: - Avoid reopening log file unnecessarily, fixing a regression in 0.20240805.0 (steamrt/tasks#487)
-
v0.20240805.0 protectede8fe550f · ·
steam-runtime-tools v0.20240805.0 [ Simon McVittie ] * pv-runtime: - Don't import host CA certificates when running under Snap (steamrt/tasks#416, workaround for canonical/steam-snap#397) [ Ryan Gonzalez ] * srt-logger: - Reopen output log files if they get deleted or replaced, for example by a developer wanting to clear out old logs before reproducing an issue (steamrt/tasks#487) -- Simon McVittie <smcv@collabora.com> Mon, 05 Aug 2024 19:11:13 +0100
-
v0.20240802.0 protected4b62f232 · ·
steam-runtime-tools v0.20240802.0 * pressure-vessel: - Add a mechanism to take CA certificates from the host (steamrt/tasks#416) - Update Flatpak-derived files from 1.15.9 * srt-logger: - Avoid using buggy g_log_writer_is_journald() implementation in GLib 2.58.x, fixing automatic redirection of messages to the Journal (steamrt/tasks#461) * all tools: - Apply steamrt/tasks#481 workaround globally, so that we can rely on it everywhere
-
v0.20240726.0 protectedd8cf3907 · ·
steam-runtime-tools v0.20240726.0 * all tools: - Optionally prepend a priority level marker to each diagnostic message (steamrt/tasks#444) * srt-logger: - Add an early call to g_ascii_strtoull() to avoid an apparent GLib bug (steamrt/tasks#481) - Propagate error message, if any, through _srt_syslog_level_parse * tests: - Add sample code to print GLib messages with a priority prefix (steamrt/tasks#444) - Add test coverage for _srt_syslog_level_parse() (steamrt/tasks#481)
-
v0.20240725.0 protecteda8aa736c · ·
steam-runtime-tools v0.20240725.0 [ Simon McVittie ] * pressure-vessel: - Try to provide /usr/${LIB}/gconv in the container. This fixes 64-bit games' use of iconv, and therefore indirectly Easy Anti-Cheat, on Void Linux (steamrt/tasks#477, ValveSoftware/steam-runtime#680) - Don't warn if library aliases are missing from secondary architectures (steamrt/tasks#367) [ Ryan Gonzalez ] * srt-logger: - Add --parse-level-prefix option to parse systemd-cat-style priority level prefixes (steamrt/tasks#444) - New --default-level option sets the log priority to be assumed for lines that do not have a prefix (or for all lines if --parse-level-prefix is not used), defaulting to INFO - New --file-level, --journal-level, --terminal-level options limit the messages logged to each destination. By default all messages go to the log file, and to the Journal if used. By default messages of INFO level or higher go to the terminal (therefore DEBUG messages are excluded). - Color messages that are logged to the terminal based on their level, similar to journalctl
-
v0.20240718.0 protectedbcbaa0e4 · ·
steam-runtime-tools v0.20240718.0 [ Simon McVittie ] * srt-logger: - Don't set SRT_LOG_TO_JOURNAL if there are other log destinations (steamrt/tasks#466) - Add --sh-syntax, which reports whether the logger has started successfully and provides environment variables in sh(1) syntax (steamrt/tasks#460, steamrt/tasks#461) - Add --background, which should be used when combining srt-logger with a subreaper (steamrt/tasks#460) - Add ${pkglibexecdir}/logger-0.bash, a convenience binding for use in bash scripts (steamrt/tasks#461) * s-r-dialog-ui: - Try to use the "GoNotoKurrent" fonts provided by the Steam UI for better glyph repertoire, falling back to the system sans-serif font if those are not available (steamrt/tasks#462) * s-r-launch-options: - Remove support for obsolete Steam Runtime 1½ 'heavy' * pressure-vessel: - Avoid spurious warnings about masking /etc/vulkan/*.d - Update Flatpak-derived code to Flatpak 1.15.8 * build: - Remove support for obsolete Steam Runtime 1½ 'heavy' - Require GLib 2.58.x. We now have a backport of GLib 2.58.x in Steam public betas' version of Steam Runtime 1 'scout', and the same version is bundled with relocatable pressure-vessel releases. Users of `build-aux/many-builds.py` will need to run `build-aux/many-builds.py deps` to download the new scout release before they can continue to compile steam-runtime-tools. - debian: Require SDL2_ttf for all packaged builds * documentation: - Mostly stop mentioning obsolete Steam Runtime 1½ 'heavy' * tests: - Expand test data for game controllers (steamrt/tasks#287) [ Ryan Gonzalez ] * srt-logger: - Preparations for passing through priority prefixes to the systemd Journal (steamrt/tasks#444)
-
v0.20240610.0 protectedb9823992 · ·
steam-runtime-tools v0.20240610.0 * srt-logger: - Avoid delay when copying log messages to the terminal (steamrt/tasks#447) - Improve error handling - Don't close standard file descriptors if given e.g. --journal-fd=2 - More consistently take the Journal code path if stderr is the Journal - Improve test coverage