Unable to run steam when disabling steam-runtime

Hi everyone,

I have recently moved from Arch Linux to NixOS, and absolutely love it so far!

There is a single issue I have encountered so far - when running steam with the steam runtime disabled (STEAM_RUNTIME=0 STEAM_RUNTIME_HEAVRY=0) i get an error telling me that some shared libraries are missing.

steam.sh[48528]: Error: You are missing the following 32-bit libraries, and Steam may not run:
libbz2.so.1.0

I have managed to add some of these libraries using the following code:

nixpkgs.config.packageOverrides = pkgs: {
steam = pkgs.steam.override {
extraLibraries = { pkgs, … }: with pkgs; [
pipewire
xorg.libXcursor
xorg.libXinerama
xorg.libXext
xorg.libXrandr
xorg.libXrender
xorg.libX11
xorg.libXi
libGL

    zlib
    dbus
    freetype
    glib
    atk
    cairo
    pango
    fontconfig
    xorg.libxcb

    gtk4
    gtk3
    gtk2
    libvdpau
    (bz2Override pkgs)
  ];
  extraPkgs = pkgs: with pkgs;
    [
      zlib
      dbus
      freetype
      glib
      atk
      cairo
      pango
      fontconfig
      xorg.libxcb
      (bz2Override pkgs)
    ];
};

};
With the only library that is not found by steam being libbz2.so.1.0

I have tried installing bzip2 in extraLibraries to no avail, and also tried using the following hack in order to explicitly create the relevand symlincs:

let

bz2Override = { pkgs, … }:

pkgs.bzip2.overrideAttrs (attrs: {

postInstall = attrs.postInstall + ‘’

ln -sf $out/lib/libbz2.so.1.0.* $out/lib/libbz2.so.1.0

ln -sf $out/lib/libbz2.so.1.0.* $out/lib/libbz2.so.1

‘’;

});
did any of you encounter this issue and have a fix?
thanks!

Steam is a repackaged binary, we don’t have the source code. This means that we cannot build steam to look for libraries in the nix store, and are therefore dependent on the steam runtime correctly supplying those libraries in its cgroup. No amount of adding libraries to the nix store will fix that.

Edit: Nope, nevermind, we use an fhs env for this. I thought the steam runtime had that built-in these days. That said, this is still a lot of work just to do what the steam runtime does manually.

Why would you want to disable this anyway?