Skip to content
Snippets Groups Projects
  1. Apr 09, 2020
  2. Apr 08, 2020
    • Simon McVittie's avatar
      Merge branch 'wip/smcv/unshare-pid' into 'master' · 5990173f
      Simon McVittie authored
      wrap: Add the ability to unshare the pid namespace
      
      See merge request steam/pressure-vessel!16
      5990173f
    • Simon McVittie's avatar
      wrap: Add the ability to unshare the pid namespace · feb948ed
      Simon McVittie authored
      This improves isolation between the host system and the game, and can
      be used in conjunction with bwrap's init/reaper process to make game
      termination fully reliable (unlike subreapers, killing the init process
      automatically kills the entire pid namespace).
      
      One major down-side of doing this is that if the game uses
      process-ID-oriented APIs, for example older versions of
      <https://github.com/FeralInteractive/gamemode
      
      >, then they will not
      work, because the process ID inside the container is not the same as
      the process ID outside the container.
      
      Unfortunately, Steam's own tracking of the processes that belong to a game
      is one of the process-ID-oriented APIs that this harms, so this branch
      does not unshare the pid namespace by default, only when requested. We
      can use this to test whether it can be done without breaking Steam;
      We will probably need to cope with separate pid namespaces if we create
      new containers from inside a Flatpak environment.
      
      Also add an option to unload the gameoverlayrenderer.so module, which
      is not acceptable for production use, but at least works around this
      well enough to unblock further testing.
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      feb948ed
  3. Apr 06, 2020
  4. Apr 03, 2020
    • Simon McVittie's avatar
      scripts: Assert that we have the desired Python version · b4f85647
      Simon McVittie authored
      
      In Steam Runtime 1 'scout' and Steam Runtime 1½ 'heavy' SDK
      environments, we have a backport of python3.5 in order to run Meson,
      and meson.build automatically selects it if available.
      
      In newer environments like a developer's laptop, we expect to have a
      strictly newer Python version, like the python3.7 in Debian 10.
      
      One notable exception is that we only require Python 3.4+ for scripts
      that are meant to run on test machines or on non-developer Steam users'
      systems, which right now just means the test UI. This version was chosen
      because SteamOS 2 'brewmaster' and Ubuntu 14.04 'trusty' both have 3.4.
      
      Ubuntu 12.04 'precise' only has 3.2, but the Steam client doesn't
      actually work on 12.04 any more for orthogonal reasons.
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      b4f85647
  5. Mar 31, 2020
  6. Mar 25, 2020
  7. Mar 24, 2020
  8. Mar 23, 2020
  9. Mar 18, 2020
  10. Mar 17, 2020
  11. Mar 12, 2020
  12. Mar 05, 2020
  13. Mar 04, 2020
  14. Feb 26, 2020
Loading