From 507d7154fbd183121aa0b2168f8eb67be871b161 Mon Sep 17 00:00:00 2001 From: "Robert T. McGibbon" Date: Fri, 5 Feb 2021 19:14:31 -0500 Subject: [PATCH] supertuxkart: fix build --- pkgs/games/super-tux-kart/default.nix | 71 +++++++++++++++++++++------ 1 file changed, 56 insertions(+), 15 deletions(-) diff --git a/pkgs/games/super-tux-kart/default.nix b/pkgs/games/super-tux-kart/default.nix index 1729e2fc2853..961842e8701c 100644 --- a/pkgs/games/super-tux-kart/default.nix +++ b/pkgs/games/super-tux-kart/default.nix @@ -1,15 +1,34 @@ -{ lib, stdenv, fetchFromGitHub, fetchsvn, cmake, pkg-config, makeWrapper -, SDL2, glew, openal, libvorbis, libogg, curl, freetype, bluez, libjpeg, libpng, enet, harfbuzz -, mcpp, wiiuse, angelscript +{ lib +, stdenv +, fetchFromGitHub +, fetchpatch +, fetchsvn +, cmake +, pkg-config +, makeWrapper +, SDL2 +, glew +, openal +, libvorbis +, libogg +, curl +, freetype +, bluez +, libjpeg +, libpng +, enet +, harfbuzz +, mcpp +, wiiuse +, angelscript }: - let dir = "stk-code"; assets = fetchsvn { - url = "https://svn.code.sf.net/p/supertuxkart/code/stk-assets"; - rev = "18218"; + url = "https://svn.code.sf.net/p/supertuxkart/code/stk-assets"; + rev = "18218"; sha256 = "11iv3cqzvbjg33zz5i5gkl2syn6mlw9wqv0jc7h36vjnjqjv17xw"; - name = "stk-assets"; + name = "stk-assets"; }; # List of bundled libraries in stk-code/lib to keep @@ -36,19 +55,28 @@ let # Not packaged to this date "sheenbidi" ]; -in stdenv.mkDerivation rec { +in +stdenv.mkDerivation rec { pname = "supertuxkart"; version = "1.2"; src = fetchFromGitHub { - owner = "supertuxkart"; - repo = "stk-code"; - rev = version; + owner = "supertuxkart"; + repo = "stk-code"; + rev = version; sha256 = "1f98whk0v45jgwcsbdsb1qfambvrnbbgwq0w28kjz4278hinwzq6"; - name = dir; + name = dir; }; + patches = [ + (fetchpatch { + # Fix build with SDL 2.0.14 + url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/games-action/supertuxkart/files/supertuxkart-1.2-new-sdl.patch?id=288360dc7ce2f968a2f12099edeace3f3ed1a705"; + sha256 = "1jgab9393qan8qbqf5bf8cgw4mynlr5a6pggqhybzsmaczgnns3n"; + }) + ]; + # Deletes all bundled libs in stk-code/lib except those # That couldn't be replaced with system packages postPatch = '' @@ -58,12 +86,25 @@ in stdenv.mkDerivation rec { nativeBuildInputs = [ cmake pkg-config makeWrapper ]; buildInputs = [ - SDL2 glew openal libvorbis libogg freetype curl bluez libjpeg libpng enet harfbuzz - mcpp wiiuse angelscript + SDL2 + glew + openal + libvorbis + libogg + freetype + curl + bluez + libjpeg + libpng + enet + harfbuzz + mcpp + wiiuse + angelscript ]; cmakeFlags = [ - "-DBUILD_RECORDER=OFF" # libopenglrecorder is not in nixpkgs + "-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" "-DUSE_SYSTEM_WIIUSE=ON"