about summary refs log tree commit diff
path: root/pkgs/games
diff options
context:
space:
mode:
authorPeter Hoeg <peter@hoeg.com>2020-05-05 13:15:29 +0800
committerGitHub <noreply@github.com>2020-05-05 13:15:29 +0800
commitd8cf47589028f8d285f20ae1b7cf8e306a0e4b2d (patch)
tree0e7edabed1371929a863ed6179c1cc446ca51d66 /pkgs/games
parent0b2ff5ad2b5c64720f7e15a89f1f9760de9ea03d (diff)
parentf62e2b24c32bf9de26ea96a4891ab0cbe6b392f9 (diff)
downloadnixlib-d8cf47589028f8d285f20ae1b7cf8e306a0e4b2d.tar
nixlib-d8cf47589028f8d285f20ae1b7cf8e306a0e4b2d.tar.gz
nixlib-d8cf47589028f8d285f20ae1b7cf8e306a0e4b2d.tar.bz2
nixlib-d8cf47589028f8d285f20ae1b7cf8e306a0e4b2d.tar.lz
nixlib-d8cf47589028f8d285f20ae1b7cf8e306a0e4b2d.tar.xz
nixlib-d8cf47589028f8d285f20ae1b7cf8e306a0e4b2d.tar.zst
nixlib-d8cf47589028f8d285f20ae1b7cf8e306a0e4b2d.zip
Merge pull request #86842 from lheckemann/supertuxkart-split-data
superTuxKart: use assets directly from download
Diffstat (limited to 'pkgs/games')
-rw-r--r--pkgs/games/super-tux-kart/default.nix22
1 files changed, 14 insertions, 8 deletions
diff --git a/pkgs/games/super-tux-kart/default.nix b/pkgs/games/super-tux-kart/default.nix
index dcf1081e4d0b..70c5657508bd 100644
--- a/pkgs/games/super-tux-kart/default.nix
+++ b/pkgs/games/super-tux-kart/default.nix
@@ -1,9 +1,15 @@
-{ stdenv, fetchFromGitHub, fetchsvn, cmake, pkgconfig
+{ stdenv, fetchFromGitHub, fetchsvn, cmake, pkgconfig, makeWrapper
 , openal, freealut, libGLU, libGL, libvorbis, libogg, gettext, curl, freetype
 , fribidi, libtool, bluez, libjpeg, libpng, zlib, libX11, libXrandr, enet, harfbuzz }:
 
 let
   dir = "stk-code";
+  assets = fetchsvn {
+    url    = "https://svn.code.sf.net/p/supertuxkart/code/stk-assets";
+    rev    = "18212";
+    sha256 = "1dyj8r5rfifhnhayga8w8irkpa99vw57xjmy74cp8xz8g7zvdzqf";
+    name   = "stk-assets";
+  };
 
 in stdenv.mkDerivation rec {
   pname = "supertuxkart";
@@ -17,15 +23,9 @@ in stdenv.mkDerivation rec {
       sha256 = "01vxxl94583ixswzmi4caz8dk64r56pn3zxh7v63zml60yfvxbvp";
       name   = dir;
     })
-    (fetchsvn {
-      url    = "https://svn.code.sf.net/p/supertuxkart/code/stk-assets";
-      rev    = "18212";
-      sha256 = "1dyj8r5rfifhnhayga8w8irkpa99vw57xjmy74cp8xz8g7zvdzqf";
-      name   = "stk-assets";
-    })
   ];
 
-  nativeBuildInputs = [ cmake gettext libtool pkgconfig ];
+  nativeBuildInputs = [ cmake gettext libtool pkgconfig makeWrapper ];
 
   buildInputs = [
     libX11 libXrandr
@@ -38,8 +38,14 @@ in stdenv.mkDerivation rec {
   cmakeFlags = [
     "-DBUILD_RECORDER=OFF"         # libopenglrecorder is not in nixpkgs
     "-DUSE_SYSTEM_ANGELSCRIPT=OFF" # doesn't work with 2.31.2 or 2.32.0
+    "-DCHECK_ASSETS=OFF"
   ];
 
+  # Obtain the assets directly from the fetched store path, to avoid duplicating assets across multiple engine builds
+  preFixup = ''
+    wrapProgram $out/bin/supertuxkart --set-default SUPERTUXKART_ASSETS_DIR "${assets}"
+  '';
+
   sourceRoot = dir;
 
   meta = with stdenv.lib; {