From cde03e66796b02c63705885363caef610ff5f80e Mon Sep 17 00:00:00 2001 From: Thiago Kenji Okada Date: Thu, 8 Dec 2022 22:44:42 +0000 Subject: [PATCH] spring: 105.0.1-1486-g8581792 -> 106.0 --- pkgs/games/spring/default.nix | 103 +++++++++++++------------------- pkgs/top-level/all-packages.nix | 3 +- 2 files changed, 44 insertions(+), 62 deletions(-) diff --git a/pkgs/games/spring/default.nix b/pkgs/games/spring/default.nix index 12c3ce59e67..8577db773e3 100644 --- a/pkgs/games/spring/default.nix +++ b/pkgs/games/spring/default.nix @@ -1,63 +1,51 @@ { lib , stdenv -, fetchFromGitHub -, cmake -, xz -, boost -, libdevil -, zlib -, p7zip -, openal -, libvorbis -, glew -, freetype -, xorg -, SDL2 -, libGLU -, libGL , asciidoc +, boost +, cmake +, curl , docbook_xsl , docbook_xsl_ns -, curl -, makeWrapper +, fetchurl +, freetype +, glew , jdk -, python -, systemd +, libdevil +, libGL +, libGLU , libunwind -, which +, libvorbis +, makeWrapper , minizip +, openal +, p7zip +, python3 +, SDL2 +, xorg +, xz +, zlib , withAI ? true # support for AI Interfaces and Skirmish AIs }: stdenv.mkDerivation rec { pname = "spring"; - version = "105.0.1-${buildId}-g${shortRev}"; - # usually the latest in https://github.com/spring/spring/commits/maintenance - rev = "8581792eac65e07cbed182ccb1e90424ce3bd8fc"; - shortRev = builtins.substring 0 7 rev; - buildId = "1486"; + version = "106.0"; - # taken from https://github.com/spring/spring/commits/maintenance - src = fetchFromGitHub { - owner = "spring"; - repo = pname; - inherit rev; - sha256 = "05lvd8grqmv7vl8rrx02rhl0qhmm58dyi6s78b64j3fkia4sfj1r"; - fetchSubmodules = true; + src = fetchurl { + url = "https://springrts.com/dl/buildbot/default/master/${version}/source/spring_${version}_src.tar.gz"; + sha256 = "sha256-mSA4ioIv68NMEB72lYnwDb1QOuWr1VHwu4+grAoHlV0="; }; - # The cmake included module correcly finds nix's glew, however - # it has to be the bundled FindGLEW for headless or dedicated builds - prePatch = '' + postPatch = '' + patchShebangs . + substituteInPlace ./rts/build/cmake/FindAsciiDoc.cmake \ --replace "PATHS /usr /usr/share /usr/local /usr/local/share" "PATHS ${docbook_xsl}"\ --replace "xsl/docbook/manpages" "share/xml/docbook-xsl/manpages" - substituteInPlace ./rts/Rendering/GL/myGL.cpp \ - --replace "static constexpr const GLubyte* qcriProcName" "static const GLubyte* qcriProcName" - patchShebangs . - rm rts/build/cmake/FindGLEW.cmake - echo "${version} maintenance" > VERSION + # The cmake included module correcly finds nix's glew, however + # it has to be the bundled FindGLEW for headless or dedicated builds + rm rts/build/cmake/FindGLEW.cmake ''; cmakeFlags = [ @@ -68,34 +56,29 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake makeWrapper docbook_xsl docbook_xsl_ns asciidoc ]; buildInputs = [ - xz boost - libdevil - zlib - p7zip - openal - libvorbis + curl freetype + glew + libdevil + libGL + libGLU + libunwind + libvorbis + minizip + openal + p7zip SDL2 xorg.libX11 xorg.libXcursor - libGLU - libGL - glew - curl - systemd - libunwind - which - minizip + xz + zlib ] - ++ lib.optional withAI jdk - ++ lib.optional withAI python; - - NIX_CFLAGS_COMPILE = "-fpermissive"; # GL header minor incompatibility + ++ lib.optionals withAI [ python3 jdk ]; postInstall = '' wrapProgram "$out/bin/spring" \ - --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc systemd ]}" + --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc ]}" ''; meta = with lib; { @@ -103,6 +86,6 @@ stdenv.mkDerivation rec { description = "A powerful real-time strategy (RTS) game engine"; license = licenses.gpl2Plus; maintainers = with maintainers; [ qknight domenkozar sorki ]; - platforms = [ "i686-linux" "x86_64-linux" ]; + platforms = [ "x86_64-linux" ]; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6d993a90eae..e21af0d8808 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -34800,8 +34800,7 @@ with pkgs; # You still can override by passing more arguments. space-orbit = callPackage ../games/space-orbit { }; - spring = callPackage ../games/spring - { stdenv = gcc10StdenvCompat; asciidoc = asciidoc-full; }; + spring = callPackage ../games/spring { asciidoc = asciidoc-full; }; springLobby = callPackage ../games/spring/springlobby.nix { };