Skip to content
Snippets Groups Projects
  1. Mar 16, 2021
    • Simon McVittie's avatar
      pv-wrap: Communicate timeouts to pv-adverb as locale-independent ASCII · 39600d93
      Simon McVittie authored
      These arguments take a G_OPTION_ARG_DOUBLE, which is documented to be
      parsed using either the user's locale or the C locale (in fact they
      use g_strtod(), which parses it both ways and takes the longer match).
      The locale matters in locales like de_DE that use a decimal comma
      instead of a decimal point: we can always parse 2.000000 in the C
      locale, but we can only parse 2,000000 if we are in a correctly-set-up
      locale that uses the decimal comma.
      
      If we needed to generate new locale files inside the container, then
      pv-adverb needs to be able to parse its command-line before we have
      generated those locale files. This means that
      --terminate-idle-timeout=2,000000 won't work reliably, so we need to
      use the C locale format, --terminate-idle-timeout=2.000000.
      
      Using g_ascii_dtostr() has the side benefit that it uses the shortest
      possible representation that does not lose precision; in the common case
      that the timeout is an integer number of seconds, we'll just print it
      as an integer.
      
      Helps: https://github.com/ValveSoftware/steam-runtime/issues/381
      
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      39600d93
    • Ludovico de Nittis's avatar
      runtime: Create library aliases in overrides · 39a0cacd
      Ludovico de Nittis authored
      If a library has different SONAMEs, called aliases in
      "steam-runtime-abi.json", it might lead to errors when a game tries to
      load a SONAME that is not the "real" library SONAME (the DT_SONAME that
      objdump shows). Because `ld.so.cache` will not consider the aliases when
      searching for the right match.
      
      To workaround this problem we create a directory called "aliases" that
      contains symlinks of the libraries aliases that we know about.
      
      By adding these directories, one for every multiarch, in the
      `LD_LIBRARY_PATH`, we ensure that even games that were linked to an
      alias will be able to find the library they were looking for.
      
      Helps: https://github.com/ValveSoftware/steam-runtime/issues/246
      
      
      Fixes: T26816
      
      Signed-off-by: default avatarLudovico de Nittis <ludovico.denittis@collabora.com>
      39a0cacd
  2. Mar 12, 2021
    • Simon McVittie's avatar
      wrap: Put game-specific $HOME on bwrap command-line before exports · 242e8906
      Simon McVittie authored
      This is how Flatpak behaves, and it's necessary to prevent the
      game-specific $HOME from being mounted over the top of some of the
      exports, preventing (for example) ~/.steam from being exposed to the
      container.
      
      We only do this for $HOME rather than completely reverting 3a8e939d,
      so that it won't be a regression for a symlink at /var/tmp.
      
      If the logical and physical paths to the real $HOME differ, we now also
      mount the game-specific $HOME onto the real $HOME's physical path, and
      replicate the logical path's symlinks in the container. This matches how
      Flatpak works, and avoids a similar regression.
      
      Fixes: 3a8e939d "pv-wrap: Delay --dir, etc. until after FlatpakExports are processed"
      Resolves: #63
      
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      242e8906
  3. Mar 11, 2021
  4. Mar 04, 2021
  5. Mar 03, 2021
  6. Mar 01, 2021
  7. Feb 26, 2021
  8. Feb 25, 2021
  9. Feb 24, 2021
  10. Feb 23, 2021
Loading