steamrt (1.20260226.0) scout; urgency=medium

  * SDK: Create symlinks /usr/bin/xxd, etc. instead of /bin/xxd,
    avoiding file collisions when using a SDK filesystem with
    pressure-vessel (steamrt/tasks#932)
  * tests: Assert that the Platform and SDK can safely be /usr-merged
    (steamrt/tasks#932)

 -- Simon McVittie <smcv@collabora.com>  Thu, 26 Feb 2026 16:28:56 +0000

steamrt (1.20260218.0) scout; urgency=medium

  * Revert "d/control, d/rules: Provide source compatibility with GLVND
    libgl-dev".
    This turns out not to be compatible with how GL was packaged in
    Ubuntu 12.04.
  * Silence some shellcheck warnings

 -- Simon McVittie <smcv@collabora.com>  Wed, 18 Feb 2026 19:38:56 +0000

steamrt (1.20260112.0) scout; urgency=medium

  * d/control: Add sysv-rc to steamrt-container.
    In scout, sudo cannot be removed unless we have sysv-rc installed.
    Listing it here means we don't need to do the same in flatdeb-steam.
  * steamrt-libs: Be more specific about what we install (steamrt/tasks#856)
  * Platform, SDK: Install hook scripts for non-packaged customizations.
    This avoids having these in flatdeb-steam where their evolution is
    harder to track, and will make it easier to provide a cross-SDK for
    newer runtime branches without duplication. (steamrt/tasks#856)

 -- Simon McVittie <smcv@collabora.com>  Mon, 12 Jan 2026 14:12:28 +0000

steamrt (1.20260106.0) scout; urgency=medium

  * d/control, d/rules: Provide source compatibility with GLVND libgl-dev.
    This should mean we don't need to patch various packages to make their
    dependencies on libgl-dev satisfiable.
  * CI updates

 -- Simon McVittie <smcv@collabora.com>  Tue, 06 Jan 2026 16:28:40 +0000

steamrt (1.20250818.0) scout; urgency=medium

  * steamrt-container: Add steamrt-archive-keyring.
    This will allow us to do a graceful rollover of the archive signing
    key, by setting a new key as trusted during upgrades.
    (steamrt/tasks#751)
  * d/control: Move Toolbx requirements to their own metapackage.
    This makes it a bit more obvious where some of our requirements
    came from. (steamrt/tasks#634)
  * steamrt-container-host-compat: Create a symlink for flatpak-spawn.
    Toolbx wants to have `flatpak-spawn --host` available.
  * Move creation of /etc/krb5.conf.d from steamrt-dev to steamrt-toolbx.
    The original justification for adding this was because Toolbx wants it.
  * d/steamrt-toolbx.dirs, .postinst: Create some empty directories.
    We create /home programmatically rather than by registering it with
    dpkg, since it is outside the package manager's "owned" directories.

 -- Simon McVittie <smcv@collabora.com>  Mon, 18 Aug 2025 19:49:43 +0100

steamrt (1.20250808.0) scout; urgency=medium

  * ABI: Update expectations for GLib 2.58 backport (steamrt/tasks#112)
  * ABI: Update expectations for SDL (steamrt/tasks#707)
  * meson: Add pkg-config field next to deprecated pkgconfig.
    Meson 1.3.0 deprecates pkgconfig, but does not issue a warning if
    both fields are set to the same value, allowing compatibility with
    both older and newer Meson.

 -- Simon McVittie <smcv@collabora.com>  Fri, 08 Aug 2025 18:15:37 +0100

steamrt (1.20241105.0) scout; urgency=medium

  * ABI: Add libpulse-mainloop-glib.so.0 (steamrt/tasks#585)
  * Documentation updates

 -- Simon McVittie <smcv@collabora.com>  Tue, 05 Nov 2024 18:52:03 +0000

steamrt (1.20240321.0) scout; urgency=medium

  * Platform: Add steam-runtime-tools-ui
    (steamrt/tasks#376, steamrt/tasks#421)

 -- Simon McVittie <smcv@collabora.com>  Thu, 21 Mar 2024 18:40:05 +0000

steamrt (1.20240313.0) scout; urgency=medium

  * Platform, LD_LIBRARY_PATH: Add lsof (steamrt/tasks#419)
  * README: De-emphasize historical information
  * README: Update canonical images URL

 -- Simon McVittie <smcv@collabora.com>  Wed, 13 Mar 2024 12:33:28 +0000

steamrt (1.20231003.0) scout; urgency=medium

  * ABI: Expect to use xcrypt for libcrypt.so.1.
    scout is based on Ubuntu 12.04, which used glibc libcrypt.so.1, but that
    could make it break when running against a newer glibc on a host system
    that does not have libcrypt.so.1 (like a default Arch installation).
    Set it up to use a backport of libcrypt1 instead. (steamrt/tasks#332)
  * ABI: Expect GLib to contain g_type_check_instance_is_fundamentally_a().
    (Followup for ValveSoftware/steam-for-linux#10002)
  * ABI: Make glibc comparison order consistent with libcapsule
  * ABI: Make libcrypt comparison order consistent with libcapsule
  * ABI: Load libstdc++.so.6 when testing whether libitm.so.1 can be loaded.
    On Debian, libitm.so.1 is self-contained, but on Arch it has an
    unresolved symbol related to C++ exception handling, which can be
    satisfied by loading libstdc++.so.6.

 -- Simon McVittie <smcv@collabora.com>  Tue, 03 Oct 2023 14:02:59 +0100

steamrt (1.20230912.0) scout; urgency=medium

  * Update documentation for relabelling of SLR compatibility tools
    (steamrt/tasks#320)
  * Depend on a version of libsdl1.2{debian,-dev} where those names have
    been taken over by sdl12-compat
  * d/control, d/rules: Provide compatibility with newer libfreetype
    packaging, making backports more straightforward

 -- Simon McVittie <smcv@collabora.com>  Tue, 12 Sep 2023 21:56:52 +0100

steamrt (1.20230801.0) scout; urgency=medium

  * ABI: Pull in both libudev.so.1 and libudev0-shim (steamrt/tasks#313)
  * ABI: Check for expected ABI of libudev.so.1 and libudev.so.0

 -- Simon McVittie <smcv@collabora.com>  Tue, 01 Aug 2023 17:42:52 +0100

steamrt (1.20230728.0) scout; urgency=medium

  * ABI: Update expected symbols for SDL 2.28.x

 -- Simon McVittie <smcv@collabora.com>  Fri, 28 Jul 2023 13:59:47 +0100

steamrt (1.20230606.0) scout; urgency=medium

  * ABI: Sort extra packages in LC_ALL=C order
  * ABI: Switch to sdl12-compat as our implementation of the SDL 1.2 ABI
    (steamrt/tasks#39)
  * d/control, d/rules: Take over libsdl1.2debian, -dev from src:libsdl1.2.
    Because scout's version of dpkg doesn't support versioned Provides, we
    need to generate transitional packages that will satisfy the versioned
    dependency from libsdl-image1.2 and friends.
    The version number of these transitional packages is carefully chosen
    to make it possible to revert this change by releasing libsdl1.2
    version 1.2.15-5+steamrt1.3 and a corresponding new revision of
    sdl12-compat, if it turns out to have been a larger compatibility break
    than expected.

 -- Simon McVittie <smcv@collabora.com>  Tue, 06 Jun 2023 15:53:17 +0100

steamrt (1.20230426.0) scout; urgency=medium

  * meson: Use binutils 2.35 when using gcc-9 (steamrt/tasks#288)
  * tests: Check that our binutils-2.35 backport works for both amd64
    and i386

 -- Simon McVittie <smcv@collabora.com>  Wed, 26 Apr 2023 12:47:32 +0100

steamrt (1.20230420.0) scout; urgency=medium

  * meson: binutils-2.35 needs -m32 to link i386 code
  * tests: Run all Meson tests, even if one fails

 -- Simon McVittie <smcv@collabora.com>  Thu, 20 Apr 2023 17:35:09 +0100

steamrt (1.20230419.0) scout; urgency=medium

  * README: Improve cross-references
  * README: Mention scout-on-soldier more prominently
  * examples: Consistently respect typical compiler flags.
    This lets us exercise things like -fuse-ld=gold.
  * meson: Use non-deprecated section for built-in options.
    Meson 0.56.0 deprecated use of [properties] for these.
  * meson: Parameterize machine files
  * Add Meson native-file for gcc, for completeness.
    This is the default, but explicit is sometimes better than implicit.
  * tests: Parameterize testing gcc* -m32
  * SDK: Add and smoke-test binutils-2.35 backport (steamrt/tasks#258)
    - meson: Add and test native-file for binutils-2.35
    - meson: Add and test cross-file for using binutils-2.35 with gcc -m32

 -- Simon McVittie <smcv@collabora.com>  Wed, 19 Apr 2023 19:47:11 +0100

steamrt (1.20230323.0) scout; urgency=medium

  * SDK: Improve multiarch coverage (steamrt/tasks#264).
    This moves various -dev packages from steamrt-libdevel-non-multiarch to
    steamrt-libdevel, focusing on those that seem to be related to the Steam
    client itself. Some have been updated with changes backported from
    later Debian releases to be multiarch co-installable, while others were
    already co-installable but had dependencies that were not.
  * README: Fix a typo

 -- Simon McVittie <smcv@collabora.com>  Thu, 23 Mar 2023 18:24:24 +0000

steamrt (1.20230228.0) scout; urgency=medium

  * Update and expand README
  * ABI: Update expected symbols for SDL 2.26.3
  * SDK: Add an autoconf2.69 binary package for command-line compatibility
    with later Debian releases
  * container-host-compat: Add some Provides.
    We want to be able to install clients into the container that would
    ordinarily require a matching service, because in the Steam Runtime
    use-case, we usually expect to get those services' sockets or bus names
    imported into the container by pressure-vessel or Toolbx.
  * container-host-compat: Also conflict with steam-installer
  * container-host-compat: Create xdg-email from a package
  * container: Include libcap2-bin, mount, passwd and sudo for Toolbx support
  * tests: Improve lint scripts
  * CI: Specifically use an x86_64 runner.
    Future-proofing against non-x86 runners maybe becoming available
    (infrastructure/tasks#75).
  * CI: Replace uses of deprecated SteamOS CI image with Steam Runtime 3
    'sniper' and plain Debian

 -- Simon McVittie <smcv@collabora.com>  Tue, 28 Feb 2023 13:02:13 +0000

steamrt (1.20220919.0) scout; urgency=medium

  * d/control: Build an empty usr-is-merged package.
    Some versions of debootstrap want to be able to install this.
    (steamrt/tasks#172)

 -- Simon McVittie <smcv@collabora.com>  Mon, 19 Sep 2022 16:05:44 +0100

steamrt (1.20220908.0) scout; urgency=medium

  * steamrt-legacy, -libs: Depend on libsteam-runtime-shim-libcurl-bin,
    libsteam-runtime-shim-libcurl4.
    This provides the necessary pieces to be able to export both the
    upstream ABI and the historical Debian ABI, enabling newer versions
    of Arch's valgrind to be used in a scout LD_LIBRARY_PATH environment.
    (steamrt/tasks#119)
  * ABI: Update expected SDL symbols to 2.24.0 (steamrt/tasks#114)

 -- Simon McVittie <smcv@collabora.com>  Thu, 08 Sep 2022 14:28:37 +0100

steamrt (1.20220907.0) scout; urgency=medium

  * ABI: Don't treat curl_jmpenv as a public symbol.
    It's present in Debian builds of libcurl, but for some reason not in
    Arch builds, and isn't mentioned in the public header files.
  * tests: Expand g++-9 test coverage to include non-trivial linking.
    We've had issues with std::call_once and the gold linker, so let's
    exercise those in our tests.
    This also asserts that binutils-2.30 is available.

 -- Simon McVittie <smcv@collabora.com>  Wed, 07 Sep 2022 13:45:39 +0100

steamrt (1.20220211.0) scout; urgency=medium

  * ABI: Update expected symbols to include SDL 2.0.20

 -- Simon McVittie <smcv@collabora.com>  Fri, 11 Feb 2022 16:23:18 +0000

steamrt (1.20220202.0) scout; urgency=medium

  * SDK: Stop including pressure-vessel-relocatable.
    We used to install this as part of the circuitous route that
    pressure-vessel took to get into SteamLinuxRuntime releases, but now
    we build standalone pressure-vessel releases from steam-runtime-tools'
    own CI, so this is no longer necessary.

 -- Simon McVittie <smcv@collabora.com>  Wed, 02 Feb 2022 12:25:29 +0000

steamrt (1.20220119.0) scout; urgency=medium

  * SDK: Depend on the packages required by Toolbx (steamrt/tasks#69)
  * SDK: Ensure /etc/krb5.conf.d exists

 -- Simon McVittie <smcv@collabora.com>  Wed, 19 Jan 2022 14:53:57 +0000

steamrt (1.20220105.0) scout; urgency=medium

  * d/rules: Clamp mtime of installed files to changelog date.
    This makes it considerably easier to determine whether refactoring
    is producing identical results, by removing a major source of variation
    from the built binaries.
  * d/rules: Don't install files executable if they don't need to be
  * Use debhelper compat level 9
  * generate-expectations: Make script self-contained.
    This avoids needing to generate the .json version of the ABI data first,
    and ensures that all necessary libraries are present without having
    to run abi/have-all-libraries.py separately.
  * d/rules: Install more declaratively
  * Build using Meson.
    Writing logic in Make can be quite painful, and we have a better build
    system available to us now.
  * tests: Output strict TAP
  * Fix lint warnings
  * d/control: Add Conflicts on mutually-exclusive packages
  * CI: Use a newer Docker image to run lint checks
  * d/README.source: Update documentation for new build system
  * d/README.source: Write down how to test new versions
  * d/README.source: Add details of how this fits into the Steam client
  * d/.gitignore: Update

 -- Simon McVittie <smcv@collabora.com>  Wed, 05 Jan 2022 12:13:50 +0000

steamrt (1.20211206.0) scout; urgency=medium

  * ABI: Add libwebp.so.6
  * SDK: Install libwebp development files.
    Note that this brings libwebpmux and libwebpdemux into the SDK, but
    they are not currently part of the Platform runtime and should not be
    relied on.
  * ABI: Don't check that libedit.so.2 is loadable.
    It's an implementation detail of Mesa rather than something we guarantee.

 -- Simon McVittie <smcv@collabora.com>  Mon, 06 Dec 2021 19:55:12 +0000

steamrt (1.20211126.0) scout; urgency=medium

  * README: Add a policy describing what we can and can't backport
  * ABI: Treat malloc_get_state and malloc_set_state as private.
    These have been deprecated stubs for a long time, and were finally
    removed in glibc 2.34 (which is technically an ABI break, but their only
    user was Emacs, and even that use was extremely questionable).
  * ABI: Treat libedit.so.2 fn_complete2 as private.
    It's in version 3.1-20210910-1, but not mentioned in header files.

 -- Simon McVittie <smcv@collabora.com>  Fri, 26 Nov 2021 17:31:51 +0000

steamrt (1.20210823.0) scout; urgency=medium

  * d/control: Explicitly pull in steam-runtime-tools-minimal.
    If we don't do this, build-runtime.py from steam-runtime will flag it
    as a potentially unintended dependency and break the build.
  * Add a steamrt-ld-library-path metapackage.
    This is mostly for parity with heavy, where steamrt-legacy does not
    exist (it has no legacy compatibility requirements).

 -- Simon McVittie <smcv@collabora.com>  Mon, 23 Aug 2021 15:22:59 +0100

steamrt (1.20210817.0) scout; urgency=medium

  * Update SDL symbol expectations for 2.0.16

 -- Simon McVittie <smcv@collabora.com>  Tue, 17 Aug 2021 16:39:36 +0100

steamrt (1.20210608.0) scout; urgency=medium

  * abi: Populate ABI expectations for libraries that list public symbols
    (T16026)
  * abi: Check that some important or previously problematic libraries
    have all the symbols we expect:
    - glibc
    - libdrm
    - pipewire
    - curl
    - libgcc
    - GLib
    - SDL
    - xcb
    - dbus
    - libedit

 -- Simon McVittie <smcv@collabora.com>  Tue, 08 Jun 2021 13:21:44 +0100

steamrt (1.20210518.0) scout; urgency=medium

  * Platform, SDK: Add Pipewire client library (T28194)

 -- Simon McVittie <smcv@collabora.com>  Tue, 18 May 2021 12:53:55 +0100

steamrt (1.20210510.0) scout; urgency=medium

  * SDK: Add xauth, xvfb.
    These are very useful for unit tests, in particular for the xvfb-run
    script. (T21572)

 -- Simon McVittie <smcv@collabora.com>  Mon, 10 May 2021 16:08:29 +0100

steamrt (1.20210422.0) scout; urgency=medium

  * SDK: Add libxv-dev
  * Platform: Add libXv.so.1
  * d/README.source: Document how to add new libraries

 -- Simon McVittie <smcv@collabora.com>  Thu, 22 Apr 2021 17:46:45 +0100

steamrt (1.20210406.0) scout; urgency=medium

  [ Ludovico de Nittis ]
  * container-host-compat: Add "steam" symlink to steam-runtime-steam-remote
    (Resolves: T27035)
  * container-host-compat: Add "xdg-open" symlink to steam-runtime-urlopen
    (Resolves: T27036)
  * Add preinst and postrm scripts to cope with xdg-utils

  [ Simon McVittie ]
  * abi: Improve PEP 8 conformance

 -- Simon McVittie <smcv@collabora.com>  Tue, 06 Apr 2021 13:20:38 +0100

steamrt (1.20210317.0) scout; urgency=medium

  [ Simon McVittie ]
  * ABI: Compare libstdc++.so.6 by version definitions.
    This means we get the right libstdc++.so.6 on Exherbo
    (Resolves: steam-runtime#381)

  [ Ludovico de Nittis ]
  * container-host-compat: Add Exherbo locale symlinks
    (partially resolves: steam-runtime-tools#67)
  * container-host-compat: Add a stub pulseaudio executable.
    A few games use `pulseaudio --check` as a way to detect whether the
    system has a working PulseAudio. This convinces them that it does.
    (Resolves: steam-runtime-tools#64) (partially resolves: steam-runtime#371)

 -- Simon McVittie <smcv@collabora.com>  Wed, 17 Mar 2021 19:20:16 +0000

steamrt (1.20210311.0) scout; urgency=medium

  * container-host-compat: Ensure mount point for /usr/share/drirc.d.
    Resolves: steamrt#5

 -- Simon McVittie <smcv@collabora.com>  Thu, 11 Mar 2021 20:10:40 +0000

steamrt (1.20210305.0) scout; urgency=medium

  * Add gdbserver to Platform (T26714)
  * Add libnm 1.6 backport (T26357)
  * Install more packages as multiarch

 -- Simon McVittie <smcv@collabora.com>  Fri, 05 Mar 2021 18:17:13 +0000

steamrt (1.20210121.0) scout; urgency=medium

  * Don't symlink all of /usr/${gnu_tuple}/lib, but be more selective.
    This should avoid RPATH issues on Exherbo.
  * tests: Don't rely on dpkg-query exit status to check for
    installed packages, to handle purged packages correctly.

 -- Simon McVittie <smcv@collabora.com>  Thu, 21 Jan 2021 17:10:08 +0000

steamrt (1.20201124.1) scout; urgency=medium

  * Fix Meson tests to use a fresh build directory every time.
    Otherwise, Meson will continue to use the old configuration and we
    won't actually be testing the new cross or native file.

 -- Simon McVittie <smcv@collabora.com>  Tue, 24 Nov 2020 15:11:32 +0000

steamrt (1.20201124.0) scout; urgency=medium

  [ Ludovico de Nittis ]
  * steamrt-container-host-compat:
    Add support for host fonts bind-mounted by pressure-vessel (or Flatpak).
    pressure-vessel can bind the host fonts when it creates a new container.
    In order for it to work though, we need to tell fontconfig where these
    fonts are located.
  * gitlab-ci: Set tags for the CI image to use.
    Without any tags we are not able to find a runner to use.

  [ Simon McVittie ]
  * README: Say how this interacts with other important packages
  * d/control: Add details of where this package is developed.
    Now that it's available to the public, let's have a cross-reference.
  * debian: Improve steamrt-container-host-compat Description.
    It now contains configuration, not just symlinks and mount points.
  * tests: Really skip tests that can only be run in a SDK container

 -- Simon McVittie <smcv@collabora.com>  Tue, 24 Nov 2020 14:54:03 +0000

steamrt (1.20200914.0) scout; urgency=medium

  * steamrt-dev: Add a minimal i386 cross-pkg-config on amd64
  * steamrt-dev: Add sample Meson native- and cross-files.
    These can be used via, for example,
    `meson setup --cross-file gcc-m32.txt` or
    `meson setup --native-file gcc-5.txt`.
  * tests: Exercise Meson cross and native files

 -- Simon McVittie <smcv@collabora.com>  Mon, 14 Sep 2020 16:07:13 +0100

steamrt (1.20200909.0) scout; urgency=medium

  * ABI: Really don't generate dependencies on libdrm_*, libedit

 -- Simon McVittie <smcv@collabora.com>  Wed, 09 Sep 2020 14:31:43 +0100

steamrt (1.20200908.1) scout; urgency=medium

  * ABI: Don't include libdrm_*, libedit in LD_LIBRARY_PATH runtime

 -- Simon McVittie <smcv@collabora.com>  Tue, 08 Sep 2020 20:39:51 +0100

steamrt (1.20200908.0) scout; urgency=medium

  [ Ludovico de Nittis ]
  * ABI: Compare libdrm_* libraries by name and symbols (T23274)
  * ABI: Add public/private knowledge about symbol versions and symbols for:
    - libdrm_nouveau.so.2
    - libedit.so.2 (T21954)

  [ Simon McVittie ]
  * tests/sdk/cli.t: Pass when run in a non-Platform, non-SDK container

 -- Simon McVittie <smcv@collabora.com>  Tue, 08 Sep 2020 19:05:02 +0100

steamrt (1.20200825.0) scout; urgency=medium

  [ Ludovico de Nittis ]
  * SDK: Co-install libpng12-dev for amd64 and i386
  * ABI: Compare several libxcb-* libraries by counting symbols.
    This lets us choose the right implementation to run a more recent
    container on older host OSs like SteamOS 2 'brewmaster'.
    (T23256, T23266, T23267, T23269, T23271)
  * ABI: Compare libtinfo.so.5 library using symbol version definitions,
    for the same reason. (T23268)

 -- Simon McVittie <smcv@collabora.com>  Tue, 25 Aug 2020 16:10:45 +0100

steamrt (1.20200819.0) scout; urgency=medium

  * SDK: Co-install more packages for amd64 and i386.
    In particular, this provides enough packages to build pressure-vessel
    and steam-runtime-tools for i386 in an amd64 chroot/container, with
    some minor adjustments to debian/rules.

 -- Simon McVittie <smcv@collabora.com>  Wed, 19 Aug 2020 16:36:04 +0100

steamrt (1.20200708.1) scout; urgency=medium

  * ABI: Compare libxcb.so.1 versions by counting symbols.
    This lets us choose the right implementation to run a more recent
    container on SteamOS 2 'brewmaster', even though the library's name has
    been stuck at libxcb.so.1.1.0 since at least 2012. (T22538)

 -- Simon McVittie <smcv@collabora.com>  Wed, 08 Jul 2020 18:39:30 +0100

steamrt (1.20200708.0) scout; urgency=medium

  * tests/sdk/g++-9.t: Refer to gcc-9, not gcc-5.
    This has no practical effect, because we're only using g++ here.
  * Include data telling libcapsule how to compare libgcc_s.so.1.
    We had originally planned to compare all libraries by the tuple
    (versions, name, symbols) rather than by name, but preliminary test
    results indicate that doing so could break as much as it fixes. Instead,
    use an opt-in approach where we configure a non-default comparison for
    libraries that are known to be well-behaved.
    libgcc_s.so.1 is the library where we need to do this most urgently,
    because many distributions install it as a regular file libgcc_s.so.1
    rather than a symlink to libgcc_s.so.1.2.3 or similar, causing the
    default name-based comparison to be unreliable. (T16561)

 -- Simon McVittie <smcv@collabora.com>  Wed, 08 Jul 2020 14:19:54 +0100

steamrt (1.20200625.0) scout; urgency=medium

  [ Ludovico de Nittis ]
  * Set libldap as an alias of libldap_r and adjust the expectations
    accordingly (T21931)

  [ Simon McVittie ]
  * SDK: Add experimental backport of gcc 9, g++ 9.
    This is a single monolithic package, always behaves as though it was
    invoked with -static-libgcc -static-libstdc++, and always uses the
    pre-existing backport of binutils-2.30. (T21481)
  * tests: Check that gcc 9, g++ 9 work correctly
  * tests: Remove unused variable.
    No practical effect, other than silencing shellcheck warnings.

 -- Simon McVittie <smcv@collabora.com>  Thu, 25 Jun 2020 19:28:42 +0100

steamrt (1.20200615.0) scout; urgency=medium

  [ Timothee Besset ]
  * SDK: Add libibus-1.0-dev

 -- Simon McVittie <smcv@collabora.com>  Mon, 15 Jun 2020 19:07:25 +0100

steamrt (1.20200528.0) scout; urgency=medium

  * SDK: Add C and C++ multilib (-m32) support for all gcc versions.
    We use a new example project with no dependencies to test the C path,
    because both GLib and SDL are unavailable for -m32 in our biarch
    containers due to multiarch co-installability issues that were only
    fixed in Debian 10 or later. (Fixes: T21490)

 -- Simon McVittie <smcv@collabora.com>  Thu, 28 May 2020 17:43:04 +0100

steamrt (1.20200421.0) scout; urgency=medium

  [ Ludovico de Nittis ]
  * Platform: Add zenity-common.
    When we use zenity from the Steam Runtime it's safer to use "zenity.ui"
    provided from "zenity-common", because the one from the host might be
    missing or not compatible with the zenity version of the runtime.
    (Fixes: steam-runtime#104, T20665)

 -- Ludovico de Nittis <ludovico.denittis@collabora.com>  Tue, 21 Apr 2020 16:35:08 +0200

steamrt (1.20200414.0) scout; urgency=medium

  * steamrt-container-host-compat: Don't create symlinks to ld.so.
    dpkg-shlibdeps in at least SteamRT 1 'scout' gets confused if it finds
    ld.so in an unexpected directory. We'll have to create the symlinks
    in the Platform and SDK runtimes instead.

 -- Simon McVittie <smcv@collabora.com>  Tue, 14 Apr 2020 18:31:20 +0100

steamrt (1.20200331.0) scout; urgency=medium

  * steamrt-container-host:
    New binary package. Create symlinks and mount points for pressure-vessel

 -- Simon McVittie <smcv@collabora.com>  Tue, 31 Mar 2020 20:31:37 +0100

steamrt (1.20200318.0) scout; urgency=medium

  * Use vulkan-tools{,-multiarch} instead of transitional vulkan-utils
  * d/git-version-gen.control: Add

 -- Simon McVittie <smcv@collabora.com>  Wed, 18 Mar 2020 17:04:42 +0000

steamrt (1.20200311.0) scout; urgency=medium

  * Platform: Depend on libcapsule-tools-relocatable.
    The latest version of steam-runtime-tools uses this to enumerate GLVND
    drivers.
  * Platform: Add some gcc runtime libraries
    - libatomic.so.1 (ValveSoftware/steam-runtime#240)
    - libquadmath.so.0
    - libitm.so.1

 -- Simon McVittie <smcv@collabora.com>  Wed, 11 Mar 2020 16:11:01 +0000

steamrt (1.20200217.0) scout; urgency=medium

  * SDK: Add aptitude interactive package manager.
    This was previously installed implicitly by flatdeb.
  * tests: Assert that miscellaneous CLI tools exist, even if only as a
    symlink to busybox
  * tests: Fix name of tests/sdk/binutils-2.30.t so it gets run in CI
  * tests/platform/basic.t: Output valid TAP

 -- Simon McVittie <smcv@collabora.com>  Mon, 17 Feb 2020 13:20:49 +0000

steamrt (1.20200128.0) scout; urgency=medium

  * SDK: Add binutils-2.30
    - tests/sdk/binutils-2.30: Assert that it works, and accepts an option
      that didn't exist in the baseline version of binutils
  * tests: Only assert that python3 exists in Platform and SDK containers,
    not in arbitrary minimal chroots. The symlink is set up as part of
    the container build.
  * tests: Assert that python3.5 exsts (unconditionally)

 -- Simon McVittie <smcv@collabora.com>  Tue, 28 Jan 2020 14:19:26 +0000

steamrt (1.20200110.0) scout; urgency=medium

  * Platform: Add libelf.so.1.
    This is required by newer libsteam-runtime-tools, and we already
    distribute it in containers for libcapsule and pressure-vessel.

 -- Simon McVittie <smcv@collabora.com>  Fri, 10 Jan 2020 13:10:18 +0000

steamrt (1.20200109.0) scout; urgency=medium

  * Platform: Add python3.5.
    Proton's launch script wants Python 3, and we already have a python3.5
    backport for Meson, so we might as well use that more modern version.
  * Add framework for more platform tests, and assert python3 is present
  * CI: Run "make check" to check for pyflakes, mypy, etc. issues

 -- Simon McVittie <smcv@collabora.com>  Thu, 09 Jan 2020 17:38:53 +0000

steamrt (1.20191213.0) scout; urgency=medium

  * SDK: Add Autoconf and Automake 1.15.
    Import the test case from SteamRT 1½ 'heavy' and adapt it so it
    tests Automake 1.15.
  * SDK: Add git version control system
  * SDK: Add sudo, and its required configuration in libpam-runtime.
    This makes it more straightforward to increase and decrease privileges
    in a SDK container.
    libpam-runtime is transitively Essential in Ubuntu 12.04, but is not
    Essential in the Steam Runtime as a result of changes made to minimize
    the Platform container.
  * SDK: Add rsync file synchronization tool
  * SDK: Add devscripts, a collection of Debian packaging tools
  * SDK: Add fakeroot, used to compile packages as an ordinary user
  * SDK: Add dh-autoreconf, necessary to build many packages
  * SDK: Add deb-build-snapshot, a tool to build git snapshots of Debian
    packages

 -- Simon McVittie <smcv@collabora.com>  Fri, 13 Dec 2019 19:14:39 +0000

steamrt (1.20191205.0) scout; urgency=medium

  * legacy: Add libsteam-runtime-tools-0-relocatable-libs.
    This was separated from libsteam-runtime-tools-0-helpers to avoid a
    build failure in the SDK environment.

 -- Simon McVittie <smcv@collabora.com>  Thu, 05 Dec 2019 14:51:35 +0000

steamrt (1.20191120.0) scout; urgency=medium

  [ Simon McVittie ]
  * d/tests/platform: Add a smoke-test for Platform containers

  [ Ludovico de Nittis ]
  * Add hidden_dependencies metadata for libcg and libtheora0.
    This allows steam-runtime-tools (>= 0.20191112) to check that they
    can be loaded successfully.

 -- Simon McVittie <smcv@collabora.com>  Wed, 20 Nov 2019 18:03:20 +0000

steamrt (1.20191023.0) scout; urgency=medium

  * libs: Add libva{,-drm,-glx,-x11}.so.2 (VA-API 2)
  * libs: Add libva-drm.so.1 (VA-API 1, required for vainfo-1)
  * container, legacy: Add vainfo (VA-API 2 diagnostic) and vainfo-1
    (VA-API 1 diagnostic)
  * libs: Add vainfo-multiarch and vainfo-1-multiarch (VA-API 1 and 2
    diagnostic programs for 32- and 64-bit code)
  * SDK: Move libva-dev from -libdevel-non-multiarch to -libdevel.
    With an updated version of libset-scalar-perl it can be co-installed
    for amd64 and i386.

 -- Simon McVittie <smcv@collabora.com>  Wed, 23 Oct 2019 17:53:25 +0100

steamrt (1.20191004.0) scout; urgency=medium

  * Remove libXxf86dga.so.1 from runtime ABI guarantees and -libdevel again.
    It's pulled into the SDK, but not officially part of the runtime or
    Platform. As a result, we don't want to encourage third party developers
    to compile against it.

 -- Simon McVittie <smcv@collabora.com>  Fri, 04 Oct 2019 14:30:28 +0100

steamrt (1.20191003.0) scout; urgency=medium

  * steamrt-libdebug: Don't include automatic detached debug symbols.
    We can install those packages in a more scalable way by automatically
    trying to install the -dbgsym equivalent of each package installed
    in the Platform runtime.
  * steamrt-libdevel, -libs: Add libXxf86dga.so.1.
    DGA is obsolete, but the library is a dependency for xdpyinfo in
    x11-utils.
  * abi/expectations: Update for new names of libsdl2*-2.0-0

 -- Simon McVittie <smcv@collabora.com>  Thu, 03 Oct 2019 15:14:00 +0100

steamrt (1.20190924.1) scout; urgency=medium

  * Update names of libsdl2* detached debug symbols

 -- Simon McVittie <smcv@collabora.com>  Tue, 24 Sep 2019 18:07:17 +0100

steamrt (1.20190924.0) scout; urgency=medium

  * steamrt-dev: Add glslang-tools (glslangValidator and spirv-remap)
  * steamrt-libdevel: Add glslang-dev
  * Use non-transitional names for libsdl2*
    These libraries have been renamed to their Debian Policy §8.1 names
    libsdl2*-2.0-0 to reflect their actual SONAMEs.

 -- Simon McVittie <smcv@collabora.com>  Tue, 24 Sep 2019 16:59:08 +0100

steamrt (1.20190912.0) scout; urgency=medium

  * steamrt-container: Add locales (glibc locale source data).
    This allows us to generate binary locale data on-demand, for example
    when a system-wide configured locale is missing.
  * abi: Drop libcidn.so.1.
    This is an implementation detail of glibc support for internationalized
    domain names and does not appear to be linked directly by applications,
    so it is not really part of the ABI of the Steam Runtime. In newer
    versions of glibc, libidn2.so.0 is dlopened instead.

 -- Simon McVittie <smcv@collabora.com>  Thu, 12 Sep 2019 14:59:03 +0100

steamrt (1.20190822.0) scout; urgency=medium

  * steamrt-libs: Add vulkan-utils-multiarch, for *-vulkaninfo
  * steamrt-container, steamrt-legacy: Add vulkan-utils, for vulkaninfo
  * steamrt-legacy: Add waffle-utils, for parity with steamrt-container

 -- Simon McVittie <smcv@collabora.com>  Thu, 22 Aug 2019 18:38:47 +0100

steamrt (1.20190820.0) scout; urgency=medium

  * steamrt-dev: Add pressure-vessel and bubblewrap

 -- Simon McVittie <smcv@collabora.com>  Tue, 20 Aug 2019 18:47:51 +0100

steamrt (1.20190813.0) scout; urgency=medium

  * steamrt-dev: Add bear, a compilation database that stores build commands
  * steamrt-dev: Add ccache
  * steamrt-dev: Add scons build system
  * steamrt-dev: Add debugging/diagnostic tools:
    - ltrace
    - strace
    - vdpauinfo
    - x11-utils (mainly for xprop)
  * tests/sdk: Add smoke-tests for bear, ccache, ltrace, strace
  * tests: Include tests/sdk/*.py in Python checks

 -- Simon McVittie <smcv@collabora.com>  Tue, 13 Aug 2019 18:51:53 +0100

steamrt (1.20190808.0) scout; urgency=medium

  * steamrt-container, steamrt-legacy: Add steam-runtime-tools-bin.
    This provides the steam-runtime-system-info CLI driver for
    libsteam-runtime-tools, which is hopefully a useful diagnostic tool.
  * generate-expectations: Be more Python-3.2-friendly.
    The default python3 on scout doesn't have FileNotFoundError.
  * abi: Add the concept of libraries whose ABI we don't check.
    - Don't check libtheoraenc.so.1.
      libtheoraenc.so.1 has an undefined symbol th_comment_query_count
      which appears to be provided by libtheoradec.so.1, so in principle
      it ought to be linked to (have a DT_NEEDED dependency on)
      libtheoradec.so.1, but this doesn't seem particularly important for
      the Steam Runtime's purposes.
    - Don't check libthread_db.so.1.
      libthread_db.so.1 is used by debuggers like gdb, and expects the
      debugger to export some magic symbols. The generic check for shared
      library functionality in steam-runtime-tools can't be expected to do
      this; if we want to verify that this library is working as intended,
      the way to do that would be to test that gdb is working, which we
      already do in tests/sdk/gdb.t. (A useful reference:
      <http://timetobleed.com/notes-about-an-odd-esoteric-yet-incredibly-useful-library-libthread_db/>)
    - Don't check libCgGL.so
      libCgGL.so has an undefined reference to glTexCoordPointer that is
      not satisfied by any of its DT_NEEDED dependencies, and we cannot
      relink it against libGL because it is a binary-only library from NVIDIA.
  * abi: Combine libc6 symbols files into one big file as intended.

 -- Simon McVittie <smcv@collabora.com>  Thu, 08 Aug 2019 15:58:12 +0100

steamrt (1.20190806.0) scout; urgency=medium

  * New dependencies:
    - steamrt-libs: Add libwaffle-1.so.0
    - steamrt-libs: Add libjson-glib-1.0.so.0
    - steamrt-libs: Add waffle-utils-multiarch.
      Installing this for both amd64 and i386 is useful as a way to probe for
      working or non-working GL stacks with various window-system interfaces
      and rendering interfaces.
      Also add the non-architecture-prefixed version to steamrt-container,
      for better command-line convenience.
    - steamrt-libs: Add libsteam-runtime-tools-0.so.0.
      This Steam-specific library provides various bits of system
      information. It should not be used by games and applications (yet).
    - steamrt-dev: Explicitly depend on steamrt-libs.
      Otherwise we can't necessarily guarantee that the SDK has everything
      that the Platform does, or everything that the LD_LIBRARY_PATH runtime
      does.
  * Generate dependencies of steamrt-libs from a YAML file.
    This partially decouples the definition of what's in the Steam Runtime
    from the package names: what actually matters for our ABI is their
    SONAMEs. The Debian package name can be machine-generated from the
    SONAME in most cases. Where it can't, we can list exceptions.
    - steamrt-dev: Add python3-yaml.
      This is now a build-dependency for steamrt itself. Including it in the
      SDK helps to keep the SDK self-contained.
    - Install SteamRT ABI descriptions in the steamrt-libs binary package,
      including a JSON form of the YAML source.
      This will let us use them later to check that the libraries we have
      (including any LD_LIBRARY_PATH or LD_PRELOAD overrides) are
      binary-compatible with the libraries that games rely on.
      JSON is easier to process in a constrained environment than YAML, and
      in particular is understood by json-glib, json-c and the Python 2.7
      standard library.
    - tests: Assert that the SDK contains all the libraries we want.
      This acts as an assertion that the SDK has at least the same ABI as
      the LD_LIBRARY_PATH Steam Runtime.
    - Add a script to detect unexpected libraries in LD_LIBRARY_PATH runtime.
      This effectively asserts that we have not added libraries to the
      traditional LD_LIBRARY_PATH Steam Runtime without also adding them
      to the machine-readable ABI definition.
  * Add a script to generate symbols files for steam-runtime-tools.
    These are committed to git so that we can handle updated and newly-added
    libraries as something that goes through code review if desired:
    editing these files effectively means we are expanding the ABI of
    the Steam Runtime.
  * CI:
    - Combine all SDK tests into one big test script.
      autopkgtest spends a long time running apt to set up the container for
      each autopkgtest-level test, so it's advantageous to combine tests with
      the same dependencies into one big test.
    - debian/gitlab-ci.yml: use steam-ci-pipeline.
      Because scout is so old, its SDK environment is too old to run
      deb-build-snapshot. Instead, we do that step in a Debian 10 'buster'
      environment, and hand over the artifacts from that to the autopkgtest
      step.
  * d/copyright: Update

 -- Simon McVittie <smcv@collabora.com>  Tue, 06 Aug 2019 13:37:06 +0100

steamrt (1.20190624.0) scout; urgency=medium

  * steamrt-libdevel: Add libcasefold-dev on both architectures
    - steamrt-libdevel-non-multiarch: Drop libcasefold-dev [amd64],
      superseded by the above

 -- Simon McVittie <smcv@collabora.com>  Mon, 24 Jun 2019 17:40:51 +0100

steamrt (1.20190618.0) scout; urgency=medium

  * Add a build-time syntax check for shell scripts
  * steamrt-dev: Add gcc-5 and g++-5.
    These have been available in the apt repositories for a while, but
    were not preinstalled in SDKs until now. gcc-4.8 is still the default
    compiler.
  * steamrt-dev: Add clang-3.8.
    As with gcc 5, this has been available in the apt repositories for a
    while, but wasn't preinstalled in SDK environments. lldb-3.6 continues
    to be the only LLVM-based debugger installed.
  * Add test coverage for compiling with clang and clang++, with the
    default clang version and all alternative versions.

 -- Simon McVittie <smcv@collabora.com>  Tue, 18 Jun 2019 19:56:56 +0100

steamrt (1.20190515.0) scout; urgency=medium

  * Add a test to assert that the SDK contains psmisc (pstree)
  * Add tests to assert that the SDK contains working python and python3
  * Rename meson example/test to meson-glib to be consistent with other
    branches
  * Add a test for linking to SDL2 using Meson

 -- Simon McVittie <smcv@collabora.com>  Wed, 15 May 2019 11:57:27 +0100

steamrt (1.20190409.0) scout; urgency=medium

  * steamrt-dev: Add meson build system, including ninja-build
  * steamrt-dev: Explicitly include python and python3.
    These would be pulled in by lldb-3.6 and Meson respectively but seem
    worthwhile to be guaranteed to be available.
  * steamrt-libdevel: Add libcapsule-dev and libcapsule-tools-relocatable
  * Normalize dependency lists with `wrap-and-sort -abst`
  * Add steamrt-libdebug, steamrt-libdebug-non-multiarch packages
  * Add test coverage for Meson build system
  * steamrt-dev: Add less.
    A pager is a useful tool to have in the SDK.
  * steamrt-dev: Add busybox.
    This gives us lightweight versions of various common/basic tools,
    notably dos2unix, unix2dos, basic network tools and a cut-down vi
    implementation.

 -- Simon McVittie <smcv@collabora.com>  Tue, 09 Apr 2019 17:27:55 +0100

steamrt (1.20190403.0) scout; urgency=medium

  * steamrt-dev: Add gcc-4.8 and g++-4.8.
    These have been announced to be the default C and C++ compilers for
    games targeting the Steam Runtime environment.
  * steamrt-dev: Explicitly include gcc-4.6 and g++-4.6.
    These were the default C and C++ compilers in Ubuntu 12.04, and are
    used to compile most packages in the Steam Runtime itself.
  * steamrt-dev: Add clang-3.4 and clang-3.6.
    These are provided as alternative C and C++ compilers.
  * steamrt-dev: Add lldb-3.6.
    This is LLVM's alternative to gdb. bootstrap-runtime.sh has historically
    tried to install both lldb-3.6 and lldb-3.4, but they conflict, so the
    practical result is that only lldb-3.6 was available.
  * steamrt-dev: Add make.
    cmake doesn't pull this in as a hard dependency, but we'd better
    have it.
  * steamrt-dev: Add build-essential.
    This is installed explicitly by bootstrap-runtime.sh.
  * steamrt-dev: Add gdbserver, libcc1-0, libtool.
    In the schroot these have historically been pulled in by Recommends,
    but we don't install Recommends in container-based environments.

 -- Simon McVittie <smcv@collabora.com>  Wed, 03 Apr 2019 13:23:57 +0100

steamrt (1.20190320.0) scout; urgency=medium

  * Use a branch- and date-based versioning scheme
  * steamrt-dev: Explicitly include perl in the SDK.
    This is useful as a scripting language and to run tests with prove(1).
    It has historically been pulled in by libva-dev anyway.
  * steamrt-dev: Add pkg-config.
    This is frequently used to find libraries, and is installed explicitly
    by bootstrap-runtime.sh.
  * steamrt-dev: Add time.
    This is frequently assumed to be present (when not a shell builtin),
    and is installed explicitly by bootstrap-runtime.sh.
  * steamrt-dev: Add wget.
    This is commonly used to download dependencies, and is installed
    explicitly by bootstrap-runtime.sh.
  * steamrt-dev: Add cmake.
    This is a popular build system, and is installed explicitly by
    bootstrap-runtime.sh.
  * steamrt-dev: Add gdb.
    This is necessary for debugging, and is installed explicitly by
    bootstrap-runtime.sh.
  * steamrt-libs: Drop libcggl.
    This is a virtual package provided by libcg rather than a separate
    package.
  * steamrt-dev: Split out steamrt-libdevel-non-multiarch
  * Install metapackages with a lockstep version number
  * steamrt-dev: Include steamrt-container
  * steamrt-libdevel-non-multiarch: Add fcitx-libs-dev, libmpg123-dev,
    libvulkan-dev for parity with -debug Steam Runtime tarball
  * steamrt-libdevel-non-multiarch: Depend on libgnutls-dev (>= 3.4)
    instead of transitional libgnutls28-dev
  * steamrt-legacy: Add new metapackage encapsulating miscellaneous
    packages that go in Steam Runtime tarballs
  * examples, tests/sdk, debian/tests: Add simple autopkgtests for the SDK.
    We can run these inside a SDK schroot or container with
    autopkgtest(1), sadt(1) or prove(1) as an acceptance test to demonstrate
    that a new SDK build works.
  * d/.gitignore: Add

 -- Simon McVittie <smcv@collabora.com>  Wed, 20 Mar 2019 13:06:22 +0000

steamrt (0.1+steamrt6) scout; urgency=medium

  * Add metapackages that pull in Steam Runtime libraries.
    This should mean that we don't need to list them all individually
    when building containers.

 -- Simon McVittie <smcv@collabora.com>  Wed, 13 Feb 2019 17:26:25 +0000

steamrt (0.1+steamrt5) scout; urgency=medium

  * Include libcasefold, for amd64 only

 -- Simon McVittie <smcv@collabora.com>  Mon, 11 Feb 2019 18:26:26 +0000

steamrt (0.1+steamrt4) scout; urgency=medium

  * Remove empty debian/docs
  * Normalize packaging with wrap-and-sort -abst
  * d/gbp.conf: Add
  * Update package list for GNUTLS 3.4
    - Replace libgnutls-dev with libgnutls28-dev
    - Replace libtasn1-3-dev with libtasn1-6-dev
    - Add nettle-dev (which is depended on by libgnutls28-dev anyway, but
      adding it explicitly avoids it vanishing if a later GNUTLS stops
      using nettle)

 -- Simon McVittie <smcv@collabora.com>  Tue, 04 Dec 2018 20:12:42 +0000

steamrt (0.1+steamrt3) scout; urgency=medium

  * Replace libjack-dev with libjack-jackd2-dev

 -- Scott Ludwig <scottlu@valvesoftware.com>  Mon, 19 May 2014 13:42:17 -0700

steamrt (0.1+steamrt2) scout; urgency=low

  * Remove dummygl-dev as a dependency

 -- Scott Ludwig <scottlu@valvesoftware.com>  Thu, 01 May 2014 15:28:37 -0700

steamrt (0.1+steamrt1) scout; urgency=low

  * Fix Typo.

 -- Scott Ludwig <scottlu@valvesoftware.com>  Thu, 01 May 2014 14:45:50 -0700

steamrt (0.1) stable; urgency=low

  * Initial Release.

 -- Scott Ludwig <scottlu@valvesoftware.com>  Thu, 01 May 2014 11:46:10 -0800
