pressure-vessel (0.20200108.0-0+steamrt1.1) scout; urgency=medium * wrap: Don't pass --lock-file to bwrap. This is redundant with us passing the fd to be held by pressure-vessel-with-lock, and it causes bwrap to produce the wrong exit status (see https://github.com/containers/bubblewrap/issues/336 and https://github.com/containers/bubblewrap/pull/325). * bwrap-lock: Add support for OFD locks. On Linux >= 3.15, this allows us to pass a lock fd to a child process across bwrap's fork-and-exec the way we were already trying to, and have it actually work. * wrap: Tell child process to take out its own lock if necessary. Non-OFD locks don't propagate across fork(), and bwrap needs to clone() itself (which behaves like fork() in this respect) to separate itself into a parent outside the container and a child inside the container. This change adds a weak dependency on Linux 3.15. If we run on an older version, everything should still *work*, but there will be a short period of time during which we have already decided to use the runtime, but it is not locked (and in particular not protected from deletion). -- Simon McVittie <smcv@collabora.com> Wed, 08 Jan 2020 15:34:14 +0000 pressure-vessel (0.20191216.0-0+steamrt1.1) scout; urgency=medium * wrap: Mount pressure-vessel on /run/pressure-vessel if using runtime. This avoids relying on the directory containing pressure-vessel being being below either the current working directory, or the default Steam library in $(realpath ~/.steam/steam). (Closes: ValveSoftware/steam-runtime#204) * ci: Do a build with AddressSanitizer and UndefinedBehaviourSanitizer -- Simon McVittie <smcv@collabora.com> Mon, 16 Dec 2019 14:15:29 +0000 pressure-vessel (0.20191115.0-0+steamrt1.1) scout; urgency=medium * wrap: Add API for a bubblewrap-compatible fcntl lock * wrap: Take out a lock on the container's runtime for the duration * with-lock: Add a utility to do things while holding a lock * wrap: Use with-lock to hold the lock until all children have exited * wrap: Print environment variables quoted as intended * Go back to non-native versioning. Versioning pressure-vessel as a native package interacts poorly with the combination of the Open Build Service pseudo-binNMU suffix and the deb-build-snapshot tool used for prereleases: 0.20190927.0+7+g1234567+srt1 is less than 0.20190927.0+srt1, so 0.20190927.0 would wrongly be preferred over the prerelease at commit 1234567, 7 commits later than 0.20190927.0. * Update libglnx, applying a fixed version of libglnx!14 * build: Enable and fix many compiler warnings * debian: Make compiler warnings into errors for unreleased builds * gitlab-ci: Make compiler warnings into errors * wrap: Make GOptionEntry flags clearer * wrap: Print version number as YAML -- Simon McVittie <smcv@collabora.com> Fri, 15 Nov 2019 19:03:20 +0000 pressure-vessel (0.20191112.1) scout; urgency=medium * Revert inclusion of libglnx!14. It accidentally depended on a newer GLib version. -- Simon McVittie <smcv@collabora.com> Tue, 12 Nov 2019 13:52:17 +0000 pressure-vessel (0.20191112.0) scout; urgency=medium * ci: Add build-dependencies of steam-runtime-tools subproject * wrap: Don't bind-mount ~/.steam/steambeta etc. if they don't exist * wrap: Fix logic for whether Steam Runtime is passed through * Update libglnx subproject, including merge requests libglnx!13 and libglnx!14 -- Simon McVittie <smcv@collabora.com> Tue, 12 Nov 2019 13:32:32 +0000 pressure-vessel (0.20190927.0) scout; urgency=medium * wrap: Include all known NVIDIA libraries, except for libnvidia-gtk* -- Simon McVittie <smcv@collabora.com> Fri, 27 Sep 2019 18:40:56 +0100 pressure-vessel (0.20190926.0) scout; urgency=medium * test-ui: Respect a few of the same environment variables as -wrap * wrap: Pull in EGL and Vulkan ICDs from the host system - Add steam-runtime-tools library dependency * Various CI improvements -- Simon McVittie <smcv@collabora.com> Thu, 26 Sep 2019 14:55:03 +0100 pressure-vessel (0.20190912.0) scout; urgency=medium * Refactor pressure-vessel-wrap * wrap: Fail with an error if no architectures work * wrap: Only bind-mount host /usr/lib/locale once * wrap: If using host libc.so.6, also pick up host libidn2.so.0 * wrap: Use a new pressure-vessel-locale-gen to set up locales * d/copyright: Remove duplication -- Simon McVittie <smcv@collabora.com> Thu, 12 Sep 2019 14:54:47 +0100 pressure-vessel (0.20190823.0) scout; urgency=medium * Switch to "native" packaging format * wrap: Add PRESSURE_VESSEL_RUNTIME, which can force use of a runtime * wrap: Add an option to find the runtime relative to a base path * wrap: Add $PRESSURE_VESSEL_SHELL as default for --shell-* * wrap: Add $PRESSURE_VESSEL_TERMINAL and --terminal * wrap: Add environment variables for more options * wrap: When using --unshare-home, replace symlinks in ~/.steam with up-to-date values * wrap: Make --share-home take precedence over --home * wrap: Skip architecture setup for architectures the runtime can't run. This means we can use amd64-only or i386-only runtimes. -- Simon McVittie <smcv@collabora.com> Fri, 23 Aug 2019 16:44:05 +0100 pressure-vessel (0.20190822.0-0+steamrt1.1) scout; urgency=medium * pressure-vessel-unruntime-scout: Add a shortcut way to select the scout runtime -- Simon McVittie <smcv@collabora.com> Thu, 22 Aug 2019 15:46:36 +0100 pressure-vessel (0.20190820.0-0+steamrt1.1) scout; urgency=medium * Move Gitlab-CI setup into debian directory * Improve build-relocatable-install -- Simon McVittie <smcv@collabora.com> Tue, 20 Aug 2019 18:44:27 +0100 pressure-vessel (0.20190819.0-0+steamrt1.1) scout; urgency=medium * Initial package -- Simon McVittie <smcv@collabora.com> Mon, 19 Aug 2019 16:19:18 +0100