spring: 105.0.1-1486-g8581792 -> 106.0

This commit is contained in:
Thiago Kenji Okada 2022-12-08 22:44:42 +00:00
parent a5f39d3856
commit cde03e6679
2 changed files with 44 additions and 62 deletions

View file

@ -1,63 +1,51 @@
{ lib { lib
, stdenv , stdenv
, fetchFromGitHub
, cmake
, xz
, boost
, libdevil
, zlib
, p7zip
, openal
, libvorbis
, glew
, freetype
, xorg
, SDL2
, libGLU
, libGL
, asciidoc , asciidoc
, boost
, cmake
, curl
, docbook_xsl , docbook_xsl
, docbook_xsl_ns , docbook_xsl_ns
, curl , fetchurl
, makeWrapper , freetype
, glew
, jdk , jdk
, python , libdevil
, systemd , libGL
, libGLU
, libunwind , libunwind
, which , libvorbis
, makeWrapper
, minizip , minizip
, openal
, p7zip
, python3
, SDL2
, xorg
, xz
, zlib
, withAI ? true # support for AI Interfaces and Skirmish AIs , withAI ? true # support for AI Interfaces and Skirmish AIs
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "spring"; pname = "spring";
version = "105.0.1-${buildId}-g${shortRev}"; version = "106.0";
# usually the latest in https://github.com/spring/spring/commits/maintenance
rev = "8581792eac65e07cbed182ccb1e90424ce3bd8fc";
shortRev = builtins.substring 0 7 rev;
buildId = "1486";
# taken from https://github.com/spring/spring/commits/maintenance src = fetchurl {
src = fetchFromGitHub { url = "https://springrts.com/dl/buildbot/default/master/${version}/source/spring_${version}_src.tar.gz";
owner = "spring"; sha256 = "sha256-mSA4ioIv68NMEB72lYnwDb1QOuWr1VHwu4+grAoHlV0=";
repo = pname;
inherit rev;
sha256 = "05lvd8grqmv7vl8rrx02rhl0qhmm58dyi6s78b64j3fkia4sfj1r";
fetchSubmodules = true;
}; };
# The cmake included module correcly finds nix's glew, however postPatch = ''
# it has to be the bundled FindGLEW for headless or dedicated builds patchShebangs .
prePatch = ''
substituteInPlace ./rts/build/cmake/FindAsciiDoc.cmake \ substituteInPlace ./rts/build/cmake/FindAsciiDoc.cmake \
--replace "PATHS /usr /usr/share /usr/local /usr/local/share" "PATHS ${docbook_xsl}"\ --replace "PATHS /usr /usr/share /usr/local /usr/local/share" "PATHS ${docbook_xsl}"\
--replace "xsl/docbook/manpages" "share/xml/docbook-xsl/manpages" --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 = [ cmakeFlags = [
@ -68,34 +56,29 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake makeWrapper docbook_xsl docbook_xsl_ns asciidoc ]; nativeBuildInputs = [ cmake makeWrapper docbook_xsl docbook_xsl_ns asciidoc ];
buildInputs = [ buildInputs = [
xz
boost boost
libdevil curl
zlib
p7zip
openal
libvorbis
freetype freetype
glew
libdevil
libGL
libGLU
libunwind
libvorbis
minizip
openal
p7zip
SDL2 SDL2
xorg.libX11 xorg.libX11
xorg.libXcursor xorg.libXcursor
libGLU xz
libGL zlib
glew
curl
systemd
libunwind
which
minizip
] ]
++ lib.optional withAI jdk ++ lib.optionals withAI [ python3 jdk ];
++ lib.optional withAI python;
NIX_CFLAGS_COMPILE = "-fpermissive"; # GL header minor incompatibility
postInstall = '' postInstall = ''
wrapProgram "$out/bin/spring" \ 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; { meta = with lib; {
@ -103,6 +86,6 @@ stdenv.mkDerivation rec {
description = "A powerful real-time strategy (RTS) game engine"; description = "A powerful real-time strategy (RTS) game engine";
license = licenses.gpl2Plus; license = licenses.gpl2Plus;
maintainers = with maintainers; [ qknight domenkozar sorki ]; maintainers = with maintainers; [ qknight domenkozar sorki ];
platforms = [ "i686-linux" "x86_64-linux" ]; platforms = [ "x86_64-linux" ];
}; };
} }

View file

@ -34800,8 +34800,7 @@ with pkgs;
# You still can override by passing more arguments. # You still can override by passing more arguments.
space-orbit = callPackage ../games/space-orbit { }; space-orbit = callPackage ../games/space-orbit { };
spring = callPackage ../games/spring spring = callPackage ../games/spring { asciidoc = asciidoc-full; };
{ stdenv = gcc10StdenvCompat; asciidoc = asciidoc-full; };
springLobby = callPackage ../games/spring/springlobby.nix { }; springLobby = callPackage ../games/spring/springlobby.nix { };