about summary refs log tree commit diff
path: root/pkgs/games/steam/fhsenv.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/games/steam/fhsenv.nix')
-rw-r--r--pkgs/games/steam/fhsenv.nix9
1 files changed, 8 insertions, 1 deletions
diff --git a/pkgs/games/steam/fhsenv.nix b/pkgs/games/steam/fhsenv.nix
index 936a3510b31de..559aee92c9f34 100644
--- a/pkgs/games/steam/fhsenv.nix
+++ b/pkgs/games/steam/fhsenv.nix
@@ -68,6 +68,10 @@ let
   envScript = ''
     # prevents various error messages
     unset GIO_EXTRA_MODULES
+
+    # This is needed for IME (e.g. iBus, fcitx5) to function correctly on non-CJK locales
+    # https://github.com/ValveSoftware/steam-for-linux/issues/781#issuecomment-2004757379
+    GTK_IM_MODULE='xim'
   '' + lib.toShellVars extraEnv;
 
 in buildFHSEnv rec {
@@ -186,11 +190,14 @@ in buildFHSEnv rec {
     libvdpau
 
     # required by coreutils stuff to run correctly
-    # Steam ends up with LD_LIBRARY_PATH=<bunch of runtime stuff>:/usr/lib:<etc>
+    # Steam ends up with LD_LIBRARY_PATH=/usr/lib:<bunch of runtime stuff>:<etc>
     # which overrides DT_RUNPATH in our binaries, so it tries to dynload the
     # very old versions of stuff from the runtime.
     # FIXME: how do we even fix this correctly
     attr
+    # same thing, but for Xwayland (usually via gamescope), already in the closure
+    libkrb5
+    keyutils
   ] ++ lib.optionals withGameSpecificLibraries [
     # Not formally in runtime but needed by some games
     at-spi2-atk