- Feb 19, 2024
-
-
Simon McVittie authored
There's no reason why this particularly needs to be pressure-vessel-specific, and since commit 7627197e "steam-runtime-tools: Separate out modules not in the shared library" we can share code between pressure-vessel/ and bin/ without enlarging the shared library. 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>
-
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
Naming copied from C into Python. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Feb 09, 2024
-
-
Simon McVittie authored
This was implemented to interact correctly with the locking scheme used in bwrap(1) (which uses the non-OFD flavour of fnctl locks), but is otherwise unrelated to bwrap(1) or pressure-vessel. Moving this into common code will facilitate using it outside pressure-vessel, in particular when unpacking `ubuntu12_64/steam-runtime-sniper/`. While I'm changing the interface anyway, take the opportunity to rename the WRITE flag to EXCLUSIVE, which is clearer. Helps: steamrt/tasks#387 Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Feb 02, 2024
-
-
Simon McVittie authored
Avoid the word "production", which could easily be mistaken for an official release. It's here for historical reasons. We used to do two separate relocatable installations, one with production-like compiler options, and one unoptimized and unstripped for debugging; but I removed the latter in commit 8649f766 "CI: Skip unpackaged scout builds" in mid 2021, because it slowed down CI and was rarely useful. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Jan 31, 2024
-
-
Simon McVittie authored
In practice we stopped creating these in mid 2021, when we stopped shipping runtimes as an archive. Now that the code to unpack archives has gone entirely, so can this. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
We haven't done this since May 2021, and for the copy of SLR_sniper used for the steamwebhelper since January 2024, we are unpacking SteamLinuxRuntime_sniper.tar.xz (including pressure-vessel) in preference to using pv-wrap --runtime-archive. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
We haven't done this in production since May 2021. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
We haven't done this since May 2021, and for the copy used for the steamwebhelper since January 2024, we are unpacking SteamLinuxRuntime_sniper.tar.xz (including pressure-vessel) in preference to using pv-wrap --runtime-archive. I think we can conclude that we will not use that mode in future, either. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Before we added SteamLinuxRuntime_whatever/var in early 2021, we would unpack runtime archives directly into SteamLinuxRuntime_whatever/scout_0.x or similar. Assume that all such directories have been cleaned up by now. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Dec 07, 2023
-
-
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
Inside our container, both /run and /var are on tmpfs, so both are equally suitable. Using /var for this has the advantage that it avoids a split-brain situation where ARM and x86 code under FEX-Emu will see different content in /run. /var is already split between the real root used by ARM code and the $FEX_ROOTFS used by x86 code. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Nov 22, 2023
-
-
Simon McVittie authored
Otherwise, pv-adverb will be unable to detect the expansion of ${LIB} or ${PLATFORM}, leading to a somewhat unrealistic test. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Nov 20, 2023
-
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Nov 17, 2023
-
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Nov 16, 2023
-
-
Simon McVittie authored
This makes us somewhat more const-correct, reducing the scope for accidents. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Oct 30, 2023
-
-
Simon McVittie authored
Unlike most POSIX functions, instead of returning -1 and setting errno on error, pthread_sigmask() returns a positive errno-like value on error. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Oct 25, 2023
-
-
Simon McVittie authored
Only launcher.py actually needed this. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
It doesn't actually have anything to do with pressure-vessel any more. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
There's nothing pressure-vessel-specific about it. 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
Just for completeness, really. Previously we didn't test this. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Without this, running the test in a soldier container, launched from a host with (for example) LC_ADDRESS=en_GB.utf8, will fail. Until now, this was masked by the fact that this test was unnecessarily skipped when dbus-run-session is unavailable, but I want to change that. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Oct 19, 2023
-
-
Simon McVittie authored
It doesn't actually call anything PV-specific. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Oct 04, 2023
-
-
Simon McVittie authored
This is not guaranteed to be the case now that we are treating libcrypt as potentially a separate library, which is necessary to support use of libxcrypt. Fixes: 81d0099a "Merge libcapsule/v0.20230928.0" Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Aug 31, 2023
-
-
Simon McVittie authored
This allows doing: meson setup _build meson test -C _build without an intervening `meson compile` step. Previously, this would have failed because the tests require various helpers and fixtures, while some of the code under test also requires helper programs, and some of the code under test *is* a CLI program. For a project this small, there's no real need to distinguish precisely which programs are needed by which test: we can just assume that all tests need all programs, like Autotools would. Includes: https://gitlab.gnome.org/GNOME/libglnx/-/merge_requests/51 Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Aug 30, 2023
-
-
Simon McVittie authored
If we don't do this, we won't be able to give the tests proper dependencies on the helper programs that they use. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
If we can't chmod the file, we should say what the current owner and permissions look like, to assist debugging. In particular, this is likely to happen on NTFS or when operating on a directory owned by a different user. For example, if the filesystem is owned by root (steam-runtime#544) we might say: Unable to change mode of ... from 0777 (owner: "root", group: "root", non-member) to 0644: ... or if the file is owned by the current user but the filesystem does not allow chmod anyway (steam-runtime#606) we might say: Unable to change mode of ... from 0755 (owner: current user, group: "users") to 0644: ... Helps: https://github.com/ValveSoftware/steam-runtime/issues/434 Helps: https://github.com/ValveSoftware/steam-runtime/issues/460 Helps: https://github.com/ValveSoftware/steam-runtime/issues/477 Helps: https://github.com/ValveSoftware/steam-runtime/issues/491 Helps: https://github.com/ValveSoftware/steam-runtime/issues/544 Helps: https://github.com/ValveSoftware/steam-runtime/issues/606 Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Jul 28, 2023
-
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Jun 02, 2023
-
-
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 allows Steam to provide a process-launching service that is outside the container runtime (but possibly inside a larger sandbox like Flatpak or Snap), allowing game processes to run tools such as mango_intel_stats that cannot usefully be run inside the container (steamrt/tasks#293, #107). The intended use is that Steam will run this, with the PATH and LD_LIBRARY_PATH of the Steam Runtime 1 'scout' environment in effect: steam-runtime-launcher-service --alongside-steam Some defaults change when this option is in use, to be more suitable for this use-case. Steam can optionally set environment variable `SRT_LAUNCHER_SERVICE_ALONGSIDE_STEAM` to `com.steampowered.PressureVessel.LaunchAlongsideSteam` in the environment used to launch games, as a way to signal that this mechanism is available. If desired, Steam can wait for the launcher service to be ready by passing a pipe to it as its standard output (fd 1) or as a higher fd referenced by the --info-fd option, and then reading from that pipe until end-of-file is reached. If it does this before launching any apps or games, then apps and games can safely assume that the launcher service is ready for immediate use. Alternatively, Steam can let the launcher service start asynchronously, by passing /dev/null as its standard output. If this is done, an app or game that starts up very quickly after Steam is launched might find that `steam-runtime-launch-client --alongside-steam -- ...` does not work until some time has passed. To the extent that it's possible, launched processes get the same host execution environment as the top-level process of Steam itself (the bin_steam.sh script); this is similar to what happens for non-Steam app shortcuts. They can re-enter the Steam Runtime 1 'scout' environment, if desired, by running ~/.steam/root/ubuntu12_32/steam-runtime/run.sh. Signed-off-by:
Simon McVittie <smcv@collabora.com>
-
- Jun 01, 2023
-
-
Simon McVittie authored
Signed-off-by:
Simon McVittie <smcv@collabora.com>
-