about summary refs log tree commit diff
path: root/pkgs/games
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/games')
-rw-r--r--pkgs/games/chessx/default.nix3
-rw-r--r--pkgs/games/flightgear/default.nix9
-rw-r--r--pkgs/games/gargoyle/default.nix4
-rw-r--r--pkgs/games/minecraft-server/default.nix71
-rw-r--r--pkgs/games/nethack/default.nix13
-rw-r--r--pkgs/games/openmw/tes3mp.nix125
-rw-r--r--pkgs/games/openrct2/default.nix8
-rw-r--r--pkgs/games/openttd/default.nix4
-rw-r--r--pkgs/games/runelite/default.nix2
-rw-r--r--pkgs/games/simutrans/default.nix2
10 files changed, 94 insertions, 147 deletions
diff --git a/pkgs/games/chessx/default.nix b/pkgs/games/chessx/default.nix
index 5800f8026ac4..47432bca1633 100644
--- a/pkgs/games/chessx/default.nix
+++ b/pkgs/games/chessx/default.nix
@@ -32,9 +32,6 @@ stdenv.mkDerivation rec {
     cp -pr release/chessx "$out/bin"
     cp -pr unix/chessx.desktop "$out/share/applications"
 
-    wrapProgram $out/bin/chessx \
-      --prefix QT_PLUGIN_PATH : ${qtbase}/lib/qt-5.${lib.versions.minor qtbase.version}/plugins
-
     runHook postInstall
   '';
 
diff --git a/pkgs/games/flightgear/default.nix b/pkgs/games/flightgear/default.nix
index 728709a12f62..9765a9c06ee1 100644
--- a/pkgs/games/flightgear/default.nix
+++ b/pkgs/games/flightgear/default.nix
@@ -62,13 +62,12 @@ stdenv.mkDerivation rec {
   postInstall = ''
     mkdir -p "$out/share/applications/"
     cp "${desktopItem}"/share/applications/* "$out/share/applications/" #*/
-
-    for f in $out/bin/* #*/
-    do
-      wrapProgram $f --set FG_ROOT "${data}/share/FlightGear"
-    done
   '';
 
+  qtWrapperArgs = [
+    ''--set FG_ROOT "${data}/share/FlightGear"''
+  ];
+
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/games/gargoyle/default.nix b/pkgs/games/gargoyle/default.nix
index 62ea798e4656..83a567fa5782 100644
--- a/pkgs/games/gargoyle/default.nix
+++ b/pkgs/games/gargoyle/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, substituteAll, jam, cctools, pkgconfig
-, SDL, SDL_mixer, SDL_sound, cf-private, gtk2, libvorbis, smpeg }:
+, SDL, SDL_mixer, SDL_sound, gtk2, libvorbis, smpeg }:
 
 let
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
   nativeBuildInputs = [ jam pkgconfig ] ++ stdenv.lib.optional stdenv.isDarwin cctools;
 
   buildInputs = [ SDL SDL_mixer SDL_sound gtk2 ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ cf-private smpeg libvorbis ];
+    ++ stdenv.lib.optionals stdenv.isDarwin [ smpeg libvorbis ];
 
   buildPhase = jamenv + "jam -j$NIX_BUILD_CORES";
 
diff --git a/pkgs/games/minecraft-server/default.nix b/pkgs/games/minecraft-server/default.nix
index cc91d867f1d8..0210fdd055ad 100644
--- a/pkgs/games/minecraft-server/default.nix
+++ b/pkgs/games/minecraft-server/default.nix
@@ -1,57 +1,34 @@
 { stdenv, fetchurl, jre }:
+stdenv.mkDerivation rec {
+  name = "minecraft-server-${version}";
+  version = "1.14.3";
 
-let
-  common = { version, sha256, url }:
-    stdenv.mkDerivation (rec {
-      name = "minecraft-server-${version}";
-      inherit version;
-
-      src = fetchurl {
-        inherit url sha256;
-      };
-
-      preferLocalBuild = true;
-
-      installPhase = ''
-        mkdir -p $out/bin $out/lib/minecraft
-        cp -v $src $out/lib/minecraft/server.jar
-
-        cat > $out/bin/minecraft-server << EOF
-        #!/bin/sh
-        exec ${jre}/bin/java \$@ -jar $out/lib/minecraft/server.jar nogui
-        EOF
+  src = fetchurl {
+    url    = "https://launcher.mojang.com/v1/objects/d0d0fe2b1dc6ab4c65554cb734270872b72dadd6/server.jar";
+    sha256 = "0f0v0kqz2v5758551yji1vj6xf43lvbma30v3crz4h7cpzq5c8ll";
+  };
 
-        chmod +x $out/bin/minecraft-server
-      '';
+  preferLocalBuild = true;
 
-      phases = "installPhase";
+  installPhase = ''
+    mkdir -p $out/bin $out/lib/minecraft
+    cp -v $src $out/lib/minecraft/server.jar
 
-      meta = {
-        description = "Minecraft Server";
-        homepage    = "https://minecraft.net";
-        license     = stdenv.lib.licenses.unfreeRedistributable;
-        platforms   = stdenv.lib.platforms.unix;
-        maintainers = with stdenv.lib.maintainers; [ thoughtpolice tomberek costrouc];
-      };
-    });
+    cat > $out/bin/minecraft-server << EOF
+    #!/bin/sh
+    exec ${jre}/bin/java \$@ -jar $out/lib/minecraft/server.jar nogui
+    EOF
 
-in {
-  minecraft-server_1_14 = common {
-    version = "1.14";
-    url    = "https://launcher.mojang.com/v1/objects/f1a0073671057f01aa843443fef34330281333ce/server.jar";
-    sha256 = "671e3d334dd601c520bf1aeb96e49038145172bef16bc6c418e969fd8bf8ff6c";
-  };
+    chmod +x $out/bin/minecraft-server
+  '';
 
-  minecraft-server_1_13_2 = common {
-    version = "1.13.2";
-    url    = "https://launcher.mojang.com/v1/objects/3737db93722a9e39eeada7c27e7aca28b144ffa7/server.jar";
-    sha256 = "13h8dxrrgqa1g6sd7aaw26779hcsqsyjm7xm0sknifn54lnamlzz";
-  };
+  phases = "installPhase";
 
-  minecraft-server_1_12_2 = common {
-    version = "1.12.2";
-    url = "https://s3.amazonaws.com/Minecraft.Download/versions/1.12.2/minecraft_server.1.12.2.jar";
-    sha256 = "0zhnac6yvkdgdaag0gb0fgrkgizbwrpf7s76yqdiknfswrs947zy";
+  meta = {
+    description = "Minecraft Server";
+    homepage    = "https://minecraft.net";
+    license     = stdenv.lib.licenses.unfreeRedistributable;
+    platforms   = stdenv.lib.platforms.unix;
+    maintainers = with stdenv.lib.maintainers; [ thoughtpolice tomberek costrouc];
   };
-
 }
diff --git a/pkgs/games/nethack/default.nix b/pkgs/games/nethack/default.nix
index 5e476cdc7e98..24cc64ac9aff 100644
--- a/pkgs/games/nethack/default.nix
+++ b/pkgs/games/nethack/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl, coreutils, ncurses, gzip, flex, bison
-, less, makeWrapper
+, less
 , buildPackages
 , x11Mode ? false, qtMode ? false, libXaw, libXext, libXpm, bdftopcf, mkfontdir, pkgconfig, qt5
 }:
@@ -37,7 +37,7 @@ in stdenv.mkDerivation rec {
                       ++ lib.optionals x11Mode [ mkfontdir bdftopcf ]
                       ++ lib.optionals qtMode [
                            pkgconfig mkfontdir qt5.qtbase.dev
-                           qt5.qtmultimedia.dev makeWrapper
+                           qt5.qtmultimedia.dev qt5.wrapQtAppsHook
                            bdftopcf
                          ];
 
@@ -97,6 +97,10 @@ in stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  preFixup = ''
+    wrapQtApp "$out/games/nethack"
+  '';
+
   postInstall = ''
     mkdir -p $out/games/lib/nethackuserdir
     for i in xlogfile logfile perm record save; do
@@ -137,11 +141,6 @@ in stdenv.mkDerivation rec {
     ${lib.optionalString (!(x11Mode || qtMode)) "install -Dm 555 util/dlb -t $out/libexec/nethack/"}
   '';
 
-  postFixup = lib.optionalString qtMode ''
-    wrapProgram $out/bin/nethack-qt \
-      --prefix QT_PLUGIN_PATH : "${qt5.qtbase}/${qt5.qtbase.qtPluginPrefix}"
-  '';
-
   meta = with stdenv.lib; {
     description = "Rogue-like game";
     homepage = http://nethack.org/;
diff --git a/pkgs/games/openmw/tes3mp.nix b/pkgs/games/openmw/tes3mp.nix
index a3ad0e637e5a..2bc34a6ec9d0 100644
--- a/pkgs/games/openmw/tes3mp.nix
+++ b/pkgs/games/openmw/tes3mp.nix
@@ -1,102 +1,77 @@
-{ stdenv, fetchFromGitHub, qtbase, openscenegraph, mygui, bullet, ffmpeg, boost, cmake, SDL2, unshield, openal
-, libXt, writeScriptBin, makeWrapper, ncurses, libGL, luajit }:
+{ stdenv, cmake, openmw, fetchFromGitHub, luajit, makeWrapper }:
+
+# revisions are taken from https://github.com/GrimKriegor/TES3MP-deploy
 
 let
-  version = "0.7.0-alpha";
-  TES3MP = fetchFromGitHub {
-    owner = "TES3MP";
-    repo = "openmw-tes3mp";
-    rev = version;
-    sha256 = "012f50f9jd29qcdww2vk4habg6pmxvxl0q6rrjq8xchb0566712q";
-  };
-  CallFF = fetchFromGitHub {
-    owner = "Koncord";
-    repo = "CallFF";
-    rev = "da94b59ffe95d45bf98b9264e3d1279c9f6ebb6b";
-    sha256 = "10wgiqmknh0av968c6r74n5n2izxsx8qawfrab57kkmj9h0zp0pm";
-  };
-  CrabNet = fetchFromGitHub {
+  # TES3MP_STABLE_VERSION_FILE
+  compatHash = "292536439eeda58becdb7e441fe2e61ebb74529e";
+  rakNet = fetchFromGitHub {
     owner = "TES3MP";
     repo = "CrabNet";
-    rev = "ab1306050fe0f5b0f9c4f56893a79e56a9459567";
-    sha256 = "03q76pjv9mdi7w832b23q1mj4r2wb0hsnh4kpvwai607g04l0pp0";
+    # usually fixed:
+    # https://github.com/GrimKriegor/TES3MP-deploy/blob/d2a4a5d3acb64b16d9b8ca85906780aeea8d311b/tes3mp-deploy.sh#L589
+    rev = "4eeeaad2f6c11aeb82070df35169694b4fb7b04b";
+    sha256 = "0p0li9l1i5lcliswm5w9jql0zff9i6fwhiq0bl130m4i7vpr4cr3";
+  };
+  rakNetLibrary = stdenv.mkDerivation {
+    name = "RakNetLibrary";
+    src = rakNet;
+    nativeBuildInputs = [ cmake ];
+    installPhase = ''
+      install -Dm755 lib/libRakNetLibStatic.a $out/lib/libRakNetLibStatic.a
+    '';
   };
-  CoreScripts = fetchFromGitHub {
+  coreScripts = fetchFromGitHub {
     owner = "TES3MP";
     repo = "CoreScripts";
-    rev = "1e9f69f98051b2639b18203f989ffbd0a4b427ea";
-    sha256 = "03ysi7rh0k78kv4slvmkxpymxvdpr8b6hwr1lvjdgq7rq0ljy0lg";
+    # usually latest master
+    rev = "71e15fa3b1d5131b6607ba1589f41c06672ce376";
+    sha256 = "1kwii8rpsxjmz4dh06wb0qaix17hq5s1qsvysv6n6209vlclfxjg";
   };
-
-  fakegit = writeScriptBin "git" ''
-    #! ${stdenv.shell}
-  '';
-in stdenv.mkDerivation rec {
-  inherit version;
-  name = "tes3mp-${version}";
+in openmw.overrideAttrs (oldAttrs: rec {
+  version = "2019-06-09";
+  name = "openmw-tes3mp-${version}";
 
   src = fetchFromGitHub {
-    owner = "GrimKriegor";
-    repo = "TES3MP-deploy";
-    rev = "1dd78a3e2cf9f4fe85bf7ca9c393251968a9c325";
-    sha256 = "1bp9c4kds9q0xhbn4sxb7n0f6rvb45gzx7ljdgc56wz4j5rfi3xn";
+    owner = "TES3MP";
+    repo = "openmw-tes3mp";
+    # usually latest in stable branch (e.g. 0.7.0)
+    rev = "01804af100785bc2c162d568258d9662012627a3";
+    sha256 = "0j99v9vvmic0bqw3y4550k1dy058lwvs9s9qcjmxh1wkqkvrpdnp";
   };
 
-  dontUseCmakeConfigure = true;
+  nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ makeWrapper ];
+  buildInputs = oldAttrs.buildInputs ++ [ luajit ];
 
-  nativeBuildInputs = [ cmake makeWrapper fakegit ];
-  buildInputs = [ boost ffmpeg qtbase bullet mygui openscenegraph SDL2 unshield openal libXt
-    ncurses libGL luajit ];
+  cmakeFlags = oldAttrs.cmakeFlags ++ [
+    "-DBUILD_OPENCS=OFF"
+    "-DRakNet_INCLUDES=${rakNet}/include"
+    "-DRakNet_LIBRARY_RELEASE=${rakNetLibrary}/lib/libRakNetLibStatic.a"
+    "-DRakNet_LIBRARY_DEBUG=${rakNetLibrary}/lib/libRakNetLibStatic.a"
+  ];
 
-  buildPhase = ''
-    mkdir dependencies keepers
-    cp --no-preserve=mode -r ${TES3MP} code
-    cp --no-preserve=mode -r ${CallFF} dependencies/callff
-    cp --no-preserve=mode -r ${CrabNet} dependencies/raknet
-    cp --no-preserve=mode -r ${CoreScripts} keepers/CoreScripts
-
-    substituteInPlace tes3mp-deploy.sh \
-      --replace "-DBUILD_OPENCS=OFF" "-DBUILD_OPENCS=OFF -DCMAKE_INSTALL_PREFIX=$out"
-    patchShebangs tes3mp-deploy.sh
-    echo y | ./tes3mp-deploy.sh -i -c $NIX_BUILD_CORES
+  preConfigure = ''
+    substituteInPlace files/version.in \
+      --subst-var-by OPENMW_VERSION_COMMITHASH ${compatHash}
   '';
 
-  installPhase = ''
-    prefix=$out/opt/tes3mp
-    mkdir -p $prefix/build $out/etc/openmw $out/bin
-    for i in build/*; do
-      if [ -f "$i" ] && [ -x "$i" ]; then
-        mv "$i" $prefix/build
-      fi
-    done
-    mv build/resources $prefix/build
-    mv build/{settings-default.cfg,openmw.cfg,gamecontrollerdb.txt} $out/etc/openmw
-    mv keepers $prefix
-    mv build/tes3mp-credits.md $prefix/build
-    mv -f $prefix/keepers/version $prefix/build/resources
-
-    for i in tes3mp.sh tes3mp-browser.sh tes3mp-server.sh
-    do
-      bin="$out/bin/''${i%.sh}"
-      mv $i $bin
-      substituteInPlace $bin \
-        --replace build/ $prefix/build/
-      chmod +x $bin
-    done
-    ln -s $prefix/keepers/*.cfg $out/etc/openmw/
-
+  postInstall = ''
+    # components/process/processinvoker.cpp: path.prepend(QLatin1String("./"))
+    wrapProgram $out/bin/tes3mp-browser \
+      --run "cd $out/bin"
     wrapProgram $out/bin/tes3mp-server \
       --run "mkdir -p ~/.config/openmw" \
       --run "cd ~/.config/openmw" \
-      --run "[ -d CoreScripts ] || cp --no-preserve=mode -r $prefix/keepers/CoreScripts ." \
-      --run "[ -f tes3mp-server.cfg ] || echo \"[Plugins] home = \$HOME/.config/openmw/CoreScripts\" > tes3mp-server.cfg"
+      --run "[ -d CoreScripts ] || cp --no-preserve=mode -r ${coreScripts} CoreScripts" \
+      --run "[ -f tes3mp-server.cfg ] || echo \"[Plugins] home = \$HOME/.config/openmw/CoreScripts\" > tes3mp-server.cfg" \
+      --run "cd $out/bin"
   '';
 
   meta = with stdenv.lib; {
     description = "Multiplayer for TES3:Morrowind based on OpenMW";
-    homepage = "https://tes3mp.com/";
+    homepage = https://tes3mp.com/;
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ gnidorah ];
   };
-}
+})
diff --git a/pkgs/games/openrct2/default.nix b/pkgs/games/openrct2/default.nix
index 926e360a1b4c..e7636e8320e7 100644
--- a/pkgs/games/openrct2/default.nix
+++ b/pkgs/games/openrct2/default.nix
@@ -5,20 +5,20 @@
 
 let
   name = "openrct2-${version}";
-  version = "0.2.2";
+  version = "0.2.3";
 
   openrct2-src = fetchFromGitHub {
     owner = "OpenRCT2";
     repo = "OpenRCT2";
     rev = "v${version}";
-    sha256 = "1bfqmb6cbmsjcvj77vppy5lw1m4lkvxd1w3f218ah4788xnkysq2";
+    sha256 = "01mj6jlbl2cn3wpk6sy34ldzdl0qykpn7fncznjykklj2nqzr4ig";
   };
 
   objects-src = fetchFromGitHub {
     owner = "OpenRCT2";
     repo = "objects";
-    rev = "v1.0.9";
-    sha256 = "1kng0mz8dsdbfd3g6qsk69ap2nq75aizw76j4a6lkfygnbcv8m3j";
+    rev = "v1.0.11";
+    sha256 = "1bh7mngpqnhzwnhhawq5y3a6hbvwxis2yagk4dcmc4w1fifq2y66";
   };
 
   title-sequences-src = fetchFromGitHub {
diff --git a/pkgs/games/openttd/default.nix b/pkgs/games/openttd/default.nix
index 2fd27d2f9d63..91969a335f8f 100644
--- a/pkgs/games/openttd/default.nix
+++ b/pkgs/games/openttd/default.nix
@@ -29,11 +29,11 @@ let
 in
 stdenv.mkDerivation rec {
   name = "openttd-${version}";
-  version = "1.9.1";
+  version = "1.9.2";
 
   src = fetchurl {
     url = "https://proxy.binaries.openttd.org/openttd-releases/${version}/${name}-source.tar.xz";
-    sha256 = "1r8i6yzgww7aw8iibqagahg1gqgw7305g07agy0dpszzvp0mi0gz";
+    sha256 = "0jjnnzp1a2l8j1cla28pr460lx6cg4ql3acqfxhxv8a5a4jqrzzr";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper ];
diff --git a/pkgs/games/runelite/default.nix b/pkgs/games/runelite/default.nix
index 4c06926ed506..a56365778fb1 100644
--- a/pkgs/games/runelite/default.nix
+++ b/pkgs/games/runelite/default.nix
@@ -30,7 +30,7 @@
   buildInputs = [ makeWrapper ];
 
   # colon is bash form of no-op (do nothing)
-  unpackPhase = ":";
+  dontUnpack = true;
 
   installPhase = ''
     mkdir -p $out/share/runelite
diff --git a/pkgs/games/simutrans/default.nix b/pkgs/games/simutrans/default.nix
index a97338f6f204..5cbb3c1796f1 100644
--- a/pkgs/games/simutrans/default.nix
+++ b/pkgs/games/simutrans/default.nix
@@ -70,7 +70,7 @@ let
   }:
     stdenv.mkDerivation {
       name = "simutrans-${pakName}";
-      unpackPhase = "true";
+      dontUnpack = true;
       preferLocalBuild = true;
       installPhase = let src = fetchurl { inherit url sha256; };
       in ''