about summary refs log tree commit diff
diff options
context:
space:
mode:
authorIngo Blechschmidt <iblech@speicherleck.de>2024-02-11 12:32:17 +0100
committerIngo Blechschmidt <iblech@speicherleck.de>2024-02-11 22:55:10 +0100
commitd0daee14d96fdb36e7735d107c969b6b9b81afaa (patch)
tree701242ad982a884c7fd3b1d25f03bfa399bee3dc
parent9002908215ae609210c2168494b387ff5728220a (diff)
downloadnixlib-d0daee14d96fdb36e7735d107c969b6b9b81afaa.tar
nixlib-d0daee14d96fdb36e7735d107c969b6b9b81afaa.tar.gz
nixlib-d0daee14d96fdb36e7735d107c969b6b9b81afaa.tar.bz2
nixlib-d0daee14d96fdb36e7735d107c969b6b9b81afaa.tar.lz
nixlib-d0daee14d96fdb36e7735d107c969b6b9b81afaa.tar.xz
nixlib-d0daee14d96fdb36e7735d107c969b6b9b81afaa.tar.zst
nixlib-d0daee14d96fdb36e7735d107c969b6b9b81afaa.zip
abuse: 0.8 -> 0.9.1
-rw-r--r--pkgs/games/abuse/default.nix38
1 files changed, 24 insertions, 14 deletions
diff --git a/pkgs/games/abuse/default.nix b/pkgs/games/abuse/default.nix
index 1e2d4f82f837..0a77c842bd82 100644
--- a/pkgs/games/abuse/default.nix
+++ b/pkgs/games/abuse/default.nix
@@ -1,20 +1,28 @@
-{ lib, stdenv, fetchurl, makeDesktopItem, copyDesktopItems, SDL, SDL_mixer, freepats }:
+{ lib, stdenv, fetchzip, fetchFromGitHub
+, makeDesktopItem, copyDesktopItems
+, cmake
+, SDL2, SDL2_mixer, freepats
+}:
 
 stdenv.mkDerivation rec {
   pname   = "abuse";
-  version = "0.8";
+  version = "0.9.1";
 
-  src = fetchurl {
-    url    = "http://abuse.zoy.org/raw-attachment/wiki/download/${pname}-${version}.tar.gz";
-    sha256 = "0104db5fd2695c9518583783f7aaa7e5c0355e27c5a803840a05aef97f9d3488";
+  src = fetchFromGitHub {
+    owner = "Xenoveritas";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-eneu0HxEoM//Ju2XMHnDMZ/igeVMPSLg7IaxR2cnJrk=";
   };
 
-  configureFlags = [
-    "--with-x"
-    "--with-assetdir=$(out)/orig"
-    # The "--enable-debug" is to work around a segfault on start, see https://bugs.archlinux.org/task/52915.
-    "--enable-debug"
-  ];
+  data = fetchzip {
+    url  = "http://abuse.zoy.org/raw-attachment/wiki/download/abuse-0.8.tar.gz";
+    hash = "sha256-SOrtBNLWskN7Tqa0B3+KjlZlqPjC64Jp02Pk7to2hFg=";
+  };
+
+  preConfigure = ''
+    cp --reflink=auto -r ${data}/data/sfx ${data}/data/music data/
+  '';
 
   desktopItems = [ (makeDesktopItem {
     name = "abuse";
@@ -33,11 +41,13 @@ stdenv.mkDerivation rec {
     substituteAll "${./abuse.sh}" $out/bin/abuse
     chmod +x $out/bin/abuse
 
-    install -Dm644 doc/abuse.png $out/share/pixmaps/abuse.png
+    install -Dm644 ${data}/doc/abuse.png $out/share/pixmaps/abuse.png
   '';
 
-  nativeBuildInputs = [ copyDesktopItems ];
-  buildInputs       = [ SDL SDL_mixer freepats ];
+  env.NIX_CFLAGS_COMPILE = "-I${lib.getDev SDL2}/include/SDL2";
+
+  nativeBuildInputs = [ copyDesktopItems cmake ];
+  buildInputs       = [ SDL2 SDL2_mixer freepats ];
 
   meta = with lib; {
     description = "Side-scroller action game that pits you against ruthless alien killers";