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/nanosaur2/default.nix15
-rw-r--r--pkgs/games/openttd/jgrpp.nix4
-rw-r--r--pkgs/games/pingus/default.nix5
-rw-r--r--pkgs/games/starsector/default.nix14
-rw-r--r--pkgs/games/the-powder-toy/default.nix11
-rw-r--r--pkgs/games/xmage/default.nix20
6 files changed, 46 insertions, 23 deletions
diff --git a/pkgs/games/nanosaur2/default.nix b/pkgs/games/nanosaur2/default.nix
index 7ab77623e653..92cf781da7d3 100644
--- a/pkgs/games/nanosaur2/default.nix
+++ b/pkgs/games/nanosaur2/default.nix
@@ -1,14 +1,14 @@
-{ lib, stdenv, fetchFromGitHub, SDL2, cmake, makeWrapper }:
+{ lib, stdenv, fetchFromGitHub, SDL2, cmake, makeWrapper, unstableGitUpdater }:
 
 stdenv.mkDerivation rec {
   pname = "nanosaur2";
-  version = "2.1.0";
+  version = "2.1.0-unstable-2023-05-21";
 
   src = fetchFromGitHub {
     owner = "jorio";
     repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-UY+fyn8BA/HfCd2LCj5cfGmQACKUICH6CDCW4q6YDkg=";
+    rev = "72d93ed08148d81aa89bab511a9650d7b929d4c7";
+    hash = "sha256-1AvM2KTQB9aUYB0e/7Y6h18yQvzsxMOgGkF9zPgTzFo=";
     fetchSubmodules = true;
   };
 
@@ -27,11 +27,13 @@ stdenv.mkDerivation rec {
     mv Data ReadMe.txt "$out/share/Nanosaur2/"
     install -Dm755 {.,$out/bin}/Nanosaur2
     wrapProgram $out/bin/Nanosaur2 --chdir "$out/share/Nanosaur2"
-    install -Dm644 $src/packaging/nanosaur2.desktop $out/share/applications/nanosaur2.desktop
-    install -Dm644 $src/packaging/nanosaur2-desktopicon.png $out/share/pixmaps/nanosaur2-desktopicon.png
+    install -Dm644 $src/packaging/io.jor.nanosaur2.desktop $out/share/applications/nanosaur2.desktop
+    install -Dm644 $src/packaging/io.jor.nanosaur2.png $out/share/pixmaps/nanosaur2.png
     runHook postInstall
   '';
 
+  passthru.updateScript = unstableGitUpdater { };
+
   meta = with lib; {
     description = "A port of Nanosaur2, a 2004 Macintosh game by Pangea Software, for modern operating systems";
     longDescription = ''
@@ -41,6 +43,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://github.com/jorio/Nanosaur2";
     license = licenses.cc-by-sa-40;
+    mainProgram = "Nanosaur2";
     maintainers = with maintainers; [ lux ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/games/openttd/jgrpp.nix b/pkgs/games/openttd/jgrpp.nix
index 13c0d7ea6d6e..5fbe527425eb 100644
--- a/pkgs/games/openttd/jgrpp.nix
+++ b/pkgs/games/openttd/jgrpp.nix
@@ -2,13 +2,13 @@
 
 openttd.overrideAttrs (oldAttrs: rec {
   pname = "openttd-jgrpp";
-  version = "0.57.0";
+  version = "0.57.1";
 
   src = fetchFromGitHub rec {
     owner = "JGRennison";
     repo = "OpenTTD-patches";
     rev = "jgrpp-${version}";
-    hash = "sha256-gXn5O+WSYCK34FKMBOyuTg3cq4Yg59CuLxxzwLbsFBA=";
+    hash = "sha256-mQy+QdhEXoM9wIWvSkMgRVBXJO1ugXWS3lduccez1PQ=";
   };
 
   buildInputs = oldAttrs.buildInputs ++ [ zstd ];
diff --git a/pkgs/games/pingus/default.nix b/pkgs/games/pingus/default.nix
index fd0ebddfc32f..9dd219500390 100644
--- a/pkgs/games/pingus/default.nix
+++ b/pkgs/games/pingus/default.nix
@@ -13,6 +13,11 @@ stdenv.mkDerivation rec {
     fetchSubmodules = true;
   };
 
+  postPatch = ''
+    # Fix missing gcc-13 headers
+    sed -e '1i #include <cstdint>' -i src/util/pathname.hpp
+  '';
+
   meta = {
     description = "A puzzle game with mechanics similar to Lemmings";
     platforms = lib.platforms.linux;
diff --git a/pkgs/games/starsector/default.nix b/pkgs/games/starsector/default.nix
index f40ae8857366..72ca3f5b897b 100644
--- a/pkgs/games/starsector/default.nix
+++ b/pkgs/games/starsector/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   pname = "starsector";
-  version = "0.96a-RC10";
+  version = "0.97a-RC8";
 
   src = fetchzip {
     url = "https://f005.backblazeb2.com/file/fractalsoftworks/release/starsector_linux-${version}.zip";
-    sha256 = "sha256-RBSnms+QlKgTOhm3t2hDfv7OcMrQCk1rfkz9GaM74WM=";
+    sha256 = "sha256-mfx6tmgIT+bMEpMXAcHVMMJMr1zlALStpoUxYw8MYsY=";
   };
 
   nativeBuildInputs = [ copyDesktopItems makeWrapper ];
@@ -63,12 +63,14 @@ stdenv.mkDerivation rec {
   # it tries to run everything with relative paths, which makes it CWD dependent
   # also point mod, screenshot, and save directory to $XDG_DATA_HOME
   # additionally, add some GC options to improve performance of the game
+  # and remove flags "PermSize" and "MaxPermSize" that were removed with Java 8
   postPatch = ''
     substituteInPlace starsector.sh \
-      --replace "./jre_linux/bin/java" "${openjdk}/bin/java" \
-      --replace "./native/linux" "$out/share/starsector/native/linux" \
-      --replace "=." "=\''${XDG_DATA_HOME:-\$HOME/.local/share}/starsector" \
-      --replace "-XX:+CompilerThreadHintNoPreempt" "-XX:+UnlockDiagnosticVMOptions -XX:-BytecodeVerificationRemote -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSConcurrentMTEnabled -XX:+DisableExplicitGC"
+      --replace-fail "./jre_linux/bin/java" "${openjdk}/bin/java" \
+      --replace-fail "./native/linux" "$out/share/starsector/native/linux" \
+      --replace-fail "=." "=\''${XDG_DATA_HOME:-\$HOME/.local/share}/starsector" \
+      --replace-warn "-XX:+CompilerThreadHintNoPreempt" "-XX:+UnlockDiagnosticVMOptions -XX:-BytecodeVerificationRemote -XX:+CMSConcurrentMTEnabled -XX:+DisableExplicitGC" \
+      --replace-quiet " -XX:PermSize=192m -XX:MaxPermSize=192m" ""
   '';
 
   passthru.updateScript = writeScript "starsector-update-script" ''
diff --git a/pkgs/games/the-powder-toy/default.nix b/pkgs/games/the-powder-toy/default.nix
index c1c9415b90df..2cb972344fd6 100644
--- a/pkgs/games/the-powder-toy/default.nix
+++ b/pkgs/games/the-powder-toy/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, fetchpatch
 , meson
 , ninja
 , pkg-config
@@ -27,6 +28,16 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-LYohsqFU9LBgTXMaV6cf8/zf3fBvT+s5A1JBpPHekH8=";
   };
 
+  patches = [
+    # Fix gcc-13 build failure:
+    #   https://github.com/The-Powder-Toy/The-Powder-Toy/pull/898
+    (fetchpatch {
+      name = "gcc-13.patch";
+      url = "https://github.com/The-Powder-Toy/The-Powder-Toy/commit/162bce9a1036e0c233399941410364c4a4370980.patch";
+      hash = "sha256-oQNwKemV3BjMLSUd6zMCKqiClcc3Ouxwn3jagf/Q1/I=";
+    })
+  ];
+
   nativeBuildInputs = [ meson ninja pkg-config python3 ];
 
   buildInputs = [ SDL2 bzip2 curl fftwFloat lua luajit zlib jsoncpp libpng ]
diff --git a/pkgs/games/xmage/default.nix b/pkgs/games/xmage/default.nix
index b6aa8e22afd2..59752e72e50d 100644
--- a/pkgs/games/xmage/default.nix
+++ b/pkgs/games/xmage/default.nix
@@ -2,33 +2,35 @@
 , stdenv
 , fetchurl
 , jdk8
-, unzip
+, unzrip
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "xmage";
-  version = "1.4.50V2";
+  version = "1.4.51-dev_2024-01-30_19-35";
 
   src = fetchurl {
-    url =
-      "https://github.com/magefree/mage/releases/download/xmage_${finalAttrs.version}/xmage_${finalAttrs.version}.zip";
-    sha256 = "sha256-t1peHYwCRy3wiIIwOD3nUyoxSOxbw6B/g++A1ofIbmg=";
+    url = "http://xmage.today/files/mage-full_${finalAttrs.version}.zip";
+    sha256 = "sha256-ogi0hd2FoulTnc3gg5cpLwr4Jln71YA0WBBZFOT6apg=";
   };
 
   preferLocalBuild = true;
 
   unpackPhase = ''
-    ${unzip}/bin/unzip $src
+    ${unzrip}/bin/unzrip $src
   '';
 
   installPhase = let
-    strVersion = lib.substring 0 6 finalAttrs.version;
+  # upstream maintainers forgot to update version, so manual override for now
+  # strVersion = lib.substring 0 6 finalAttrs.version;
+  strVersion = "1.4.50";
+
   in ''
     mkdir -p $out/bin
     cp -rv ./* $out
 
     cat << EOS > $out/bin/xmage
-    exec ${jdk8}/bin/java -Xms256m -Xmx512m -XX:MaxPermSize=384m -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar $out/mage-client/lib/mage-client-${strVersion}.jar
+    exec ${jdk8}/bin/java -Xms256m -Xmx1024m -XX:MaxPermSize=384m -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar $out/xmage/mage-client/lib/mage-client-${strVersion}.jar
     EOS
 
     chmod +x $out/bin/xmage
@@ -38,7 +40,7 @@ stdenv.mkDerivation (finalAttrs: {
     description = "Magic Another Game Engine";
     sourceProvenance = with sourceTypes; [ binaryBytecode ];
     license = licenses.mit;
-    maintainers = with maintainers; [ matthiasbeyer ];
+    maintainers = with maintainers; [ matthiasbeyer abueide ];
     homepage = "http://xmage.de/";
   };