diff options
author | Nikolay Amiantov <ab@fmap.me> | 2015-06-12 02:01:23 +0300 |
---|---|---|
committer | Nikolay Amiantov <ab@fmap.me> | 2015-10-10 14:59:06 +0300 |
commit | a3ef4b930e3220bf82cd2881a4b95d108f814143 (patch) | |
tree | a8cfda145ce27a9f08a7d75509ba4abb8ad8dea1 /pkgs/games/steam/chrootenv.nix | |
parent | 6cb8e04a5c03f26ae6c1c524577ab971b769b708 (diff) | |
download | nixpkgs-a3ef4b930e3220bf82cd2881a4b95d108f814143.tar nixpkgs-a3ef4b930e3220bf82cd2881a4b95d108f814143.tar.gz nixpkgs-a3ef4b930e3220bf82cd2881a4b95d108f814143.tar.bz2 nixpkgs-a3ef4b930e3220bf82cd2881a4b95d108f814143.tar.lz nixpkgs-a3ef4b930e3220bf82cd2881a4b95d108f814143.tar.xz nixpkgs-a3ef4b930e3220bf82cd2881a4b95d108f814143.tar.zst nixpkgs-a3ef4b930e3220bf82cd2881a4b95d108f814143.zip |
steam: use native libraries, disable steam-runtime
Diffstat (limited to 'pkgs/games/steam/chrootenv.nix')
-rw-r--r-- | pkgs/games/steam/chrootenv.nix | 131 |
1 files changed, 85 insertions, 46 deletions
diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix index ffd68562dee..583e731113d 100644 --- a/pkgs/games/steam/chrootenv.nix +++ b/pkgs/games/steam/chrootenv.nix @@ -5,15 +5,11 @@ buildFHSUserEnv { targetPkgs = pkgs: [ pkgs.steam-original - pkgs.corefonts - pkgs.curl - pkgs.dbus - pkgs.dpkg - pkgs.mono - pkgs.python - pkgs.gnome2.zenity - pkgs.xdg_utils - pkgs.xorg.xrandr + # Errors in output without those + pkgs.pciutils + pkgs.python2 + # Games' dependencies + pkgs.xlibs.xrandr pkgs.which ] ++ lib.optional (config.steam.java or false) pkgs.jdk @@ -21,59 +17,102 @@ buildFHSUserEnv { ; multiPkgs = pkgs: - [ pkgs.cairo + [ # These are required by steam with proper errors + pkgs.xlibs.libXcomposite + pkgs.xlibs.libXtst + pkgs.xlibs.libXrandr + pkgs.xlibs.libXext + pkgs.xlibs.libX11 + pkgs.xlibs.libXfixes + pkgs.glib - pkgs.gtk + pkgs.gtk2 + pkgs.bzip2 + pkgs.zlib + pkgs.libpulseaudio pkgs.gdk_pixbuf - pkgs.pango + # Without these it silently fails + pkgs.xlibs.libXinerama + pkgs.xlibs.libXdamage + pkgs.xlibs.libXcursor + pkgs.xlibs.libXrender + pkgs.xlibs.libXScrnSaver + pkgs.xlibs.libXi + pkgs.xlibs.libSM + pkgs.xlibs.libICE + pkgs.gnome2.GConf pkgs.freetype - pkgs.xorg.libICE - pkgs.xorg.libSM - pkgs.xorg.libX11 - pkgs.xorg.libXau - pkgs.xorg.libxcb - pkgs.xorg.libXcursor - pkgs.xorg.libXdamage - pkgs.xorg.libXdmcp - pkgs.xorg.libXext - pkgs.xorg.libXfixes - pkgs.xorg.libXi - pkgs.xorg.libXinerama - pkgs.xorg.libXrandr - pkgs.xorg.libXrender - pkgs.xorg.libXScrnSaver - pkgs.xorg.libXtst - pkgs.xorg.libXxf86vm - - pkgs.ffmpeg - pkgs.libpng12 - pkgs.mesa - pkgs.SDL + pkgs.openalSoft + pkgs.curl + pkgs.nspr + pkgs.nss + pkgs.fontconfig + pkgs.cairo + pkgs.pango + pkgs.alsaLib + pkgs.expat + pkgs.dbus + pkgs.cups + pkgs.libcap pkgs.SDL2 - pkgs.libdrm + pkgs.libusb1 + pkgs.dbus_glib + pkgs.libav + pkgs.atk + # Only libraries are needed from those two + pkgs.udev182 + pkgs.networkmanager098 - pkgs.libgcrypt - pkgs.zlib - - pkgs.alsaLib + # Verified games requirements + pkgs.xlibs.libXmu + pkgs.xlibs.libxcb + pkgs.xlibs.libpciaccess + pkgs.mesa_glu + pkgs.libuuid + pkgs.libogg pkgs.libvorbis - pkgs.openal - pkgs.libpulseaudio + pkgs.SDL + pkgs.SDL2_image + pkgs.glew110 + pkgs.openssl + pkgs.libidn - pkgs.gst_all_1.gst-plugins-ugly # "Audiosurf 2" needs this + # Other things from runtime + pkgs.xlibs.libXinerama + pkgs.flac + pkgs.freeglut + pkgs.libjpeg + pkgs.libpng12 + pkgs.libsamplerate + pkgs.libmikmod + pkgs.libtheora + pkgs.pixman + pkgs.speex + pkgs.SDL_image + pkgs.SDL_ttf + pkgs.SDL_mixer + pkgs.SDL2_net + pkgs.SDL2_ttf + pkgs.SDL2_mixer + pkgs.gstreamer + pkgs.gst_plugins_base + + # Not formally in runtime but needed by some games + pkgs.gst_all_1.gstreamer + pkgs.gst_all_1.gst-plugins-ugly ]; extraBuildCommandsMulti = '' cd usr/lib ln -sf ../lib64/steam steam + + # FIXME: maybe we should replace this with proper libcurl-gnutls + ln -s libcurl.so.4 libcurl-gnutls.so.4 ''; profile = '' - # Ugly workaround for https://github.com/ValveSoftware/steam-for-linux/issues/3504 - export LD_PRELOAD=/lib32/libpulse.so:/lib64/libpulse.so:/lib32/libasound.so:/lib64/libasound.so:$LD_PRELOAD - # Another one for https://github.com/ValveSoftware/steam-for-linux/issues/3801 - export LD_PRELOAD=/lib32/libstdc++.so:/lib64/libstdc++.so:$LD_PRELOAD + ${if config.steam.enableRuntime or false then "" else "export STEAM_RUNTIME=0"} ''; runScript = "steam"; |