From c9f06b05c175336e60b3ac994f74cb4a41867c47 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sun, 17 Apr 2011 17:55:29 +0000 Subject: [PATCH] Add Widelands RTS svn path=/nixpkgs/trunk/; revision=26869 --- .../libraries/ggz_base_libs/default.nix | 53 +++++++++++++++ pkgs/games/widelands/default.nix | 67 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 5 ++ 3 files changed, 125 insertions(+) create mode 100644 pkgs/development/libraries/ggz_base_libs/default.nix create mode 100644 pkgs/games/widelands/default.nix diff --git a/pkgs/development/libraries/ggz_base_libs/default.nix b/pkgs/development/libraries/ggz_base_libs/default.nix new file mode 100644 index 000000000000..b74aa3447a3c --- /dev/null +++ b/pkgs/development/libraries/ggz_base_libs/default.nix @@ -0,0 +1,53 @@ +x@{builderDefsPackage + , intltool, openssl, expat, libgcrypt + , ...}: +builderDefsPackage +(a : +let + helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ + []; + + buildInputs = map (n: builtins.getAttr n x) + (builtins.attrNames (builtins.removeAttrs x helperArgNames)); + sourceInfo = rec { + baseName="ggz-base-libs"; + version="0.99.5"; + name="${baseName}-snapshot-${version}"; + url="http://mirrors.ibiblio.org/pub/mirrors/ggzgamingzone/ggz/snapshots/${name}.tar.gz"; + hash="1cw1vg0fbj36zyggnzidx9cbjwfc1yr4zqmsipxnvns7xa2awbdk"; + }; +in +rec { + src = a.fetchurl { + url = sourceInfo.url; + sha256 = sourceInfo.hash; + }; + + inherit (sourceInfo) name version; + inherit buildInputs; + + /* doConfigure should be removed if not needed */ + phaseNames = ["doConfigure" "doMakeInstall"]; + + configureFlags = [ + "--with-ssl-dir=${a.openssl}/" + "--with-tls" + ]; + + meta = { + description = "GGZ Gaming zone libraries"; + maintainers = with a.lib.maintainers; + [ + raskin + ]; + platforms = with a.lib.platforms; + linux; + license = a.lib.licenses.gpl2; + }; + passthru = { + updateInfo = { + downloadPage = "http://www.ggzgamingzone.org/releases/"; + }; + }; +}) x + diff --git a/pkgs/games/widelands/default.nix b/pkgs/games/widelands/default.nix new file mode 100644 index 000000000000..8082fde76943 --- /dev/null +++ b/pkgs/games/widelands/default.nix @@ -0,0 +1,67 @@ +x@{builderDefsPackage + , libjpeg, boost, SDL, SDL_gfx, SDL_image, SDL_net, SDL_ttf, SDL_sound + , gettext, zlib, libiconv, libpng, python, expat, lua5, glew, doxygen + , cmake, ggz_base_libs, mesa, SDL_mixer + , ...}: +builderDefsPackage +(a : +let + helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ + []; + + buildInputs = map (n: builtins.getAttr n x) + (builtins.attrNames (builtins.removeAttrs x helperArgNames)); + sourceInfo = rec { + baseName="widelands"; + version="build16"; + name="${baseName}-${version}"; + project="${baseName}"; + url="http://launchpad.net/${project}/${version}/${version}/+download/${name}-src.tar.bz2"; + hash="0pb2d73c6hynhp1x54rcfbibrrri7lyxjybd1hicn503qcakrnyq"; + }; +in +rec { + src = a.fetchurl { + url = sourceInfo.url; + sha256 = sourceInfo.hash; + }; + + inherit (sourceInfo) name version; + inherit buildInputs; + + /* doConfigure should be removed if not needed */ + phaseNames = ["killBuildDir" "doCmake" "doMakeInstall" "createScript"]; + + killBuildDir = a.fullDepEntry '' + rm -r build + '' ["minInit" "doUnpack"]; + + cmakeFlags = [ + "-DLUA_LIBRARIES=-llua" + ]; + + createScript = a.fullDepEntry '' + mkdir -p "$out/bin" + echo '#! ${a.stdenv.shell}' >> "$out/bin/widelands" + echo "cd \"$out/share/games/widelands\"" >> "$out/bin/widelands" + echo "\"$out/games/widelands\" \"\$@\"" >> "$out/bin/widelands" + chmod a+x "$out/bin/widelands" + '' ["minInit"]; + + meta = { + description = "Widelands RTS with multiple-goods economy"; + maintainers = with a.lib.maintainers; + [ + raskin + ]; + platforms = with a.lib.platforms; + linux; + license = a.lib.licenses.gpl; + }; + passthru = { + updateInfo = { + downloadPage = "${abort ''Specify download page''}"; + }; + }; +}) x + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 49f692b5e208..78eba861e865 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3102,6 +3102,8 @@ let gdal = callPackage ../development/libraries/gdal { }; + ggz_base_libs = callPackage ../development/libraries/ggz_base_libs {}; + giblib = callPackage ../development/libraries/giblib { }; glew = callPackage ../development/libraries/glew { }; @@ -6864,6 +6866,7 @@ let inherit (gtkLibs) gtk glib; inherit (xlibs) libX11 kbproto; libsoup = gnome28.libsoup_2_33; + inherit (gnome28) glib_networking; }; valknut = callPackage ../applications/networking/p2p/valknut { @@ -7311,6 +7314,8 @@ let warzone2100 = callPackage ../games/warzone2100 { }; + widelands = callPackage ../games/widelands {}; + xboard = builderDefsPackage (import ../games/xboard) { inherit (xlibs) libX11 xproto libXt libXaw libSM libICE libXmu libXext libXpm;