diff options
Diffstat (limited to 'pkgs/games/openspades/default.nix')
-rw-r--r-- | pkgs/games/openspades/default.nix | 56 |
1 files changed, 25 insertions, 31 deletions
diff --git a/pkgs/games/openspades/default.nix b/pkgs/games/openspades/default.nix index 0438b687a1b97..02e4e9c608f0b 100644 --- a/pkgs/games/openspades/default.nix +++ b/pkgs/games/openspades/default.nix @@ -1,49 +1,43 @@ -{ stdenv, lib, fetchurl, cmake, curl, glew, makeWrapper, mesa, SDL2, - SDL2_image, unzip, wget, zlib, withOpenal ? true, openal ? null }: - -assert withOpenal -> openal != null; +{ stdenv, lib, fetchurl, fetchFromGitHub, cmake, unzip, zip, file +, curl, glew , mesa_noglu, SDL2, SDL2_image, zlib, freetype, imagemagick +, openal , opusfile, libogg +}: stdenv.mkDerivation rec { name = "openspades-${version}"; - version = "0.0.12"; - - src = fetchurl { - url = "https://github.com/yvt/openspades/archive/v${version}.tar.gz"; - sha256 = "1aa848cck8qrp67ha9vrkzm3k24r2aiv1v4dxla6pi22rw98yxzm"; + version = "0.1.1b"; + devPakVersion = "33"; + + src = fetchFromGitHub { + owner = "yvt"; + repo = "openspades"; + rev = "v${version}"; + sha256 = "1xk3il5ykxg68hvwb42kpspcxppdib7y3ysaxb8anmmcsk1m3drn"; }; - # https://github.com/yvt/openspades/issues/354 - postPatch = '' - substituteInPlace Sources/Client/Client_Input.cpp --replace "isnan(" "std::isnan(" - substituteInPlace Sources/Client/Corpse.cpp --replace "isnan(" "std::isnan(" - substituteInPlace Sources/Draw/SWMapRenderer.cpp \ - --replace "isnan(" "std::isnan(" --replace "isinf(" "std::isinf(" - sed '1i#include <cmath>' -i Sources/Client/{Player,Client_Input,Corpse}.cpp \ - -i Sources/Draw/SWMapRenderer.cpp - sed '1i#include <math.h>' -i Sources/Draw/SWFeatureLevel.h - ''; + nativeBuildInputs = [ cmake imagemagick unzip zip file ]; - nativeBuildInputs = - [ cmake curl glew makeWrapper mesa SDL2 SDL2_image unzip wget zlib ] - ++ lib.optional withOpenal openal; + buildInputs = [ + freetype SDL2 SDL2_image mesa_noglu zlib curl glew opusfile openal libogg + ]; cmakeFlags = [ "-DOPENSPADES_INSTALL_BINARY=bin" - "-DOPENSPADES_RESOURCES=NO" ]; - enableParallelBuilding = true; - - devPack = fetchurl { - url = "http://yvt.jp/files/programs/osppaks/DevPaks27.zip"; - sha256 = "05y7wldg70v5ys41fm0c8kipyspn524z4pglwr3p8h0gfz9n52v6"; + devPak = fetchurl { + url = "https://github.com/yvt/openspades-paks/releases/download/r${devPakVersion}/OpenSpadesDevPackage-r${devPakVersion}.zip"; + sha256 = "1bd2fyn7mlxa3xnsvzj08xjzw02baimqvmnix07blfhb78rdq9q9"; }; - preBuild = '' - unzip -u -o $devPack -d Resources/DevPak + postPatch = '' + sed -i 's,^wget .*,cp $devPak "$PAK_NAME",' Resources/downloadpak.sh + patchShebangs Resources ''; - NIX_CFLAGS_LINK = lib.optional withOpenal "-lopenal"; + enableParallelBuilding = true; + + NIX_CFLAGS_LINK = [ "-lopenal" ]; meta = with stdenv.lib; { description = "A compatible client of Ace of Spades 0.75"; |