steamrt (3.c.20260115.1) steamrt3c; urgency=medium

  * Revert "d/control: Convert steamrt-crossbuild-* to Architecture: all".
    The cross-files in this package vary between build architectures.

 -- Simon McVittie <smcv@collabora.com>  Thu, 15 Jan 2026 14:55:01 +0000

steamrt (3.c.20260115.0) steamrt3c; urgency=medium

  * d/control: Convert steamrt-crossbuild-* to Architecture: all.
    This makes them match crossbuild-essential in Debian.
  * d/tests: Separate cross SDK tests from ordinary SDK tests
  * tests: Include cross-sdk tests in lint checks

 -- Simon McVittie <smcv@collabora.com>  Thu, 15 Jan 2026 13:45:45 +0000

steamrt (3.c.20260114.0) steamrt3c; urgency=medium

  * tests: Assert that compiled executables have the desired ld.so
  * tests: Generalize test coverage for cross-compiling (steamrt/tasks#856)
  * tests: Check that many desired pkg-config modules are available

 -- Simon McVittie <smcv@collabora.com>  Wed, 14 Jan 2026 17:48:44 +0000

steamrt (3.c.20260112.0) steamrt3c; urgency=medium

  * 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
    without duplication. (steamrt/tasks#856)

 -- Simon McVittie <smcv@collabora.com>  Mon, 12 Jan 2026 13:59:22 +0000

steamrt (3.c.20260107.0) steamrt3c; urgency=medium

  * ABI: Exclude JNI_OnLoad from SDL ABI (steamrt/tasks#772)
  * ABI: Update expectations for SDL 3.4.0 (steamrt/tasks#772)

 -- Simon McVittie <smcv@collabora.com>  Wed, 07 Jan 2026 19:24:27 +0000

steamrt (3.c.20260106.0) steamrt3c; urgency=medium

  * cmake, meson: Consistently produce toolchain files for all versions
  * cmake, meson: Generalize cross-compiling support.
    Instead of hard-coding amd64's ability to cross-compile for i386,
    we now generate cross-toolchain files for amd64, arm64 and i386 on
    any architecture.
    For this branch, this intentionally doesn't include
    crossbuild-essential-i386: in Debian 11, that package pulled in
    the deprecated dpkg-cross, which we don't want.
  * Correct URL for release notes
  * CI updates

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

steamrt (3.c.20250904.0) steamrt3c; urgency=medium

  * SDK: Add python3-requests (steamrt/tasks#799)

 -- Simon McVittie <smcv@collabora.com>  Thu, 04 Sep 2025 18:20:30 +0100

steamrt (3.c.20250818.0) steamrt3c; 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)
  * steamrt-container-host-compat: Create a symlink for flatpak-spawn.
    Toolbx wants to have `flatpak-spawn --host` available.
  * Move netbase dependency from steamrt-toolbx back to steamrt-container.
    Toolbx doesn't actually document a need for this. The justification
    for adding it to the runtime was ValveSoftware/steam-runtime#515.
  * 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:46:30 +0100

steamrt (3.c.20250808.0) steamrt3c; urgency=medium

  * ABI, SDK: Add SDL 3 (steamrt/tasks#774)
  * ABI, SDK: Replace classic SDL 2 with libsdl2-compat (steamrt/tasks#774)
  * SDK: Install sdl2-compat and SDL 3 automated and manual tests
  * Documentation updates

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

steamrt (3.c.20250429.0) steamrt3c; urgency=medium

  * 90steamrt.pref: Treat internal archival copy of Debian the same
    as Debian itself (steamrt/tasks#725)
  * steamrt-container-host-compat: Use dpkg-divert for all executables,
    allowing the Conflicts with xdg-utils, etc. to be dropped

 -- Simon McVittie <smcv@collabora.com>  Tue, 29 Apr 2025 22:00:04 +0100

steamrt (3.c.20250325.0) steamrt3c; urgency=medium

  * d/control: Install individual gcc-14 packages instead of
    gcc-14-monolithic (steamrt/tasks#672)
  * Stop generating i686-linux-gnu-gcc-14, etc. as wrapper scripts since
    we can now use cross-compilers instead (steamrt/tasks#672)
  * tests: Assert that libstdc++ 14 has the expected version
  * tests: Check that we can include C headers provided by gcc-14
  * tests: Justify how we check we can install arch-specific g++-14 headers

 -- Simon McVittie <smcv@collabora.com>  Tue, 25 Mar 2025 17:49:37 +0000

steamrt (3.c.20250318.0) steamrt3c; urgency=medium

  * ABI: Add various small libraries required by Qt 5 (steamrt/tasks#689)
  * ABI: Add libEGL.so.1 (steamrt/tasks#645, steamrt/tasks#689)

 -- Simon McVittie <smcv@collabora.com>  Tue, 18 Mar 2025 16:01:25 +0000

steamrt (3.c.20250303.0) steamrt3c; urgency=medium

  * abi: Fix lint warnings in maintenance scripts

 -- Simon McVittie <smcv@collabora.com>  Mon, 03 Mar 2025 20:44:55 +0000

steamrt (3.c.20250225.0) steamrt3c; urgency=medium

  * tests: Don't assert that ltrace is available on non-x86

 -- Simon McVittie <smcv@collabora.com>  Tue, 25 Feb 2025 12:17:39 +0000

steamrt (3.c.20250220.0) steamrt3c; urgency=medium

  * SDK: Install gcc-14-monolithic on any architecture except i386
  * SDK: Don't install gcc-14 native- and cross-files on i386
  * SDK: Don't install toolchain files for gcc-14 on i386
  * tests: Don't expect gcc-14 to be present on i386
  * meson: Generate native and cross files from templates

 -- Simon McVittie <smcv@collabora.com>  Thu, 20 Feb 2025 19:51:05 +0000

steamrt (3.c.20250217.1) steamrt3c; urgency=medium

  * SDK: Treat ltrace as x86-specific.
    It isn't available on all Debian architectures, and is non-essential.
    (steamrt/tasks#675)

 -- Simon McVittie <smcv@collabora.com>  Mon, 17 Feb 2025 20:03:19 +0000

steamrt (3.c.20250217.0) steamrt3c; urgency=medium

  * Experimental support for portability to non-x86 architectures
    (steamrt/tasks#675)
    - ABI: Cope with being run on as-yet-unknown architectures
    - SDK: Only install multilib gcc on x86
    - SDK: Only install gcc-14-monolithic on amd64
    - SDK: Only install libcapsule on x86
    - ABI: Add basic support for architecture-specific libraries
    - ABI: libdrm_intel.so.1 is x86-only

 -- Simon McVittie <smcv@collabora.com>  Mon, 17 Feb 2025 16:39:14 +0000

steamrt (3.c.20250206.0) steamrt3c; urgency=medium

  * SDK: Generate -m32 wrappers for i686-linux-gnu-gcc-14, etc. on x86_64.
    These provide a straightforward way to compile 32-bit x86 code without
    needing to build a separate cross-compiler. (steamrt/tasks#662)
  * cmake: Provide an i686-linux-gcc-14.cmake toolchain file
    (use via cmake
    -DCMAKE_TOOLCHAIN_FILE=/usr/share/steamrt/cmake/i686-linux-gnu-gcc-14.cmake)
  * meson: Provide an i686-linux-gnu-gcc-14.txt cross-file
    (use via meson setup --cross-file i686-linux-gnu-gcc-14.txt)
  * tests: Systematically test all i686-linux-gnu C, C++ compilers in a loop
  * tests: Systematically check all the names of the gcc-14 backport
  * CI: Use an internal steamrt3c image

 -- Simon McVittie <smcv@collabora.com>  Thu, 06 Feb 2025 14:59:53 +0000

steamrt (3.c.20250129.0) steamrt3c; urgency=medium

  * SDK: Preinstall gcc-14-monolithic.
    Previously this was available via apt, but not preinstalled.
    This makes the newer compiler more discoverable by making it available
    for tab-completion, at the cost of making our SDK somewhat larger.
  * SDK: Preinstall mold.
    Previously this was available via apt, but not preinstalled.
  * meson: Install machine files for convenient use of gcc-14 backport
  * meson: Add convenience machine files for the mold linker
  * Install sample toolchain files into /usr/share/steamrt/cmake
    - gcc.cmake, clang.cmake, gcc-VERSION.cmake, clang-VERSION.cmake
      for native compilation (including the gcc-14 backport)
    - gcc-m32.cmake, clang-m32.cmake, gcc-VERSION-m32.cmake
      for i386 on x86_64 (multilib; including the gcc-14 backport)
    - i686-linux-gnu-{gcc,clang}{,-VERSION}.cmake
      for i386 on x86_64 (multiarch/cross; the gcc-14 backport is not
      available in this mode)
  * tests: Assert that we can compile with gcc-14 and link with mold
  * examples, tests: Combine all build systems for each example
  * examples: Bump minimum cmake version to the oldest thing we ship.
    This avoids deprecation warnings with newer versions of cmake.

 -- Simon McVittie <smcv@collabora.com>  Wed, 29 Jan 2025 17:34:12 +0000

steamrt (3.c.20250122.1) steamrt3c; urgency=medium

  * Platform, SDK: Add usbutils, for lsusb(8)
  * Platform, SDK: Add xdg-user-dirs, for xdg-user-dir(1)
  * Platform: Don't include steam-runtime-tools-ui and therefore SDL2_ttf
    (steamrt/tasks#648)

 -- Simon McVittie <smcv@collabora.com>  Wed, 22 Jan 2025 18:05:50 +0000

steamrt (3.c.20250122.0) steamrt3c; urgency=medium

  * ABI: Ensure we include a fallback libgbm.so.1 (steamrt/tasks#647)
  * Platform, SDK: Require lsof, which Steam uses internally
    (steamrt/tasks#650)

 -- Simon McVittie <smcv@collabora.com>  Wed, 22 Jan 2025 16:20:41 +0000

steamrt (3.c.20250121.0) steamrt3c; urgency=medium

  * ABI, SDK: Reinstate SDL 2, core library only (steamrt/tasks#648)
  * tests: Test SDL 2 again (steamrt/tasks#648)
  * Platform, SDK: Add gsettings-desktop-schemas (steamrt/tasks#644)

 -- Simon McVittie <smcv@collabora.com>  Tue, 21 Jan 2025 17:12:56 +0000

steamrt (3.c.20250120.0) steamrt3c; urgency=medium

  * ABI: Add libnm.so.0 for both word sizes (steamrt/tasks#640)
  * SDK: Add libnm-dev

 -- Simon McVittie <smcv@collabora.com>  Mon, 20 Jan 2025 14:43:13 +0000

steamrt (3.c.20250116.0) steamrt3c; urgency=medium

  * tests: Don't assert that the Platform has python(3), only the SDK
  * d/control: Make /usr/bin/python point to python3, but only in the SDK
  * Reduce the number of extra -dev packages compared with sniper
  * examples, tests: Don't assume SDL 2 is present in the SDK
  * ABI: Don't tell steam-runtime-system-info to check libedit
  * ABI: Don't insist that we have libraries we don't depend on or check for

 -- Simon McVittie <smcv@collabora.com>  Thu, 16 Jan 2025 18:08:53 +0000

steamrt (3.c.20250115.0) steamrt3c; urgency=medium

  * meson: Add pkg-config field next to deprecated pkgconfig
  * Branch for Steam Client runtime 3c
    (steamrt/tasks#634, steamrt/tasks#620)

 -- Simon McVittie <smcv@collabora.com>  Wed, 15 Jan 2025 20:05:11 +0000

steamrt (3.20250109.0) sniper; urgency=medium

  * Platform: add libnm0, i386 only.
    This is needed for steamrt/tasks#90, at least temporarily. Unusually,
    I'm not adding it to our ABI tracking: this is not something that
    game authors should depend on or assume. (steamrt/tasks#630)

 -- Simon McVittie <smcv@collabora.com>  Thu, 09 Jan 2025 21:11:49 +0000

steamrt (3.20250106.0) sniper; urgency=medium

  * Move apt preferences into a subdirectory
  * apt-prefs: Don't install runtime-overlay packages by default.
    We will potentially want backported packages to be installed into the
    Platform image and therefore the Steam Linux Runtime depot, but not into
    the base tarball or the SDK image.
    At the moment this is only relevant for soldier, but for symmetry,
    do the same in sniper. (steamrt/tasks#619)

 -- Simon McVittie <smcv@collabora.com>  Mon, 06 Jan 2025 19:09:01 +0000

steamrt (3.20241127.0) sniper; urgency=medium

  * ABI: Update to DXVK 2.5.1 (steamrt/tasks#591)
  * ABI: Update to vkd3d 1.14 (steamrt/tasks#590)

 -- Simon McVittie <smcv@collabora.com>  Wed, 27 Nov 2024 19:23:23 +0000

steamrt (3.20241125.0) sniper; urgency=medium

  * ABI: Track the public ABI of libvkd3d-* (steamrt/tasks#590)
  * ABI: Track public ABI of DXVK Native (steamrt/tasks#591)
  * SDK: Provide limited libgcrypt and libgpg-error development files
    for i386, too.
    Proton wants these available for both 64- and 32-bit code.
    Their -dev packages were unfortunately not multiarch co-installable
    on i386 as of Debian 11, so to avoid breaking compatibility we have
    had to split out SteamRT-specific minimal -dev packages.
    (steamrt/tasks#604)

 -- Simon McVittie <smcv@collabora.com>  Mon, 25 Nov 2024 15:35:08 +0000

steamrt (3.20241111.0) sniper; urgency=medium

  * ABI, SDK: Add most of the libxcb-* libraries
    (steamrt/tasks#592, steam-runtime#701)
  * ABI: Add additional integration libraries for libharfbuzz
    (steamrt/tasks#589)
  * ABI: Add libwayland-server.so.0 (steamrt/tasks#589)
  * ABI: Add libxkbfile.so.1 (steamrt/tasks#592, steam-runtime#701)
  * SDK: Add libxkbfile-dev
  * ABI: Track symbols in libwayland-* more carefully
  * ABI: Add libwebpmux.so.3 (steamrt/tasks#589)
  * ABI: Compare libwebp{de,}mux symbols more carefully
  * ABI: Update expectations
  * d/control: Add xrandr to the container (steam-runtime#702)

 -- Simon McVittie <smcv@collabora.com>  Mon, 11 Nov 2024 18:31:18 +0000

steamrt (3.20241107.0) sniper; urgency=medium

  * ABI: Add various libraries to the list that we guarantee to provide.
    In practice all of these were already included in the Platform, so this
    change makes no difference to the size of the Platform; it only
    formalizes these libraries being part of our ABI, and arranges for
    steam-runtime-system-info to check for their presence.
    (steamrt/tasks#588)
  * SDK: Explicitly depend on some -dev packages that are indirectly
    required.
    If the dependencies of other packages reduce to a point where these
    -dev packages are no longer installed, we probably still want to
    install them, to avoid buildability regressions.
    (steamrt/tasks#588)

 -- Simon McVittie <smcv@collabora.com>  Thu, 07 Nov 2024 20:14:24 +0000

steamrt (3.20241105.0) sniper; urgency=medium

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

 -- Simon McVittie <smcv@collabora.com>  Tue, 05 Nov 2024 14:43:25 +0000

steamrt (3.20240916.0) sniper; urgency=medium

  * ABI: Track expected symbols found in libxkbcommon{,-x11}
    (steamrt/tasks#530)
  * ABI: Tell libcapsule how to compare libxkbcommon{,-x11}.so.0

 -- Simon McVittie <smcv@collabora.com>  Mon, 16 Sep 2024 15:46:49 +0100

steamrt (3.20240801.0) sniper; urgency=medium

  * ABI: Add a new libedit public symbol.
    This avoids "warning: we are assuming "_el_fn_sh_complete" to be
    private, but it's just a guess" on e.g. Ubuntu 24.04.

 -- Simon McVittie <smcv@collabora.com>  Thu, 01 Aug 2024 20:05:33 +0100

steamrt (3.20240717.0) sniper; urgency=medium

  * ABI: Add vkd3d runtime libraries (steamrt/tasks#268)
  * ABI: Add DXVK Native runtime libraries (steamrt/tasks#268)
  * SDK: Add vkd3d compiler and development files (steamrt/tasks#268)
  * SDK: Add libdxvk-native-dev (steamrt/tasks#268)

 -- Simon McVittie <smcv@collabora.com>  Wed, 17 Jul 2024 19:21:24 +0100

steamrt (3.20240619.0) sniper; urgency=medium

  [ Simon McVittie ]
  * d/changelog: Remove trailing whitespace from historical entries

  [ Ryan Gonzalez ]
  * ABI: Add libxkbcommon-x11.so.0 (steamrt/tasks#467)
  * SDK: Add libxkbcommon-x11-dev (steamrt/tasks#467)

 -- Simon McVittie <smcv@collabora.com>  Wed, 19 Jun 2024 15:43:33 +0100

steamrt (3.20240529.0) sniper; urgency=medium

  * ABI: Add Qt 5 core libraries (x86_64 only) (steamrt/tasks#450)

 -- Simon McVittie <smcv@collabora.com>  Wed, 29 May 2024 16:09:30 +0100

steamrt (3.20240528.0) sniper; urgency=medium

  * ABI: Add scaffolding to allow primary-architecture-only libraries
    (steamrt/tasks#450)
  * Documentation updates

 -- Simon McVittie <smcv@collabora.com>  Tue, 28 May 2024 17:52:20 +0100

steamrt (3.20240321.0) sniper; urgency=medium

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

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

steamrt (3.20240320.0) sniper; urgency=medium

  * ABI: Add libxcb-xinput.so.0 (ValveSoftware/steam-runtime#657)
  * SDK: Add libxcb-xinput-dev (ValveSoftware/steam-runtime#657)
  * ABI: Track expected symbols in remaining xcb libraries.
    The xcb family of libraries sometimes add new symbols without increasing
    the minor ABI version, so we have to be prepared to compare them by
    listing their symbols rather than by using the ABI version.
    We did this for some libraries in this family already: complete the set.
  * libxcb-xkb.so.1: Explicitly exclude symbols that were removed upstream.
    These were removed long ago, so versions available in the wild probably
    don't have them, but it's best to be consistent.
  * ABI: Update expectations for SDL 2.30

 -- Simon McVittie <smcv@collabora.com>  Wed, 20 Mar 2024 13:38:18 +0000

steamrt (3.20240307.0) sniper; urgency=medium

  * Temporarily patch in SteamOS-specific ibus-anthy settings.
    (steamrt/tasks#415)

 -- Simon McVittie <smcv@collabora.com>  Thu, 07 Mar 2024 19:19:42 +0000

steamrt (3.20240306.0) sniper; urgency=medium

  * data: Add ibus-table GSettings schema.
    Taken from ibus-table in Debian 11.
    Required by the steamwebhelper for the Cangjie input method.
    (steamrt/tasks#412)
  * README: Clarify how to ask Valve to sniper-enable a game
    (steamrt/steamrt#29)

 -- Simon McVittie <smcv@collabora.com>  Wed, 06 Mar 2024 18:31:09 +0000

steamrt (3.20240209.0) sniper; urgency=medium

  * Install GSettings schemas for ibus backends.
    steamwebhelper wants access to these from inside the sniper container.
    (steamrt/tasks#398)

 -- Simon McVittie <smcv@collabora.com>  Fri, 09 Feb 2024 19:56:02 +0000

steamrt (3.20240104.0) sniper; urgency=medium

  * README: Documentation updates

 -- Simon McVittie <smcv@collabora.com>  Thu, 04 Jan 2024 18:25:19 +0000

steamrt (3.20230928.0) sniper; urgency=medium

  * ABI: Track ABI of libcrypt.so.1 explicitly.
    libcrypt.so.1 has moved from glibc to being a separate package built by
    libxcrypt in most distributions, so it's important that we keep track
    of which one we have. It has explicit ABI control, both in glibc and in
    libxcrypt, so we can track its symbols exactly.
    (steamrt/tasks#332)
  * 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>  Thu, 28 Sep 2023 18:56:23 +0100

steamrt (3.20230921.0) sniper; urgency=medium

  * README: Adjust labelling of the compatibility tool.
    It's now labelled Steam Linux Runtime 3.0 (sniper) in the Steam library.
    steamrt/tasks#320
  * README: Update uses of sniper

 -- Simon McVittie <smcv@collabora.com>  Thu, 21 Sep 2023 14:04:34 +0100

steamrt (3.20230728.0) sniper; urgency=medium

  * ABI: Update ABI expectations for SDL 2.28.x
  * ABI: Resync supporting scripts with Steam Runtime >= 4

 -- Simon McVittie <smcv@collabora.com>  Fri, 28 Jul 2023 14:02:58 +0100

steamrt (3.20230424.0) sniper; urgency=medium

  * SDK: Provide ld-2.35, etc. symlinks for command-line compatibility
    with soldier
    - SDK: Add Meson native- and cross-files for binutils-2.35

 -- Simon McVittie <smcv@collabora.com>  Mon, 24 Apr 2023 11:33:49 +0100

steamrt (3.20230420.1) sniper; urgency=medium

  * meson: Add cross-files for gcc-9 -m32 and gcc-10 -m32, for completeness
  * tests: Run all Meson tests, even if one fails

 -- Simon McVittie <smcv@collabora.com>  Thu, 20 Apr 2023 14:56:02 +0100

steamrt (3.20230420.0) sniper; urgency=medium

  * README: Indicate how our metapackages fit together
  * README: Improve cross-references
  * examples: Consistently respect typical compiler flags.
    This lets us exercise things like -fuse-ld=gold.
  * meson: Parameterize machine files

 -- Simon McVittie <smcv@collabora.com>  Thu, 20 Apr 2023 12:48:06 +0100

steamrt (3.20230330.0) sniper; urgency=medium

  * ABI: Add libraries required by Chromium and its various forks and
    embedders (steam-runtime#579, steamrt/tasks#270)
    - libcups.so.2
    - Mozilla NSPR family (libnspr4.so etc.)
    - Mozilla NSS family (libnss3.so etc.)
  * SDK: Add libcups2-dev (both 32- and 64-bit)
  * SDK: Add libnspr4-dev, libnss3-dev (64-bit only)

 -- Simon McVittie <smcv@collabora.com>  Thu, 30 Mar 2023 20:32:43 +0100

steamrt (3.20230228.0) sniper; urgency=medium

  * 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: Replace deprecated SteamOS CI image with plain Debian
  * d/git-version-gen.control: Fix expected build suffix

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

steamrt (3.20230113.0) sniper; urgency=medium

  * CI: Specifically use an x86_64 runner.
    Future-proofing against non-x86 runners maybe becoming available
    (infrastructure/tasks#75).
  * Update README for merge of s-r-t with SteamLinuxRuntime

 -- Simon McVittie <smcv@collabora.com>  Fri, 13 Jan 2023 15:50:35 +0000

steamrt (3.20221130.0) sniper; urgency=medium

  * meson: Really install version-specific cross and native files
  * Add Meson cross-file for gcc, for completeness.
    This is the default, but explicit is sometimes better than implicit.
  * ABI: Update SDL expectations to 2.26.0

 -- Simon McVittie <smcv@collabora.com>  Wed, 30 Nov 2022 14:23:10 +0000

steamrt (3.20221124.0) sniper; urgency=medium

  * ABI: Treat two symbols in newer libedit2 as private
  * build: Drop compatibility with Meson older than 0.56
  * tests: Use `meson setup` instead of leaving the `setup` verb implicit
  * meson: Add cross-files for i686-linux-gnu cross-compiling
  * meson: Add cross and native files for specific versions

 -- Simon McVittie <smcv@collabora.com>  Thu, 24 Nov 2022 19:46:34 +0000

steamrt (3.20221004.1) sniper; urgency=medium

  * Move glslang-dev to steamrt-libdevel-non-multiarch.
    It isn't currently multiarch co-installable, because its dependency
    spirv-tools hasn't been split into a -dev part and a tools part.

 -- Simon McVittie <smcv@collabora.com>  Tue, 04 Oct 2022 18:35:18 +0100

steamrt (3.20221004.0) sniper; urgency=medium

  * SDK: Add spirv-headers, glslang-dev and spirv-tools.
    Followup for steamrt/tasks#177

 -- Simon McVittie <smcv@collabora.com>  Tue, 04 Oct 2022 17:59:38 +0100

steamrt (3.20220906.0) sniper; 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.
  * ABI: Update expected symbols for SDL 2.24.0

 -- Simon McVittie <smcv@collabora.com>  Tue, 06 Sep 2022 11:52:34 +0100

steamrt (3.20220711.0) sniper; urgency=medium

  [ Ludovico de Nittis ]
  * steamrt-container: Add netbase (steamrt/tasks#139).
    This adds `/etc/services` to the runtime, required by Borderlands 2
    (steam-runtime#515) and might help other games too.

 -- Simon McVittie <smcv@collabora.com>  Mon, 11 Jul 2022 13:43:27 +0100

steamrt (3.20220601.0) sniper; urgency=medium

  * ABI: Add libsoup (steamrt/tasks#122), for ValveSoftware/wine#142

 -- Simon McVittie <smcv@collabora.com>  Wed, 01 Jun 2022 12:02:57 +0100

steamrt (3.20220531.0) sniper; urgency=medium

  * abi/expectations: Update to SDL 2.0.22
  * Add OpenBLAS (steamrt/tasks#120)

 -- Simon McVittie <smcv@collabora.com>  Tue, 31 May 2022 19:41:06 +0100

steamrt (3.20220420.0) sniper; urgency=medium

  * ABI: Add libdecor plugin for Cairo window decorations.
    Without this, libdecor will be unable to draw window decorations for
    native Wayland windows in environments that require client-side
    decoration, such as GNOME Shell and Weston. (steamrt/tasks#101)

 -- Simon McVittie <smcv@collabora.com>  Wed, 20 Apr 2022 17:20:46 +0100

steamrt (3.20220329.0) sniper; urgency=medium

  * ABI: Add libvpx.so.6 (steamrt/tasks#103)
  * SDK: Add libvpx-dev (steamrt/tasks#103)

 -- Simon McVittie <smcv@collabora.com>  Tue, 29 Mar 2022 15:44:24 +0100

steamrt (3.20220318.0) sniper; urgency=medium

  * steamrt-container: Add libnotify-bin.
    This will let things like the Source engine's libtier0.so use it as a
    client for desktop notifications. (steamrt/tasks#98, Dota-2#2031)
  * ABI: Don't include multiarch-tuple-prefixed diagnostic tools.
    libsteam-runtime-tools no longer needs these: it ships its own diagnostic
    tool helpers with machine-readable output. The legacy-free sniper
    container is not really intended for legacy i386 binaries, and dropping
    this will mean three fewer things we have to patch.

 -- Simon McVittie <smcv@collabora.com>  Fri, 18 Mar 2022 13:58:31 +0000

steamrt (3.20220211.0) sniper; urgency=medium

  * README.md: Update to reflect public release.
    sniper build 0.20220119.0 was the first public release.
  * ABI: Add libXNVCtrl.so.0 (steam-runtime-tools#82)
    MangoHUD uses this to get performance metrics from older NVIDIA GPUs.
  * ABI: Update expected symbols to include SDL 2.0.20

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

steamrt (3.20220119.0) sniper; 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:58:47 +0000

steamrt (3.20220113.0) sniper; urgency=medium

  * SDK: Add afdko (proton/soldier/sdk#4)
    Proton wants this (specifically the makeotf, tx, sftnedit and otf2otc
    subcommands) to generate compatibility fonts.

 -- Simon McVittie <smcv@collabora.com>  Thu, 13 Jan 2022 18:52:23 +0000

steamrt (3.20220105.0) sniper; urgency=medium

  * d/rules: Don't install files executable if they don't need to be
  * d/rules: Parameterize gcc major version
  * d/rules: Assert that the gcc major version is correct at build time
  * Use debhelper-compat 13
  * 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/.gitignore: Update

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

steamrt (3.20211130.0) sniper; 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.

 -- Simon McVittie <smcv@collabora.com>  Tue, 30 Nov 2021 19:23:18 +0000

steamrt (3.20211119.0) sniper; 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, 19 Nov 2021 16:07:24 +0000

steamrt (3.20210928.0) sniper; urgency=medium

  * SDK: Explicitly pull in libgl-dev
  * SDK: Replace transitional libfontconfig1-dev with libfontconfig-dev
  * SDK: Replace transitional libfreetype6-dev with libfreetype-dev
  * SDK: Drop transitional libtinfo-dev, now part of libncurses-dev
  * SDK: Replace transitional bsdmainutils with bsdutils, bsdextrautils.
    It also pulls in ncal, but I'm fairly sure we don't actually want that.
  * SDK: Replace separate transitional x11proto-*-dev with x11proto-dev.
    These are transitional packages in Debian 11 and will not all be
    available in Debian 12.

 -- Simon McVittie <smcv@collabora.com>  Tue, 28 Sep 2021 18:02:43 +0100

steamrt (3.20210920.0) sniper; urgency=medium

  * ABI: libedit.so.2 rl_did_startup_hook is private.
    This was removed in 3.1-20210910-1.
  * ABI: libedit.so.2 free_history_entry() is public.
    This isn't in the versions of libedit.so.2 in soldier or sniper, but is
    in the version in Debian unstable, so will likely be in medic at some
    point in the future.

 -- Simon McVittie <smcv@collabora.com>  Mon, 20 Sep 2021 17:49:48 +0100

steamrt (3.20210917.1) sniper; urgency=medium

  * ABI: Correct sense of public symbol marking for libwayland-client

 -- Simon McVittie <smcv@collabora.com>  Fri, 17 Sep 2021 16:07:29 +0100

steamrt (3.20210917.0) sniper; urgency=medium

  * Update known ABI of SDL2 to 2.0.16
  * ABI: Track public symbols in libwayland-client.so.0.
    If the versions we are comparing are on opposite sides of the removal
    of wl_map_*, for example running Steam Runtime 3 'sniper' on Debian 9,
    then we'll be unable to work out an order by just counting symbols;
    we have to take the private symbols into account.
    (Resolves: T23255; related: steamrt#13)
  * ABI: Add libnss-myhostname.
    This ensures that $(hostname) and localhost are resolvable, even if they
    are not listed in /etc/hosts (which pressure-vessel gets from the host
    system, so we do not 100% control it). (Resolves: steam-runtime-tools#75)

 -- Simon McVittie <smcv@collabora.com>  Fri, 17 Sep 2021 13:35:44 +0100

steamrt (3.20210621.0) sniper; urgency=medium

  * Merge from soldier
    - Platform: Add zenity, so we can display error messages

 -- Simon McVittie <smcv@collabora.com>  Mon, 21 Jun 2021 15:41:13 +0100

steamrt (2.20210618.0) soldier; urgency=medium

  * Platform: Add zenity, so we can display error messages

 -- Simon McVittie <smcv@collabora.com>  Fri, 18 Jun 2021 13:36:18 +0100

steamrt (3.20210604.1) sniper; urgency=medium

  * Merge from soldier
    - 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

 -- Simon McVittie <smcv@collabora.com>  Fri, 04 Jun 2021 18:44:21 +0100

steamrt (2.20210604.1) soldier; 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>  Fri, 04 Jun 2021 18:26:28 +0100

steamrt (3.20210604.0) sniper; urgency=medium

  * Merge from soldier
    - SDK: Add various packages used to build Proton (T28550)
      + libxpresent-dev (steamrt#7)
      + libcapstone-dev (steamrt#8)
      + python3-pefile (steamrt#9)
      + gcc build-dependencies (steamrt#10)

 -- Simon McVittie <smcv@collabora.com>  Fri, 04 Jun 2021 15:56:35 +0100

steamrt (2.20210604.0) soldier; urgency=medium

  * SDK: Add various packages used to build Proton (T28550)
    - libxpresent-dev (steamrt#7)
    - libcapstone-dev (steamrt#8)
    - python3-pefile (steamrt#9)
    - gcc build-dependencies (steamrt#10)

 -- Simon McVittie <smcv@collabora.com>  Fri, 04 Jun 2021 15:44:48 +0100

steamrt (2.20210518.0) soldier; urgency=medium

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

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

steamrt (2.20210505.0) soldier; urgency=medium

  * d/README.source: Document how to add new libraries
  * Platform: add libXpresent.so.1 (steamrt#6, T27966)
  * Platform: Include libwayland-client.so.0 in ABI checks
  * Platform: Include libedit.so.2 in ABI checks
  * Platform: Include libdrm family in ABI checks
  * SDK: Add xauth, xvfb (T21572)
  * SDK: Add python3-vdf

 -- Simon McVittie <smcv@collabora.com>  Wed, 05 May 2021 15:14:10 +0100

steamrt (2.20210406.0) soldier; urgency=medium

  [ Ludovico de Nittis ]
  * Add preinst and postrm scripts to cope with xdg-utils

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

steamrt (2.20210331.0) soldier; 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)

  [ Simon McVittie ]
  * abi: Improve PEP 8 conformance

 -- Simon McVittie <smcv@collabora.com>  Wed, 31 Mar 2021 18:36:28 +0100

steamrt (3.20210518.0) sniper; urgency=medium

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

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

steamrt (3.20210505.0) sniper; urgency=medium

  * d/README.source: Document how to add new libraries
  * Platform: add libXpresent.so.1 (steamrt#6, T27966)
  * Platform: Include libdrm2 in ABI checks
  * Update name of ABI expectations for gdk-pixbuf
  * SDK: Add xauth, xvfb (T21572)
  * SDK: Add python3-vdf

 -- Simon McVittie <smcv@collabora.com>  Wed, 05 May 2021 15:16:18 +0100

steamrt (3.20210429.0) sniper; urgency=medium

  [ Ludovico de Nittis ]
  * d/control: Do not install glslang-dev as multiarch.
    `glslang-dev` now depends on `spirv-tools` which cannot be installed for
    multiple architectures.

 -- Simon McVittie <smcv@collabora.com>  Thu, 29 Apr 2021 11:52:17 +0100

steamrt (3.20210406.0) sniper; urgency=medium

  [ Ludovico de Nittis ]
  * Add preinst and postrm scripts to cope with xdg-utils

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

steamrt (3.20210331.0) sniper; 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)

  [ Simon McVittie ]
  * container: Add python-is-python3 (Resolves: T27279)
  * meson: Use non-deprecated section for built-in options
  * container: Normalize sorted order of dependencies
  * abi: Improve PEP 8 conformance
  * CI: Use a more appropriate Docker image

 -- Simon McVittie <smcv@collabora.com>  Wed, 31 Mar 2021 18:32:23 +0100

steamrt (3.20210317.0) sniper; urgency=medium

  * Merge from soldier
    - Add /usr/share/drirc.d mount point (steamrt#5)
    - ABI: Compare libstdc++.so.6 by version definitions
    - Platform: Add libasound2-plugins
    - container-host-compat: Add Exherbo locale symlinks
    - container-host-compat: Add a stub pulseaudio executable

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

steamrt (2.20210317.0) soldier; 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)
  * Platform: Add libasound2-plugins.
    This allows ALSA (libasound.so.2) programs to output via PulseAudio,
    particularly when combined with a pressure-vessel change to make
    PulseAudio the default for these programs.

  [ 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:24:27 +0000

steamrt (2.20210311.0) soldier; 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:18:03 +0000

steamrt (3.20210309.0) sniper; urgency=medium

  * Merge from soldier
    - Add gdbserver (T26714)

 -- Simon McVittie <smcv@collabora.com>  Tue, 09 Mar 2021 14:38:27 +0000

steamrt (2.20210309.0) soldier; urgency=medium

  * Add gdbserver to Platform (T26714)

 -- Simon McVittie <smcv@collabora.com>  Tue, 09 Mar 2021 14:35:01 +0000

steamrt (3.20210208.0) sniper; urgency=medium

  * Merge from soldier
    - Add tini

 -- Simon McVittie <smcv@collabora.com>  Mon, 08 Feb 2021 14:02:18 +0000

steamrt (2.20210208.0) soldier; urgency=medium

  * SDK: Add tini.
    This is a tiny process 1 (init/reaper) suitable for Docker containers.

 -- Simon McVittie <smcv@collabora.com>  Mon, 08 Feb 2021 13:55:15 +0000

steamrt (2.20210121.0) soldier; 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.
  * Fix suite in changelog

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

steamrt (3.20210121.0) sniper; urgency=medium

  * Don't symlink all of /usr/${gnu_tuple}/lib, but be more selective.
    This should avoid RPATH issues on Exherbo.

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

steamrt (3.20210120.0) sniper; urgency=medium

  * Revert "Pin a version of dpkg with #966083 fixed".
    The necessary version has migrated so this pin is no longer needed.
  * Drop deprecated gdk-pixbuf-xlib library

 -- Simon McVittie <smcv@collabora.com>  Wed, 20 Jan 2021 13:47:55 +0000

steamrt (3.20210114.1) sniper; urgency=medium

  * Pin a version of dpkg with #966083 fixed

 -- Simon McVittie <smcv@collabora.com>  Thu, 14 Jan 2021 18:49:45 +0000

steamrt (3.20210114.0) sniper; urgency=medium

  * Merge packaging changes from soldier
    - steamrt-container-host-compat:
      Add support for host fonts bind-mounted by pressure-vessel
    - README: Say how this interacts with other important packages
    - d/control: Add details of where this package is developed
    - Provide sample Meson native- and cross-files
  * Fix suite in changelog
  * Don't rely on dpkg-query exit status to check for installed packages.
    A package that has been removed but not purged (conffiles remain) still
    shows up in dpkg-query output.
  * tests: Change invocation syntax and expectations for bear(1)
    In Debian 11, it must be run as 'bear -- make', and produces an
    absolute path.

 -- Simon McVittie <smcv@collabora.com>  Thu, 14 Jan 2021 11:15:57 +0000

steamrt (2.20201124.0) soldier; urgency=medium

  * Merge packaging changes from scout
    - steamrt-container-host-compat:
      Add support for host fonts bind-mounted by pressure-vessel
    - README: Say how this interacts with other important packages
    - d/control: Add details of where this package is developed
    - Provide sample Meson native- and cross-files

 -- Simon McVittie <smcv@collabora.com>  Tue, 24 Nov 2020 15:15:39 +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 (2.20201007.0) soldier; urgency=medium

  [ Ludovico de Nittis ]
  * steam-runtime-abi: compare libdrm.so.2 by symbols.
    The default comparison by name is usually not enough for
    libdrm.so.2 because it is stuck at version libdrm.so.2.4.0 since 2008.
    Instead using the symbols comparison should give us better results.
    (T24106)
  * gitlab-ci: Set tags for the CI image to use.

 -- Simon McVittie <smcv@collabora.com>  Wed, 07 Oct 2020 18:03:57 +0100

steamrt (3.20201007.0) sniper; urgency=medium

  [ Ludovico de Nittis ]
  * steam-runtime-abi: compare libdrm.so.2 by symbols.
    The default comparison by name is usually not enough for
    libdrm.so.2 because it is stuck at version libdrm.so.2.4.0 since 2008.
    Instead using the symbols comparison should give us better results.
    (T24106)
  * gitlab-ci: Set tags for the CI image to use.

 -- Simon McVittie <smcv@collabora.com>  Wed, 07 Oct 2020 18:02:23 +0100

steamrt (3.20201002.0) sniper; urgency=medium

  * SDK: Don't include legacy -dbg symbols.
    This is prompted by the removal of libice6-dbg, but the other
    non-toolchain -dbg packages seem relatively likely to be removed from
    bullseye too.

 -- Simon McVittie <smcv@collabora.com>  Fri, 02 Oct 2020 16:05:09 +0100

steamrt (3.20200924.0) sniper; urgency=medium

  * Branch for Steam Runtime 3 'sniper'
  * Adjust to package versions from Debian 11 'bullseye' alpha versions:
    - Platform: libcrypt is a separate .deb now
    - Platform: Bump libffi SONAME
    - Platform: Update name of package containing libgcc_s.so.1
    - Platform: Avoid transitional package for libGL.so.1
    - Platform: Bump SONAME of libncurses and related libraries
    - SDK: Update list of legacy -dbg packages
    - SDK: Replace transitional libncurses{,w}5-dev with libncurses-dev
    - SDK: Update gcc major version
  * Remove some deprecated packages until/unless we find that we need them:
    - Platform, SDK: Drop obsolete GTK 2
    - SDK: Drop unversioned python (Python 2).
      Debian 11 no longer ships it, at least under that name. If we later
      add python2 to the SDK, we can test for that instead.
    - SDK: Drop gcc-5 until we know we need it
    - SDK: Drop gcc 9 backport, the default gcc is 10 anyway
  * Platform, SDK: Remove explicit dependency on Hogweed, Nettle libraries
  * SDK: Use substvar for gcc major version
  * SDK: Drop libcasefold for now
  * 90steamrt: Pin packages from Debian sid (unstable) lower.
    This means that if necessary we'll be able to install packages from
    unstable that do not exist at all in testing, such as gcc-snapshot.

 -- Simon McVittie <smcv@collabora.com>  Thu, 24 Sep 2020 18:35:24 +0100

steamrt (2.20200908.0) soldier; urgency=medium

  [ Simon McVittie ]
  * Merge from Steam Runtime 1 'scout'
    - 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)

  [ Ludovico de Nittis ]
  * steam-runtime-abi: compare libdrm_amdgpu.so.1 by name and symbols
    (T23274)

 -- Simon McVittie <smcv@collabora.com>  Tue, 08 Sep 2020 19:12:56 +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 (2.20200825.0) soldier; urgency=medium

  * Merge from Steam Runtime 1 'scout'
    - 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)

  [ Ludovico de Nittis ]
  * ABI: Compare libwayland-client.so.0 versions also by counting symbols.
    Currently the library version information is not maintained, and this
    leads to a situation where multiple versions have the same library name
    and the same symbols. We hope that in the future releases an incremental
    version number will be used instead. (T23255)

 -- Simon McVittie <smcv@collabora.com>  Tue, 25 Aug 2020 16:15:16 +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 (2.20200731.0) soldier; urgency=medium

  * Merge from Steam Runtime 1 'scout'
    - No practical changes
  * Platform: Include ca-certificates.
    Previously these were only included in the SDK via dependencies.

 -- Simon McVittie <smcv@collabora.com>  Fri, 31 Jul 2020 12:45:18 +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 (2.20200708.1) soldier; 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:36:40 +0100

steamrt (2.20200708.0) soldier; urgency=medium

  * debian/.gitignore: Update for addition of apt pinning
  * 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)
  * ABI: Don't assert that libfl.so.2 is loadable on its own.
    It assumes that the host application will export yylex().

 -- Simon McVittie <smcv@collabora.com>  Wed, 08 Jul 2020 13:46:04 +0100

steamrt (2.20200702.0) soldier; urgency=medium

  [ Simon McVittie ]
  * Merge from Steam Runtime 1 'scout'
    - Add experimental backport of gcc 9, g++ 9 (T21481)
    - Platform, SDK: Add libibus-1.0.so.5.
      In scout, this was new in 1.20200615.0.
      In soldier, this was previously brought in by SDL's dependencies, but
      let's make it official.
  * Platform, SDK: Add libraries required by Proton (T22322):
    - flex and its supporting library libfl
    - libOSMesa.so.8, aka libOSMesa.so.6
    - libv4l2.so.0
    - liblcms2.so.2
    - libxslt
    This currently also adds libv4l1.so.0 and libv4lconvert.so.0 to the
    Platform, and libv4l2rds.so.0 to the SDK, but they are considered to be
    implementation details rather than part of our official ABI.

  [ Ludovico de Nittis ]
  * Add apt pinning preferences (part of T14668)

 -- Simon McVittie <smcv@collabora.com>  Thu, 02 Jul 2020 11:44:06 +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 (2.20200529.0) soldier; urgency=medium

  * SDK: Add libsystemd-dev.
    We already have the shared library as a dependency of other libraries,
    so we might as well allow developing against APIs like sd-bus.
    Fixes: T21569
  * SDK: Don't include Java runtime environment.
    This is quite large, so let's not include it in our API guarantees.
    Fixes: T21574

 -- Simon McVittie <smcv@collabora.com>  Fri, 29 May 2020 17:01:05 +0100

steamrt (2.20200513.0) soldier; urgency=medium

  * SDK: Install glslang-dev, libpci-dev, libsndfile1-dev for multiarch
    (T20839)

 -- Simon McVittie <smcv@collabora.com>  Wed, 13 May 2020 11:16:44 +0100

steamrt (2.20200512.0) soldier; urgency=medium

  * SDK: Remove legacy non-multiarch -dbg symbol packages.
    They will be replaced by multiarch -dbgsym packages soon. (T20839)

 -- Simon McVittie <smcv@collabora.com>  Tue, 12 May 2020 18:11:00 +0100

steamrt (2.20200424.0) soldier; urgency=medium

  * Platform, SDK: Add GTK 3
  * SDK: Move SDL2 from non-multiarch to multiarch metapackage.
    Now that we have a multiarch version of libsdl2-dev, we should be able
    to cross-compile most games for i386 in a primarily x86_64 container.

 -- Simon McVittie <smcv@collabora.com>  Fri, 24 Apr 2020 18:03:41 +0100

steamrt (2.20200414.0) soldier; urgency=medium

  * Merge packaging from scout

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

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 (2.20200331.0) soldier; urgency=medium

  * Merge packaging from scout
    - Use vulkan-tools{,-multiarch} instead of transitional vulkan-utils
    - Platform, SDK: Add mount points and compat symlinks for
      pressure-vessel to be able to import host system glibc if necessary

 -- Simon McVittie <smcv@collabora.com>  Tue, 31 Mar 2020 20:54:04 +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 (2.20200318.0) soldier; urgency=medium

  * Merge packaging from scout
    - Add libcapsule-tools-relocatable to Platform
    - Explicitly include dh-autoreconf
  * d/git-version-gen.control: Configure newer versions of
    deb-git-version-gen

 -- Simon McVittie <smcv@collabora.com>  Wed, 18 Mar 2020 12:18:15 +0000

steamrt (2.20200311.0) soldier; urgency=medium

  * 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:08:12 +0000

steamrt (2.20200212.0) soldier; urgency=medium

  * Platform: Explicitly add libelf.so.1
  * SDK: Explicitly add libelf-dev
  * tests: Assert that miscellaneous CLI tools exist, even if only as a
    symlink to busybox
  * tests/platform/basic.t: Output valid TAP
  * tests: Put autopkgtests through shellcheck too

 -- Simon McVittie <smcv@collabora.com>  Wed, 12 Feb 2020 13:49:55 +0000

steamrt (2.20200109.0) soldier; urgency=medium

  * Platform: Add python3. Proton's launch script wants this.
  * 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:37:24 +0000

steamrt (2.20191212.0) soldier; urgency=medium

  * Use correct cross-pkg-config in -m32 tests.
    This ensures that we get the correct GLib headers, which in turn avoids
    assertion failures.
  * Skip -m32 tests on non-x86 architectures.
    The Steam Runtime currently only supports x86, but if we had a version
    that ran on ARM or some other architecture, this test would not be
    applicable there.
  * tests: Check that -m32 compilation produces i386 binaries
  * Install a cross-compiler targeting i386 on amd64.
    This allows for proper multiarch cross-compilation.
    To do this, we have to install gcc-8-multilib, g++-8-multilib instead
    of gcc-multilib and g++-multilib, because the latter conflict with
    multiarch-style cross compilers.
  * SDK: Install multiarch libstdc++ development headers.
    This is necessary if we want clang to be able to cross-compile from
    amd64 to i386 too.
  * debian: Install python3 for build architecture
  * SDK: Add sudo.
    This makes it more straightforward to increase and decrease privileges
    in a SDK container.
  * SDK: Add deb-build-snapshot, a tool to build git snapshots of packages

 -- Simon McVittie <smcv@collabora.com>  Thu, 12 Dec 2019 19:31:25 +0000

steamrt (2.20191127.1) soldier; urgency=medium

  * SDK: Add gcc-5-multilib, g++-5-multilib
  * SDK: Add a test for cc -m32

 -- Simon McVittie <smcv@collabora.com>  Wed, 27 Nov 2019 19:20:48 +0000

steamrt (2.20191127.0) soldier; urgency=medium

  * SDK: Add gcc-5, g++-5
    - tests: Reinstate gcc-5, g++-5 tests from scout branch
  * SDK: Add multilib gcc, g++
  * SDK: Add a more complete text-mode development environment
    - apt-utils, mainly for apt-ftparchive
    - aptitude interactive package manager
    - Autotools build system
    - Bison parser generator
    - bsdmainutils, for hexdump
    - bzip2 compression utility
    - cpio archiver
    - curl downloader, as an alternative to wget for scripts
    - debhelper, required to build nearly all Debian packages
    - devscripts Debian development utilities, for debchange and debuild
    - dpkg-dev
    - fakeroot, for Debian packaging
    - fish, an interactive shell
    - flip, used as an alternative to dos2unix / unix2dos
    - git version control system
    - GLib GObject-Introspection bindings, for parity with SteamRT 1½ 'heavy'
    - gperf perfect hash generator
    - Java runtime environment
    - libtool-bin, for /usr/bin/libtool
    - nano text editor
    - procps (kill, ps, pkill)
    - python (Python 2) for compatibility with older scripts
    - Python 3 debian module, for deb-build-snapshot and sadt
    - rsync file synchronization tool
    - xz compression utilities
    - zip, unzip archivers
  * SDK: Install libcapsule-tools-relocatable for all architectures
  * SDK: Remove unnecessary packages:
    - libasyncns-dev.
      This appears to be present as an implementation detail of PulseAudio
      rather than as a library that is necessary in its own right.
    - fcitx-libs-dev.
      This was inherited from scout, but it's unclear why/whether it was ever
      needed; it was originally added for parity with the -debug Steam Runtime
      tarball. Removing it means we can remove Qt.
    - NetworkManager development files
  * CI: Use SteamRT 2 'soldier' container

 -- Simon McVittie <smcv@collabora.com>  Wed, 27 Nov 2019 12:26:04 +0000

steamrt (2.20191121.0) soldier; urgency=medium

  * Initial Steam Runtime packaging for SteamRT 2 'soldier'
  * Switch branch for SteamRT 2 'soldier', based on Debian 10 'buster'
  * Remove old/deprecated packages:
    - steamrt-container: Drop realpath, provided by coreutils now
    - Remove old clang versions in favour of the default clang 7
    - Remove old gcc versions in favour of the default gcc 8
    - Remove Python 2, superseded by Python 3
    - Remove steamrt-legacy metapackage
    - Remove libgnutls.so.26, superseded by libgnutls.so.30
    - Replace libcurl3 with libcurl4
    - Remove dbus-glib, superseded by GDBus
    - Remove libjson0, no longer available
    - Remove obsolete SDL 1.2 libraries
    - Replace libgcrypt11 with libgcrypt20
    - Remove the obsolete GConf library
    - Replace libtiff4 with libtiff5
    - Replace libpng 1.2 with 1.6
    - Remove s2tc, no longer required for S3TC with recent Mesa versions
    - Replace libva1 with libva2
    - Replace libudev.so.0 with libudev.so.1
    - Remove libtasn-1-3, superseded by libtasn-1-6
    - Replace libglew1.6 and libglew1.10 with libglew2.1
    - Replace libssl.so.1.0.0 with libssl.so.1.1
    - Use non-deprecated Pango packages
    - Replace libidn.so.11 with libidn2.so.0
  * Remove unnecessary libraries:
    - Remove Heimdal and Kerberos libraries
    - Remove GStreamer
    - Remove LDAP libraries
    - Remove liborc
    - Remove FFMPEG libraries
    - Remove SASL libraries
    - Remove RTMP library
    - Remove libcom_err
    - Remove Mozilla NSPR and NSS libraries
    - Remove the Ubuntu appindicator/dbusmenu libraries
    - Remove NetworkManager libraries
    - Remove CUPS printing libraries
    - Remove Canberra widget sound effect library
    - Remove ltdl dlopen() abstraction
    - Remove tdb trivial database library
    - Remove libvpx video codec
    - Remove Xevie and Xprint bindings
    - Remove libkeyutils kernel keyring library
    - Remove libpcrecpp0 C++ Perl-compatible regular expression library
    - Remove libmikmod module player
    - Remove liblcms colour space management library
    - Remove Avahi mDNS implementation
  * Adjust to being a Debian derivative rather than an Ubuntu derivative:
    - Replace libjpeg-turbo8 and libjpeg62 with libjpeg62-turbo
  * Remove packages whose dependencies have not been pruned yet
    (these will need to be revisited in later versions)
    - Drop ALSA plugins for now
    - Drop zenity for now
  * Remove pressure-vessel-relocatable from SDK.
    pressure-vessel is built on SteamRT 1 'scout' as a way to get binaries
    that will work on any host OS at least as new as scout itself. It is not
    useful to include it in newer runtime branches unless we increase the
    minimal dependency for Steam.
  * steamrt-dev: Explicitly depend on psmisc
  * libCgGL is now in its own binary package
  * Use Debian buster package-builder image for build-tests
  * Move most packages from libdevel-non-multiarch to libdevel
  * Remove non-standard GTK engines.
    gdk2-engines-pixbuf is sufficient for the standard GTK 2 theme 'Adwaita'.

 -- Simon McVittie <smcv@collabora.com>  Thu, 21 Nov 2019 13:17:47 +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
