- Aug 18, 2020
-
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Aug 05, 2020
-
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Aug 04, 2020
-
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
This lets us use the D-Bus session bus without interfering with user processes, even on CI systems that weren't already running one. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
This is helpful when tracking down leaks. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Jul 31, 2020
-
-
Simon McVittie authored
This is like `flatpak run --filesystem`, but for now much, much simpler; callers are responsible for not giving us paths that will be a problem. However, it's enough to bind-mount subdirectories of /tmp, which is what we need if we want to use them as IPC rendezvous points. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Jul 29, 2020
-
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Jul 23, 2020
-
-
Ludovico de Nittis authored
Signed-off-by:
Ludovico de Nittis <ludovico.denittis@collabora.com>
-
- Jul 21, 2020
-
-
Ludovico de Nittis authored
Signed-off-by:
Ludovico de Nittis <ludovico.denittis@collabora.com>
-
Ludovico de Nittis authored
pressure-vessel-with-lock has been renamed to pressure-vessel-adverb because now it has more capabilities than just taking a lock. This change should help the environments that are not able to normally run `bwrap`, like if we are in a Docker container or in a Flatpak app. Signed-off-by:
Ludovico de Nittis <ludovico.denittis@collabora.com>
-
- Jul 09, 2020
-
-
Simon McVittie authored
This is included in prerelease versions of SteamRT 2 'soldier', but because it uses the post-gcc-5 C++ ABI of libLLVM-7.so.1, it's incompatible with versions of libLLVM-7.so.1 that were compiled to be compatible with the gcc 4 C++ ABI, and in particular the one in SteamOS 2 'brewmaster'. This and the previous commit are sufficient to make tests/containers.py pass on SteamOS 2 'brewmaster', if we also configure libxcb.so.1 to be chosen by counting symbols (T22538) and libgcc_s.so.1 to be chosen by counting verdefs (T16561). Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
If we allow lazy binding, we can succeed in loading a GIO module from the host (which depends on a newer GObject than the one bundled with pressure-vessel), then find that a symbol reference fails at the time that we try to actually use it. Make it fail early, instead. In particular, this is helpful on SteamOS 2 'brewmaster'. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
For the moment, this is basically scout with fewer guarantees: we can't assume whether the host glibc is newer (like Arch Linux or Ubuntu 20.04) or older (like SteamOS 2 'brewmaster'). Only tested successfully on Debian testing/unstable, for now. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Jun 23, 2020
-
-
Simon McVittie authored
This log file contains pressure-vessel's debug messages (which happen outside the scout container), not just the output of inside-scout.py, so calling it inside-scout.log is misleading. If we're running pressure-vessel-wrap --only-prepare, then we never actually get as far as running inside-scout.py or entering the container, so the log file name is doubly misleading. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Jun 17, 2020
-
-
Simon McVittie authored
Flatpak is not going to give us control over the root directory when using sub-sandboxing - the most we're likely to get is control over which directory is chosen to be /usr. Prepare for this by using /usr/lib/pressure-vessel/overrides instead of /overrides for the things we overwrite. To be nice to developers and steam-runtime-tools, put a symlink overrides -> usr/lib/pressure-vessel/overrides at the root, as a hint for where to look. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
A possible future enhancement would be to have an option to mount some of these (those that live in the mutable sysroot) read/write, but for now any ad-hoc developer modifications will have to happen outside the container. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
The host system is assumed to be at least as new as scout (otherwise nothing will work, least of all pressure-vessel-wrap), so we can assume that the host glibc will be used. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
For gconv we only make the assertion for a Debian host for now, because non-Debian hosts put their gconv libraries in different places. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
To make this a little faster, we only generate locales in two of the six tests (combining them asymmetrically so that we generate locales once with and once without --copy-runtime-into, and once for each runtime we are running from), and skip checking that locales were generated correctly in the other tests. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Jun 16, 2020
-
-
Simon McVittie authored
SteamOS 2 'brewmaster' only has this. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
This will be used to delete libraries from the runtime if their SONAME is the same as a library that we brought in from outside, to avoid conflicts when precedence gets mixed up. A manual test is included. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Workaround for T21931. Fully fixing this is low-priority, because we have been removing libldap dependencies anyway. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Jun 12, 2020
-
-
Simon McVittie authored
This requires resources external to pressure-vessel, and makes some assumptions about the container - but that's OK, because the first significant user of pressure-vessel is Steam Runtime 1 'scout', which is not exactly a moving target. We also do some of these checks in various OSs' virtual machines when we build Steam Runtime releases, but having this in-tree with the pressure-vessel source should shorten the testing cycle. See the doc-comment in tests/containers.py for usage. At the moment all tests require a working version of bubblewrap, but current/future work in the direction of pre-preparing a modified runtime on disk should mean that we can do a subset of these tests even if we cannot run bubblewrap. In particular, if we can do that inside a Docker container, that will make it a lot easier for CI to validate our assumptions on non-Debian-derived host operating systems. Attentive reviewers will notice that there's infrastructure here to be able to skip generating locales, but it isn't yet used. It will be used when we have more variations on the theme of "enter a scout container and run inside-scout.py", to avoid the time cost of generating locales every time - but at the moment we only have two runs, so the time taken to generate locales is not problematic. This test is a bit slow, and it's going to get slower as we add more thorough testing, so increase its timeout away from the Meson default. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
The result of this setup will be the same every time, so there isn't much point in repeating it. When we add tests with time-consuming setup like running steam-runtime-system-info, we'll only want to do that once. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
If we're passing it across a container boundary, relative paths are going to get error-prone. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-