about summary refs log tree commit diff
path: root/pkgs/games/jumpy
diff options
context:
space:
mode:
authorVladimír Čunát <v@cunat.cz>2022-12-16 11:20:50 +0100
committerVladimír Čunát <v@cunat.cz>2022-12-16 11:20:50 +0100
commit59a68f487df75aa5558754509669de036e54aa73 (patch)
tree51c2cfe2e3ed626c8a2470b0d77f650d487c1ad8 /pkgs/games/jumpy
parent4b9ee4563d6dd4443ffed0bdb39e0114fa745932 (diff)
parente6cd929c5e28efb8bdbaf10abb360725a8e2374d (diff)
Merge branch 'staging-next' into staging
Diffstat (limited to 'pkgs/games/jumpy')
-rw-r--r--pkgs/games/jumpy/default.nix49
1 files changed, 32 insertions, 17 deletions
diff --git a/pkgs/games/jumpy/default.nix b/pkgs/games/jumpy/default.nix
index 4fea663af533c..f4611ca3d20f9 100644
--- a/pkgs/games/jumpy/default.nix
+++ b/pkgs/games/jumpy/default.nix
@@ -2,59 +2,74 @@
 , rustPlatform
 , fetchFromGitHub
 , stdenv
+, makeWrapper
 , pkg-config
 , alsa-lib
-, libGL
-, xorg
+, libxkbcommon
 , udev
-, Cocoa
-, OpenGL
+, vulkan-loader
+, wayland
+, xorg
+, darwin
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "jumpy";
-  version = "0.4.3";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
-    owner = "fishfolks";
+    owner = "fishfolk";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-01zhiQi6v/8ZajsdBU+4hKUCj+PRJ/vUHluOIzy/Gi8=";
+    sha256 = "sha256-5hgd4t9ZKHmv8wzED7Tn+ykzUM0EbQqRX15HBHzXtJY=";
   };
 
-  cargoSha256 = "sha256-AXaGuRqSFiq+Uiy+UaqPdPVyDhCogC64KZZ0Ah1Yo7A=";
+  cargoSha256 = "sha256-cK5n75T+Kkd6F4q4MFZNn0R6W6Nk2/H23AGhIe2FCig=";
 
   auditable = true; # TODO: remove when this is the default
 
-  nativeBuildInputs = lib.optionals stdenv.isLinux [
+  nativeBuildInputs = [
+    makeWrapper
+  ] ++ lib.optionals stdenv.isLinux [
     pkg-config
   ];
 
   buildInputs = lib.optionals stdenv.isLinux [
     alsa-lib
-    libGL
+    libxkbcommon
+    udev
+    vulkan-loader
+    wayland
     xorg.libX11
+    xorg.libXcursor
     xorg.libXi
-    udev
+    xorg.libXi
+    xorg.libXrandr
   ] ++ lib.optionals stdenv.isDarwin [
-    Cocoa
-    OpenGL
+    darwin.apple_sdk.frameworks.Cocoa
+    rustPlatform.bindgenHook
   ];
 
   postPatch = ''
-    substituteInPlace src/main.rs \
-      --replace ./assets $out/share/assets \
-      --replace ./mods $out/share/mods
+    touch ../$(stripHash $cargoDeps)/taffy/README.md
   '';
 
   postInstall = ''
     mkdir $out/share
-    cp -r assets mods $out/share
+    cp -r assets $out/share
+    wrapProgram $out/bin/jumpy \
+      --set-default JUMPY_ASSET_DIR $out/share/assets
+  '';
+
+  postFixup = lib.optionalString stdenv.isLinux ''
+    patchelf $out/bin/.jumpy-wrapped \
+      --add-rpath ${lib.makeLibraryPath [ vulkan-loader ]}
   '';
 
   meta = with lib; {
     description = "A tactical 2D shooter played by up to 4 players online or on a shared screen";
     homepage = "https://fishfight.org/";
+    changelog = "https://github.com/fishfolk/jumpy/releases/tag/v${version}";
     license = with licenses; [ mit /* or */ asl20 ];
     maintainers = with maintainers; [ figsoda ];
   };