Skip to content
Tags give the ability to mark specific points in history as being important
  • v0.20230112.0 protected
    44419123 · Release v0.20230112.0 ·
    Release: v0.20230112.0
    steam-runtime-tools v0.20230112.0
    
      [ Simon McVittie ]
      * scripts: Convert most scripts from bash to the POSIX shell /bin/sh.
        This improves robustness if the bash found in $PATH cannot be run
        in the scout environment, in particular if it was installed via Nix
        and relies on DT_RUNPATH. (steam-runtime#545, steamrt/tasks#209)
      * container-runtime: Remove backwards compatibility with old versions
        of the pressure-vessel/ directory
      * container-runtime: Update documentation to reflect this now being part
        of steam-runtime-tools
    
      [ Ludovico de Nittis ]
      * system-info: Detect when an expected version definition was missing
        from a library, either having different version definitions or being
        completely unversioned (steamrt/steam-runtime-tools#95)
  • v0.20221215.0 protected
    cfe44727 · Release v0.20221215.0 ·
    Release: v0.20221215.0
    steam-runtime-tools v0.20221215.0
    
      * CI fixes only
  • v0.20221208.1 protected
    70fd2457 · Release v0.20221208.1 ·
    steam-runtime-tools v0.20221208.1
    
      * CI: Also make the actual binaries available to debuginfod
  • v0.20221208.0 protected
    e1624826 · Release v0.20221208.0 ·
    steam-runtime-tools v0.20221208.0
    
      * pressure-vessel: Pass through Gamescope's special Wayland display
      * subprojects: Add a copy of the SteamLinuxRuntime scripts.
        This will help us to coordinate changes between steam-runtime-tools and
        SteamLinuxRuntime.
      * CI: Refactoring
      * debian: Stop including redundant source code in
        pressure-vessel-relocatable.deb (if source code is required, use the
        steam-runtime-tools.dsc source package)
  • v0.20221130.0 protected
    e8de4b15 · Release v0.20221130.0 ·
    Release: v0.20221130.0
    steam-runtime-tools v0.20221130.0
    
      * pressure-vessel: Update Flatpak-derived code to 1.14.1
        * Don't bind-mount /efi into containers, same as /boot
        * Slightly better debug info for failures
        * Use a better XML DOCTYPE for fonts.conf
        - The remaining changes are in code that doesn't get compiled into
          pressure-vessel.
      * pressure-vessel: Update included copy of bubblewrap to 0.7.0
        - Improve error messages
        - The remaining changes are not relevant to pressure-vessel.
      * pressure-vessel: Make sure we don't use bwrap --perms option if we are
        using a system copy of bwrap that doesn't support it
      * s-r-launch-client: Make --version, --list output to standard output
        as intended, not standard error
      * library: Improve logging/debugging support
        - Ensure the three standard file descriptors always point somewhere,
          even if that's /dev/null
        - Send warnings and error messages to the systemd journal (on systems
          where it exists) if they would otherwise go to /dev/null
        - If output is going to the systemd journal, create our own stream so
          that it is labelled correctly
        - pv-wrap: Log more details about the changes made to the runtime to
          create the container's root filesystem
        - pv-wrap, pv-adverb: with SRT_LOG=journal, redirect warnings and
          errors to the systemd journal (output from the actual game is not
          redirected)
        - pv-wrap: With SRT_LOG=overrides, log the full contents of /overrides
          for comparison and debugging
        - pv-wrap: With SRT_LOG=container, log the full contents of the
          container's root filesystem (as modified from the runtime) for
          comparison and debugging
  • v0.20221115.1 protected
    193dfb1f · Release v0.20221115.1 ·
    Release: v0.20221115.1
    steam-runtime-tools v0.20221115.1
    
      * tests: Don't assume /dev/shm is a real directory.
        In older chroot environments it's sometimes a symbolic link to /run/shm.
  • v0.20221115.0 protected
    67ffda59 · Release v0.20221115.0 ·
    steam-runtime-tools v0.20221115.0
    
      [ Ludovico de Nittis ]
      * pv-wrap: Improve path mapping under FEX-Emu or similar emulators
        by distinguishing between paths visible to native code (aarch64)
        and paths visible to emulated code (x86)
    
      [ Simon McVittie ]
      * pv-exports: Treat /run/gfx the same as /run/host
      * pv-wrap: Add --deterministic option to make consecutive logs easier
        to compare with generic diff tools
      * pv-wrap: Make the debug log shorter and easier to compare by omitting
        redundant path segments
      * pv-runtime: Detect some errors that were previously ignored
      * pv-runtime: Improve robustness against crashing if initialization fails
      * pv-locale-gen:
        - Produce less repetitive output
        - Launch a bit faster
        - Give a better hint about why we want a locale
      * pv-adverb: Let missing locales show on stderr.
        This will give users a hint about how they can speed up container setup.
        (Helps: steam-runtime#541)
      * s-r-input-monitor: Sort hidraw and evdev devices "naturally"
      * library code: Add SRT_LOG=TOKEN[,TOKEN...] option to alter how we log.
        Possible values are subject to change, but currently:
        - debug: enables debug and info messages, implied by --verbose or
          PRESSURE_VESSEL_VERBOSE=1
        - diffable: reduces differences between logs (show fewer process IDs,
          etc.), implied by pv-wrap --deterministic
        - info: enables info messages, implied by PRESSURE_VESSEL_LOG_INFO=1
        - pid: force process IDs to be logged, even if diffable was used
        - timestamp: prefix log lines with a timestamp, implied by
          PRESSURE_VESSEL_LOG_WITH_TIMESTAMP=1
        - timing: show the time taken for various operations (performance
          profiling), even if not debugging
      * Update libglnx subproject
        - Use its g_memdup2() backport instead of our own
  • v0.20221014.0 protected
    63ea5340 · Release v0.20221014.0 ·
    Release: v0.20221014.0
    steam-runtime-tools v0.20221014.0
    
      [ Ludovico de Nittis ]
      * pressure-vessel: Add support for FEX-Emu graphics library thunking.
        When emulating x86 on aarch64, FEX-Emu optionally loads thin x86
        graphics driver libraries that make calls into the underlying aarch64
        graphics drivers, instead of implementing the whole user-space part
        of the graphics driver in x86 code that needs to be emulated. To
        make this work as intended, we have to ensure that the search path
        for each of these categories includes both the x86 version from the
        FEX-Emu rootfs and the aarch64 version from the host system:
        - Vulkan drivers and layers
        - EGL drivers and external platforms
        - GLX drivers
        - Mesa DRI drivers
        - VA-API drivers
        Doing this for VDPAU drivers is not currently supported, because VDPAU
        only searches a single directory, not a search path.
      * pv-runtime, pv-graphics-provider: Refactoring to support the above
      * graphics: Refactoring to support the above
    
      [ Ludovico de Nittis, Simon McVittie ]
      * pv-runtime: Capture libudev.so.0 again, but only if the SONAME matches.
        This means we can pick up Arch Linux's libudev.so.0 shim if available,
        but we won't pick up an incorrect libudev.so.0 -> libudev.so.1 symlink
        like the one in ValveSoftware/steam-runtime#533.
    
      [ Simon McVittie ]
      * Update libglnx
        - Make cloning a file consistently seek to the end
        - More backports from newer GLib
      * Tests:
        - Add a script to run the tests in a LD_LIBRARY_PATH environment
      * Adjust for rename of default branch name to main
  • v0.20220927.0 protected
    dac5c19b · Release v0.20220927.0 ·
    Release: v0.20220927.0
    steam-runtime-tools v0.20220927.0
    
      [ Simon McVittie ]
      * pv-runtime: Don't capture libudev.so.0 for now.
        This means we won't use a system copy of libudev0-shim, but avoids
        crashes on systems where libudev.so.0 is incorrectly a symlink to
        libudev.so.1. (steam-runtime-tools#96, ValveSoftware/steam-runtime#533)
      * libcurl-compat: Make it possible for run.sh to activate or deactivate
        the compatibility shim without re-running setup.sh (steamrt/tasks#119)
      * Tests:
        - Improve ability to run tests against the Steam Runtime environment
        - Improve diagnostic output if JSON results differ
    
      [ Ludovico de Nittis ]
      * Tests:
        - Fix an intermittent unit test failure (steamrt/tasks#162)
  • v0.20220919.0 protected
    f1e8b73a · Release v0.20220919.0 ·
    Release: v0.20220919.0
    steam-runtime-tools v0.20220919.0
    
      [ Ludovico de Nittis ]
      * pressure-vessel: If using libudev from the host, provide read-only
        access to /run/udev.
        This is sufficient to identify non-hotplugged game controllers in
        games that use libudev directly (older bundled SDL versions, or not
        using SDL at all).
        - Controller hotplug support continues to require using an up-to-date
          version of SDL or Proton.
        - This is not done for older host OSs (Debian 10, Ubuntu 18.04, etc.)
          because on these older OSs we have to use the container's libudev,
          but the host /run/udev is not necessarily compatible with that.
        (steamrt/tasks#171)
      * tests: Fix test failure with Arch Linux glibc ≥ 2.36-4
    
      [ Simon McVittie ]
      * pv-runtime: Use host's libudev if equal to or newer than container
        libudev, even if no graphics driver depends on it.
        This makes it more likely that we can parse /run/udev.
        (steamrt/tasks#171)
      * tests: Fix test failure with latest Steam Runtime 1 'scout' images
  • v0.20220908.0 protected
    57e16afe · Release v0.20220908.0 ·
    Release: v0.20220908.0
    steam-runtime-tools v0.20220908.0
    
      * libcurl-compat: When building for scout (only), build a shim libcurl
        that can dispatch to runtime or system copies.
        This works around ABI divergence from upstream in the libcurl in
        Debian/Ubuntu between about 2005 and 2018, which unfortunately includes
        the time at which Steam Runtime 1 'scout' started. Additional setup in
        the steam-runtime scripts is necessary to take advantage of this.
        (steamrt/tasks#119)
      * Documentation updates:
        - compat-tool-interface: Non-Steam launch options can have %command% now
        - launch-client, shared-paths: Remove notes about obsolete versions
        - launch-client: Update release status
        - launch-client: Say where to find it
        - launcher-interface-0: Move example to launch-client
      * Tests:
        - Improve support for using the tests "as-installed" to test a proposed
          Steam Runtime
        - generate-sysroots: Avoid using undefined string escape sequences
        - Generalize TAP test template
      * build-aux: Actually use clang for the build labelled "clang"
      * launch-options: Update for steam-launch-wrapper addition to recent betas
  • v0.20220823.0 protected
    c56cb2ec · Release v0.20220823.0 ·
    Release: v0.20220823.0
    steam-runtime-tools v0.20220823.0
  • v0.20220803.0 protected
    7cb0693d · Release v0.20220803.0 ·
    Release: v0.20220803.0
    steam-runtime-tools v0.20220803.0
    
      * pressure-vessel: Share more paths with the container by default
        (steamrt/tasks#149, steam-runtime#334, steam-runtime#393,
        steam-runtime#429, steam-runtime#470, Proton#5102,
        steam-runtime-tools#18)
        - If the user's real home directory is shared with the container,
          also share the typical paths for removable media: /run/media,
          /media, /mnt.
        - If the user's real home directory is shared with the container,
          also share FHS 3.0 top-level directories /home, /opt and /srv.
      * Locally-created top-level directories that don't follow any particular
        specification (for example /storage, /files, /games) continue to not be
        shared by default. They can still be shared by setting the
        STEAM_COMPAT_MOUNTS environment variable.
      * A new document docs/shared-paths.md describes what is and isn't shared.
  • v0.20220802.0 protected
    edc29281 · Release v0.20220802.0 ·
    Release: v0.20220802.0
    steam-runtime-tools v0.20220802.0
  • v0.20220726.0 protected
    d872f39e · Release v0.20220726.0 ·
    Release: v0.20220726.0
    steam-runtime-tools v0.20220726.0
  • v0.20220725.1 protected
    8169d356 · Release v0.20220725.1 ·
    Release: v0.20220725.1
    steam-runtime-tools v0.20220725.1
  • v0.20220725.0 protected
    4fdbcec8 · Release v0.20220725.0 ·
    steam-runtime-tools v0.20220725.0
  • v0.20220624.0 protected
    f2abd60e · Release v0.20220624.0 ·
    Release: v0.20220624.0
    steam-runtime-tools v0.20220624.0
  • v0.20220620.0 protected
    b9599342 · Release v0.20220620.0 ·
    Release: v0.20220620.0
    steam-runtime-tools v0.20220620.0
  • v0.20220601.0 protected
    f30c8094 · Release v0.20220601.0 ·
    Release: v0.20220601.0
    steam-runtime-tools v0.20220601.0