diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2018-03-05 12:49:52 +0100 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2018-03-05 14:53:27 +0100 |
commit | 565bd805e6aea9258ead5449b46c5e56ae0568fb (patch) | |
tree | 81a23c558823fc865d180bb8b6318d24ec38729d /pkgs/games | |
parent | 25a78f7234ced8840610178a695078b5b08d9e6b (diff) | |
parent | 97693915e1d31478528ee72e8d1fea5aa384577b (diff) |
Merge branch 'master'
Diffstat (limited to 'pkgs/games')
26 files changed, 272 insertions, 76 deletions
diff --git a/pkgs/games/angband/default.nix b/pkgs/games/angband/default.nix index 34b31cdf7ec81..317550059b455 100644 --- a/pkgs/games/angband/default.nix +++ b/pkgs/games/angband/default.nix @@ -1,14 +1,14 @@ { stdenv, fetchFromGitHub, autoreconfHook, ncurses5 }: stdenv.mkDerivation rec { - version = "4.0.5"; + version = "4.1.2"; name = "angband-${version}"; src = fetchFromGitHub { owner = "angband"; repo = "angband"; rev = version; - sha256 = "1l7ybqmsxpsijm7iqiqjpa7lhjafxml743q4crxn8wnwrbjzbi86"; + sha256 = "1n18i8ni154ym3d32zlbxcw0zz62h66iifr0h1yvvv2kp13p5zix"; }; nativeBuildInputs = [ autoreconfHook ]; diff --git a/pkgs/games/crawl/default.nix b/pkgs/games/crawl/default.nix index 3dae66255a3fa..66e199a3f0d2f 100644 --- a/pkgs/games/crawl/default.nix +++ b/pkgs/games/crawl/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { name = "crawl-${version}${lib.optionalString tileMode "-tiles"}"; - version = "0.20.1"; + version = "0.21.1"; src = fetchFromGitHub { owner = "crawl-ref"; repo = "crawl-ref"; rev = version; - sha256 = "1ic3prvydmw753lasrvzgndcw0k4329pnafpphfpxwvdfsmhbi26"; + sha256 = "191pmd7vpp9qni5l13fb5s8g1axniah8a6hhi31gp0848c8n7hlh"; }; patches = [ ./crawl_purify.patch ]; @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { fontsPath = lib.optionalString tileMode dejavu_fonts; - makeFlags = [ "prefix=$(out)" "FORCE_CC=gcc" "FORCE_CXX=g++" "HOSTCXX=g++" + makeFlags = [ "prefix=$(out)" "FORCE_CC=cc" "FORCE_CXX=c++" "HOSTCXX=c++" "SAVEDIR=~/.crawl" "sqlite=${sqlite.dev}" ] ++ lib.optional tileMode "TILES=y"; diff --git a/pkgs/games/dwarf-fortress/dfhack/default.nix b/pkgs/games/dwarf-fortress/dfhack/default.nix index 58ca2e40246ef..f9a61ddbf8b2c 100644 --- a/pkgs/games/dwarf-fortress/dfhack/default.nix +++ b/pkgs/games/dwarf-fortress/dfhack/default.nix @@ -5,12 +5,12 @@ let dfVersion = "0.44.05"; - version = "${dfVersion}-alpha1"; + version = "${dfVersion}-r2"; rev = "refs/tags/${version}"; sha256 = "1hr3qsx7rd36syw7dfp4lh8kpmz1pvva757za2yn34hj1jm4nh52"; # revision of library/xml submodule - xmlRev = "3a9f401d196ee8ebc53edb9e15a13bfcb0879b4e"; + xmlRev = "2794f8a6d7405d4858bac486a0bb17b94740c142"; arch = if stdenv.system == "x86_64-linux" then "64" diff --git a/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix b/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix index 20f7502f27ddc..8cdfc426d8304 100644 --- a/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix +++ b/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "dwarf-therapist-original-${version}"; - version = "39.2.0"; + version = "39.2.1"; src = fetchFromGitHub { owner = "Dwarf-Therapist"; repo = "Dwarf-Therapist"; rev = "v${version}"; - sha256 = "1ddy9b9ly1231pnjs43gj7pvc77wjvs4j2rlympal81vyabaphmy"; + sha256 = "1dgcn1a4sz649kj94ldqy4ms7zhwpaj3q4r86b0yfh6dda8jzlgp"; }; outputs = [ "out" "layouts" ]; diff --git a/pkgs/games/freecell-solver/default.nix b/pkgs/games/freecell-solver/default.nix index dd14edf8eb128..263bf5c29dfc3 100644 --- a/pkgs/games/freecell-solver/default.nix +++ b/pkgs/games/freecell-solver/default.nix @@ -6,11 +6,11 @@ with stdenv.lib; stdenv.mkDerivation rec{ name = "freecell-solver-${version}"; - version = "4.8.0"; + version = "4.16.0"; src = fetchurl { url = "http://fc-solve.shlomifish.org/downloads/fc-solve/${name}.tar.xz"; - sha256 = "0274l1p71ps222i62whqfkg80fcc8m4w2hmpbrbbd5gh8kfpman3"; + sha256 = "1ihrmxbsli7c1lm5gw9xgrakyn4nsmaj1zgk5gza2ywnfpgdb0ac"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/games/freedroidrpg/default.nix b/pkgs/games/freedroidrpg/default.nix new file mode 100644 index 0000000000000..875af8e06642b --- /dev/null +++ b/pkgs/games/freedroidrpg/default.nix @@ -0,0 +1,62 @@ +{ fetchurl, stdenv, pkgconfig, gettext, python3, SDL, SDL_image, SDL_gfx, SDL_mixer, libogg, libvorbis, lua5_3, libjpeg, libpng, zlib, libiconv }: + +let + version = "0.16.1"; +in stdenv.mkDerivation rec { + name = "freedroidrpg-${version}"; + + src = fetchurl { + url = "ftp://ftp.osuosl.org/pub/freedroid/freedroidRPG-${stdenv.lib.versions.majorMinor version}/freedroidRPG-${version}.tar.gz"; + sha256 = "0n4kn38ncmcy3lrxmq8fjry6c1z50z4q1zcqfig0j4jb0dsz2va2"; + }; + + nativeBuildInputs = [ pkgconfig gettext python3 ]; + + buildInputs = [ + SDL SDL_image SDL_gfx SDL_mixer libogg libvorbis lua5_3 libjpeg libpng zlib + ] ++ stdenv.lib.optional stdenv.isDarwin libiconv; + + meta = with stdenv.lib; { + description = "Isometric 3D RPG similar to game Diablo"; + + longDescription = '' + <para> + FreedroidRPG is an original isometric 3D role playing game + taking place in the future, on Earth. It features action and + dialogs. + </para> + <para> + The game tells the story of a world destroyed by a conflict between + robots and their human masters. Play as Tux in a quest to save the + world from the murderous rebel bots who know no mercy. You get to + choose which path you wish to follow, and freedom of choice is + everywhere in the game. + </para> + <para> + FreedroidRPG features a real time combat system with melee and + ranged weapons, fairly similar to the proprietary game Diablo. + There is an innovative system of programs that can be run in order + to take control of enemy robots, alter their behavior, or improve one's + characteristics. You can use over 50 different kinds of items and + fight countless enemies on your way to your destiny. An advanced + dialog system provides story background and immersive role + playing situations. + </para> + <para> + The game is complete, fully playable, and can provide about + 12 hours of fun. It is still being actively developed, and + help is welcome in many areas. People having - or trying to acquire - + programming, map editing, or writing skills will find FreedroidRPG + to be an exciting, fast-moving project in which they can fully + express their creativity. + </para> + ''; + + homepage = http://www.freedroid.org/; + + license = licenses.gpl2Plus; + + maintainers = with maintainers; [ jtojnar ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/games/gnujump/default.nix b/pkgs/games/gnujump/default.nix new file mode 100644 index 0000000000000..ae2cbd818417c --- /dev/null +++ b/pkgs/games/gnujump/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchurl, SDL, SDL_image, SDL_mixer }: + +stdenv.mkDerivation rec { + name = "gnujump-${version}"; + version = "1.0.8"; + src = fetchurl { + url = "mirror://gnu/gnujump/${name}.tar.gz"; + sha256 = "05syy9mzbyqcfnm0hrswlmhwlwx54f0l6zhcaq8c1c0f8dgzxhqk"; + }; + buildInputs = [ SDL SDL_image SDL_mixer ]; + + meta = with stdenv.lib; { + homepage = "https://jump.gnu.sinusoid.es/"; + description = "A clone of the simple yet addictive game Xjump"; + longDescription = '' + The goal in this game is to jump to the next floor trying not to fall + down. As you go upper in the Falling Tower the floors will fall faster. + Try to survive longer get upper than anyone. It might seem too simple but + once you've tried you'll realize how addictive this is. + ''; + license = licenses.gpl3; + maintainers = with maintainers; [ fgaz ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/games/instead/default.nix b/pkgs/games/instead/default.nix index ffa414cac3a1c..343b2948d5ea8 100644 --- a/pkgs/games/instead/default.nix +++ b/pkgs/games/instead/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, SDL, SDL_ttf, SDL_image, SDL_mixer, pkgconfig, lua, zlib, unzip }: let - version = "3.0.1"; + version = "3.2.0"; # I took several games at random from http://instead.syscall.ru/games/ games = [ @@ -33,7 +33,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://sourceforge/project/instead/instead/${version}/instead_${version}.tar.gz"; - sha256 = "0ynqzmr35zd1vbbv8n3vk93zj0njhs45w9z33wwkphg2zlniwnzb"; + sha256 = "0l57qdngxv9nbfj4ixr4fyanlazmdib2kr1nzv3g578308xzjv6a"; }; NIX_LDFLAGS = "-llua -lgcc_s"; diff --git a/pkgs/games/lgogdownloader/default.nix b/pkgs/games/lgogdownloader/default.nix index c857ccc47a857..ba273cfb6b97a 100644 --- a/pkgs/games/lgogdownloader/default.nix +++ b/pkgs/games/lgogdownloader/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { name = "lgogdownloader-${version}"; - version = "3.2"; + version = "3.3"; src = fetchFromGitHub { owner = "Sude-"; repo = "lgogdownloader"; rev = "v${version}"; - sha256 = "0p1zh2l8g4y2z02xj0fndbfhcxgcpwhf5d9izwsdi3yljvqv23np"; + sha256 = "056idwwxjcp2zjqk5h7l3py1h45sax4vbsm93bz9shnfx1s1h3gc"; }; nativeBuildInputs = [ cmake pkgconfig help2man ]; diff --git a/pkgs/games/openclonk/default.nix b/pkgs/games/openclonk/default.nix index 0b0561afd24dc..d3fb8c7bc58e7 100644 --- a/pkgs/games/openclonk/default.nix +++ b/pkgs/games/openclonk/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, cmake, gnome3, pcre, freetype, glew, gtk3, libjpeg, libpng, SDL, SDL_mixer, libupnp, xorg, pkgconfig, gtest, tinyxml, gmock, readline, - libxkbcommon, epoxy, at_spi2_core, dbus, libxml2, + libxkbcommon, epoxy, at-spi2-core, dbus, libxml2, enableSoundtrack ? false # Enable the "Open Clonk Soundtrack - Explorers Journey" by David Oerther }: @@ -29,7 +29,7 @@ in stdenv.mkDerivation rec { buildInputs = [ cmake gnome3.gtksourceview pcre freetype glew gtk3 libjpeg libpng SDL SDL_mixer libupnp tinyxml xorg.libpthreadstubs libxkbcommon xorg.libXdmcp - pkgconfig gtest gmock readline epoxy at_spi2_core dbus libxml2 + pkgconfig gtest gmock readline epoxy at-spi2-core dbus libxml2 ]; meta = with stdenv.lib; { diff --git a/pkgs/games/openmw/default.nix b/pkgs/games/openmw/default.nix index 53c2cc5d073a7..f64bbe4c12550 100644 --- a/pkgs/games/openmw/default.nix +++ b/pkgs/games/openmw/default.nix @@ -6,12 +6,12 @@ let src = fetchFromGitHub { owner = "OpenMW"; repo = "osg"; - rev = "35f1a459a4ab6da9d70427e6539bdf4faae4cc91"; - sha256 = "1s3a9dpbcc6v8d05pqin4xfv36i2031xpdja1vl8x11cw05fln91"; + rev = "2b4c8e37268e595b82da4b9aadd5507852569b87"; + sha256 = "0admnllxic6dcpic0h100927yw766ab55dix002vvdx36i6994jb"; }; }); in stdenv.mkDerivation rec { - version = "0.42.0"; + version = "0.43.0"; name = "openmw-${version}"; src = fetchFromGitHub { diff --git a/pkgs/games/openspades/default.nix b/pkgs/games/openspades/default.nix index 0da2b24b3a204..582cafcc4d462 100644 --- a/pkgs/games/openspades/default.nix +++ b/pkgs/games/openspades/default.nix @@ -5,14 +5,14 @@ stdenv.mkDerivation rec { name = "openspades-${version}"; - version = "0.1.1b"; + version = "0.1.2"; devPakVersion = "33"; src = fetchFromGitHub { owner = "yvt"; repo = "openspades"; rev = "v${version}"; - sha256 = "1xk3il5ykxg68hvwb42kpspcxppdib7y3ysaxb8anmmcsk1m3drn"; + sha256 = "1mfj46c3pnn1f6awy3b6faxs26i93a5jsrvkdlr12ndsykvi6ng6"; }; nativeBuildInputs = [ cmake imagemagick unzip zip file ]; diff --git a/pkgs/games/pioneer/default.nix b/pkgs/games/pioneer/default.nix index e6989908c65f3..ffe0841184b1b 100644 --- a/pkgs/games/pioneer/default.nix +++ b/pkgs/games/pioneer/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { name = "pioneer-${version}"; - version = "20171001"; + version = "20180203"; src = fetchFromGitHub{ owner = "pioneerspacesim"; repo = "pioneer"; rev = version; - sha256 = "0yxw1zdvidrwc28vxfi3qpx2nq2dix2d6ylwgzq9ph8kgwv9fl5n"; + sha256 = "0hp2mf36kj2v93hka8m8lxw2qhmnjc62wjlpw7c7ix0r8xa01i6h"; }; nativeBuildInputs = [ autoconf automake pkgconfig ]; diff --git a/pkgs/games/pioneers/default.nix b/pkgs/games/pioneers/default.nix index 3898ddba71395..53de9fa29e2d0 100644 --- a/pkgs/games/pioneers/default.nix +++ b/pkgs/games/pioneers/default.nix @@ -1,16 +1,14 @@ -{stdenv, fetchurl, gtk2, pkgconfig, intltool } : +{stdenv, fetchurl, gtk3, pkgconfig, intltool } : stdenv.mkDerivation rec { - name = "pioneers-0.12.3"; + name = "pioneers-15.4"; src = fetchurl { url = "mirror://sourceforge/pio/${name}.tar.gz"; - sha256 = "1yqypk5wmia8fqyrg9mn9xw6yfd0fpkxj1355csw1hgx8mh44y1d"; + sha256 = "1p1d18hrfmqcnghip3shkzcs5qkz6j99jvkdkqfi7pqdvjc323cs"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ gtk2 intltool ]; - - hardeningDisable = [ "format" ]; + nativeBuildInputs = [ pkgconfig intltool ]; + buildInputs = [ gtk3 ]; meta = { homepage = http://pio.sourceforge.net/; diff --git a/pkgs/games/quake3/ioquake/default.nix b/pkgs/games/quake3/ioquake/default.nix index 70e330fa1ce44..4e3a50b37b9a2 100644 --- a/pkgs/games/quake3/ioquake/default.nix +++ b/pkgs/games/quake3/ioquake/default.nix @@ -1,20 +1,23 @@ -{ lib, stdenv, fetchFromGitHub, which, pkgconfig, xlibsWrapper, SDL2, libGLU_combined, openalSoft -, curl, speex, opusfile, libogg, libopus, libjpeg, mumble, freetype +{ stdenv, fetchFromGitHub, which, pkgconfig, SDL2, libGLU_combined, openalSoft +, curl, speex, opusfile, libogg, libvorbis, libopus, libjpeg, mumble, freetype }: stdenv.mkDerivation rec { name = "ioquake3-git-${version}"; - version = "2017-07-25"; + version = "2018-02-23"; src = fetchFromGitHub { owner = "ioquake"; repo = "ioq3"; - rev = "356ae10ef65d4401958d50f03288dcb22d957c96"; - sha256 = "0dz4zqlb9n3skaicj0vfvq4nr3ig80s8nwj9m87b39wc9wq34c5j"; + rev = "0d6edd227a13f1447938da1d1b020303c2545eb2"; + sha256 = "1nsagyzrai8cxhabcv2my8bbwmwckvri288j6x4qi5bmp78xl4hx"; }; nativeBuildInputs = [ which pkgconfig ]; - buildInputs = [ xlibsWrapper SDL2 libGLU_combined openalSoft curl speex opusfile libogg libopus libjpeg freetype mumble ]; + buildInputs = [ + SDL2 libGLU_combined openalSoft curl speex opusfile libogg libvorbis libopus libjpeg + freetype mumble + ]; enableParallelBuilding = true; @@ -28,11 +31,11 @@ stdenv.mkDerivation rec { mkdir -p $out/baseq3 ''; - meta = { + meta = with stdenv.lib; { homepage = https://ioquake3.org/; description = "First person shooter engine based on the Quake 3: Arena and Quake 3: Team Arena"; - license = lib.licenses.gpl2; - platforms = lib.platforms.linux; - maintainers = [ lib.maintainers.eelco lib.maintainers.abbradar ]; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = with maintainers; [ eelco abbradar ]; }; } diff --git a/pkgs/games/rocksndiamonds/default.nix b/pkgs/games/rocksndiamonds/default.nix index caaedc44ee0c3..d563a8265b5d2 100644 --- a/pkgs/games/rocksndiamonds/default.nix +++ b/pkgs/games/rocksndiamonds/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { name = "${project}-${version}"; project = "rocksndiamonds"; - version = "4.0.0.2"; + version = "4.0.1.1"; src = fetchurl { url = "https://www.artsoft.org/RELEASES/unix/${project}/${name}.tar.gz"; - sha256 = "0dzn6vlayvnkjm64zwva337rn07lc21kq93m2h8zz8j3wpl11pb4"; + sha256 = "0f2m29m53sngg2kv4km91nxbr53rzhchbpqx5dzrv3p5hq1hp936"; }; desktopItem = makeDesktopItem { diff --git a/pkgs/games/sil/default.nix b/pkgs/games/sil/default.nix new file mode 100644 index 0000000000000..de91f26d95de9 --- /dev/null +++ b/pkgs/games/sil/default.nix @@ -0,0 +1,63 @@ +{ stdenv, fetchzip, ncurses, libX11, libXaw, libXt, libXext, libXmu, makeWrapper, writeScript, ... }: +let + setup = writeScript "setup" '' + mkdir -p "$ANGBAND_PATH" + # Copy all the data files into place + cp -ar $1/* "$ANGBAND_PATH" + # The copied files are not writable, make them so + chmod +w -R "$ANGBAND_PATH" + ''; +in +stdenv.mkDerivation rec { + name = "Sil-${version}"; + version = "1.3.0"; + + src = fetchzip { + url = "http://www.amirrorclear.net/flowers/game/sil/Sil-130-src.zip"; + sha256 = "1amp2mr3fxascra0k76sdsvikjh8g76nqh46kka9379zd35lfq8w"; + stripRoot=false; + }; + + buildInputs = [ makeWrapper ncurses libX11 libXaw libXt libXext libXmu ]; + + sourceRoot = "source/Sil/src"; + + makefile = "Makefile.std"; + + prePatch = '' + # Allow usage of ANGBAND_PATH + substituteInPlace config.h --replace "#define FIXED_PATHS" "" + ''; + + preConfigure = '' + buildFlagsArray+=("LIBS=-lXaw -lXext -lSM -lICE -lXmu -lXt -lX11 -lncurses") + ''; + + installPhase = '' + # the makefile doesn't have a sensible install target, so we hav to do it ourselves + mkdir -p $out/bin + cp sil $out/bin/sil + # Wrap the program to set a user-local ANGBAND_PATH, and run the setup script to copy files into place + # We could just use the options for a user-local save and scores dir, but it tried to write to the + # lib directory anyway, so we might as well give everyone a copy + wrapProgram $out/bin/sil \ + --run "set -u" \ + --run "export ANGBAND_PATH=\$HOME/.sil" \ + --run "${setup} ${src}/Sil/lib" + ''; + + meta = { + description = "A rouge-like game set in the first age of Middle-earth"; + longDescription = '' + A game of adventure set in the first age of Middle-earth, when the world still + rang with elven song and gleamed with dwarven mail. + + Walk the dark halls of Angband. Slay creatures black and fell. Wrest a shining + Silmaril from Morgoth’s iron crown. + ''; + homepage = http://www.amirrorclear.net/flowers/game/sil/index.html; + license = stdenv.lib.licenses.gpl2; + maintainers = [ stdenv.lib.maintainers.michaelpj ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/games/steam/runtime-wrapped.nix b/pkgs/games/steam/runtime-wrapped.nix index 525ea8eeec815..2030425ba1295 100644 --- a/pkgs/games/steam/runtime-wrapped.nix +++ b/pkgs/games/steam/runtime-wrapped.nix @@ -38,7 +38,7 @@ let libcap SDL2 libusb1 - dbus_glib + dbus-glib libav atk # Only libraries are needed from those two diff --git a/pkgs/games/the-powder-toy/default.nix b/pkgs/games/the-powder-toy/default.nix index ffbcd595cc354..c70feca0860fa 100644 --- a/pkgs/games/the-powder-toy/default.nix +++ b/pkgs/games/the-powder-toy/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "the-powder-toy-${version}"; - version = "92.0.331"; + version = "92.5"; src = fetchFromGitHub { owner = "simtr"; repo = "The-Powder-Toy"; rev = "v${version}"; - sha256 = "185zlg20qk6ic9llyf4xka923snqrpdazg568raz0jiafzzsirax"; + sha256 = "1n15kgl4qnz55b32ddgmhrv64cl3awbds8arycn7mkf7akwdg1g6"; }; patches = [ ./fix-env.patch ]; diff --git a/pkgs/games/tintin/default.nix b/pkgs/games/tintin/default.nix index 4514735bb7094..286e408e25556 100644 --- a/pkgs/games/tintin/default.nix +++ b/pkgs/games/tintin/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, zlib, pcre }: stdenv.mkDerivation rec { - name = "tintin-2.01.1"; + name = "tintin-2.01.4"; src = fetchurl { url = "mirror://sourceforge/tintin/${name}.tar.gz"; - sha256 = "195wrfcys8yy953gdrl1gxryhjnx9lg1vqgxm3dyzm8bi18aa2yc"; + sha256 = "1g7bh8xs1ml0iyraps3a3dzaycci922y7fk5j0wyr4ssyjzsy8nx"; }; buildInputs = [ zlib pcre ]; diff --git a/pkgs/games/tome4/default.nix b/pkgs/games/tome4/default.nix index 390ab1eefd18b..83f34f5b04afa 100644 --- a/pkgs/games/tome4/default.nix +++ b/pkgs/games/tome4/default.nix @@ -1,43 +1,86 @@ -{stdenv, fetchurl, openal, libpng, libvorbis, libGLU, premake4, SDL2, SDL2_image, SDL2_ttf }: +{ stdenv, fetchurl, makeDesktopItem, makeWrapper, premake4, unzip +, openal, libpng, libvorbis, libGLU, SDL2, SDL2_image, SDL2_ttf }: + +let + pname = "tome4"; + + desktop = makeDesktopItem { + desktopName = pname; + name = pname; + exec = "@out@/bin/${pname}"; + icon = "${pname}"; + terminal = "False"; + comment = "An open-source, single-player, role-playing roguelike game set in the world of Eyal."; + type = "Application"; + categories = "Game;RolePlaying;"; + genericName = pname; + }; + +in stdenv.mkDerivation rec { + name = "${pname}-${version}"; + version = "1.5.5"; -stdenv.mkDerivation rec { - version = "1.4.9"; - name = "tome4-${version}"; src = fetchurl { url = "https://te4.org/dl/t-engine/t-engine4-src-${version}.tar.bz2"; - sha256 = "0c82m0g1ps64zghgdrp78m6bvfngcb75whhknqiailld7kz1g9xl"; + sha256 = "0v2qgdfpvdzd1bcbp9v8pfahj1bgczsq2d4xfhh5wg11jgjcwz03"; }; - nativeBuildInputs = [ premake4 ]; + + nativeBuildInputs = [ premake4 makeWrapper unzip ]; + + # tome4 vendors quite a few libraries so someone might want to look into avoiding that... buildInputs = [ libGLU openal libpng libvorbis SDL2 SDL2_ttf SDL2_image ]; + + enableParallelBuilding = true; + NIX_CFLAGS_COMPILE = [ "-I${SDL2_image}/include/SDL2" "-I${SDL2_ttf}/include/SDL2" ]; - preConfigure = '' + + postPatch = '' substituteInPlace premake4.lua \ --replace "/opt/SDL-2.0/include/SDL2" "${SDL2.dev}/include/SDL2" \ --replace "/usr/include/GL" "/run/opengl-driver/include" + ''; + + preConfigure = '' premake4 gmake ''; + makeFlags = [ "config=release" ]; + + # The wrapper needs to cd into the correct directory as tome4's detection of + # the game asset root directory is faulty. + installPhase = '' - install -Dm755 t-engine $out/opt/tome4/t-engine - cat > tome4 <<EOF -#!/bin/sh -cd $out/opt/tome4 -./t-engine & -EOF - install -Dm755 tome4 $out/bin/tome4 - cp -r bootstrap $out/opt/tome4 - cp -r game $out/opt/tome4 + runHook preInstall + + dir=$out/share/${pname} + + install -Dm755 t-engine $dir/t-engine + cp -r bootstrap game $dir + makeWrapper $dir/t-engine $out/bin/${pname} \ + --run "cd $dir" + + install -Dm755 ${desktop}/share/applications/${pname}.desktop $out/share/applications/${pname}.desktop + substituteInPlace $out/share/applications/${pname}.desktop \ + --subst-var out + + unzip -oj -qq game/engines/te4-${version}.teae data/gfx/te4-icon.png + install -Dm644 te4-icon.png $out/share/icons/hicolor/64x64/${pname}.png + + install -Dm644 -t $out/share/doc/${pname} CONTRIBUTING COPYING COPYING-MEDIA CREDITS + + runHook postInstall ''; + meta = with stdenv.lib; { - homepage = https://te4.org/; description = "Tales of Maj'eyal (rogue-like game)"; - maintainers = [ maintainers.chattered ]; + homepage = https://te4.org/; license = licenses.gpl3; + maintainers = with maintainers; [ chattered peterhoeg ]; platforms = platforms.linux; }; } diff --git a/pkgs/games/uqm/3dovideo.nix b/pkgs/games/uqm/3dovideo.nix index 0eb6e02eac54e..8d1bf2b688726 100644 --- a/pkgs/games/uqm/3dovideo.nix +++ b/pkgs/games/uqm/3dovideo.nix @@ -46,7 +46,7 @@ in stdenv.mkDerivation { The reason for this is because the 3DO uses its own proprietary disk format. - Save the file as videos.tar and use "nix-prefetch-url file://${name}" to + Save the file as videos.tar and use "nix-prefetch-url file://\$PWD/${name}" to add it to the Nix store. [*] ${helper}/bin/uqm3donix CDIMAGE ${name} diff --git a/pkgs/games/vessel/default.nix b/pkgs/games/vessel/default.nix index 34b9a606fb964..62feeb97d5215 100644 --- a/pkgs/games/vessel/default.nix +++ b/pkgs/games/vessel/default.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation rec { goBuyItNow = '' We cannot download the full version automatically, as you require a license. Once you bought a license, you need to add your downloaded version to the nix store. - You can do this by using "nix-prefetch-url file://${name}-bin" in the + You can do this by using "nix-prefetch-url file://\$PWD/${name}-bin" in the directory where you saved it. ''; diff --git a/pkgs/games/wesnoth/dev.nix b/pkgs/games/wesnoth/dev.nix index 95d49dd637599..9fd2dc97d980e 100644 --- a/pkgs/games/wesnoth/dev.nix +++ b/pkgs/games/wesnoth/dev.nix @@ -1,23 +1,23 @@ { stdenv, fetchurl, cmake, pkgconfig, SDL2, SDL2_image, SDL2_mixer, SDL2_net, SDL2_ttf -, pango, gettext, boost, freetype, libvorbis, fribidi, dbus, libpng, pcre +, pango, gettext, boost, freetype, libvorbis, fribidi, dbus, libpng, pcre, openssl , enableTools ? false }: stdenv.mkDerivation rec { pname = "wesnoth"; - version = "1.13.8"; + version = "1.13.11"; name = "${pname}-${version}"; src = fetchurl { url = "mirror://sourceforge/sourceforge/${pname}/${name}.tar.bz2"; - sha256 = "0snm4n7l21cr4443rk93wnaqdzr91pihn452w66344zqwf33xgfr"; + sha256 = "168732lmdnskca9hrkmaz4mi0bssc5ppklln10s306cbsl93bd39"; }; nativeBuildInputs = [ cmake pkgconfig ]; buildInputs = [ SDL2 SDL2_image SDL2_mixer SDL2_net SDL2_ttf pango gettext boost - libvorbis fribidi dbus libpng pcre ]; + libvorbis fribidi dbus libpng pcre openssl ]; cmakeFlags = [ "-DENABLE_TOOLS=${if enableTools then "ON" else "OFF"}" ]; diff --git a/pkgs/games/worldofgoo/default.nix b/pkgs/games/worldofgoo/default.nix index 6cad72a44045c..af76e85346f79 100644 --- a/pkgs/games/worldofgoo/default.nix +++ b/pkgs/games/worldofgoo/default.nix @@ -15,16 +15,16 @@ stdenv.mkDerivation rec { goBuyItNow = '' We cannot download the full version automatically, as you require a license. Once you bought a license, you need to add your downloaded version to the nix store. - You can do this by using "nix-prefetch-url file://WorldOfGooSetup.1.41.tar.gz" in the + You can do this by using "nix-prefetch-url file://\$PWD/WorldOfGooSetup.1.41.tar.gz" in the directory where you saved it. Or you can install the demo version: 'nix-env -i -A pkgs.worldofgoo_demo'. ''; getTheDemo = '' - We cannot download the demo version automatically, please go to + We cannot download the demo version automatically. Please go to http://worldofgoo.com/dl2.php?lk=demo, then add it to your nix store. - You can do this by using "nix-prefetch-url file://WorldOfGooDemo.1.41.tar.gz" in the + You can do this by using "nix-prefetch-url file://\$PWD/WorldOfGooDemo.1.41.tar.gz" in the directory where you saved it. ''; diff --git a/pkgs/games/xmoto/default.nix b/pkgs/games/xmoto/default.nix index ea70049c6c44b..ffb3a0227d9e9 100644 --- a/pkgs/games/xmoto/default.nix +++ b/pkgs/games/xmoto/default.nix @@ -13,10 +13,12 @@ stdenv.mkDerivation rec { buildInputs = [ chipmunk sqlite curl zlib bzip2 libjpeg libpng - freeglut libGLU_combined SDL SDL_mixer SDL_image SDL_net SDL_ttf + freeglut libGLU_combined SDL SDL_mixer SDL_image SDL_net SDL_ttf lua5 ode libxdg_basedir libxml2 ]; + CXXFLAGS = [ "-fpermissive" ]; + meta = with stdenv.lib; { description = "Obstacled race game"; homepage = http://xmoto.tuxfamily.org; |